(=+>jis-x0208): Renamed from `=>jis-x0208@usual'.
[chise/xemacs-chise.git] / lisp / mule / mule-conf.el
1 ;;; mule-conf.el --- configure multilingual environment
2
3 ;; Copyright (C) 1995,1999 Electrotechnical Laboratory, JAPAN.
4 ;; Licensed to the Free Software Foundation.
5 ;; Copyright (C) 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2008,
6 ;;   2009, 2010, 2011 MORIOKA Tomohiko
7
8 ;; Keywords: mule, multilingual, character set, coding system
9
10 ;; This file is part of XEmacs.
11
12 ;; XEmacs is free software; you can redistribute it and/or modify
13 ;; it under the terms of the GNU General Public License as published by
14 ;; the Free Software Foundation; either version 2, or (at your option)
15 ;; any later version.
16
17 ;; XEmacs is distributed in the hope that it will be useful,
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 ;; GNU General Public License for more details.
21
22 ;; You should have received a copy of the GNU General Public License
23 ;; along with XEmacs; see the file COPYING.  If not, write to the
24 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
25 ;; Boston, MA 02111-1307, USA.
26
27 ;;; Code:
28
29 (cond
30  ((featurep 'utf-2000)
31   (make-charset
32    '=jis-x0208@1978
33    "JIS X 0208:1978, unchanged part."
34    '(registry "jisx0208\\.1978"
35               dimension 2
36               chars 94
37               mother =jis-x0208
38               =>iso-ir 42
39               final ?@
40               graphic 0
41               partial t))
42   (make-charset
43    '=jis-x0208@1978/-4pr
44    "JIS X 0208:1978, 1st - 3rd impressions."
45    '(registry "jisx0208\\.1978"
46               dimension 2
47               chars 94
48               mother =jis-x0208@1978
49               =>iso-ir 42
50               final ?@
51               graphic 0
52               partial t))
53   (make-charset
54    '=jis-x0208@1978/1pr
55    "JIS X 0208:1978, 1st impression."
56    '(iso-ir 42
57             registry "jisx0208\\.1978"
58             dimension 2
59             chars 94
60             mother =jis-x0208@1978/-4pr
61             final ?@
62             graphic 0))
63   (make-charset
64    '=jis-x0208@1978/-4X
65    "JIS X 0208:1978, index before the 4th impression."
66    '(registry "jisx0208\\.1978"
67               dimension 2
68               chars 94
69               mother =jis-x0208@1978
70               =>iso-ir 42
71               ;; final ?@
72               graphic 0
73               partial t))
74   (make-charset
75    '=jis-x0208@1978/1er-pr
76    "JIS X 0208:1978, fixed by errata [Nov 1978]."
77    '(registry "jisx0208\\.1978"
78               dimension 2
79               chars 94
80               mother =jis-x0208@1978
81               =>iso-ir 42
82               ;; final ?@
83               graphic 0
84               partial t))
85   (make-charset
86    '=jis-x0208@1978/2-pr
87    "JIS X 0208:1978, 2nd impression or later."
88    '(registry "jisx0208\\.1978"
89               dimension 2
90               chars 94
91               mother =jis-x0208@1978/1er-pr
92               =>iso-ir 42
93               ;; final ?@
94               graphic 0
95               partial t))
96   (make-charset
97    '=jis-x0208@1978/4er
98    "JIS X 0208:1978, replaced by errata of 4th impression."
99    '(registry "jisx0208\\.1978"
100               dimension 2
101               chars 94
102               mother =jis-x0208@1978/2-pr
103               =>iso-ir 42
104               ;; final ?@
105               graphic 0
106               partial t))
107   (make-charset
108    '=jis-x0208@1978/4-pr
109    "JIS X 0208:1978, 4th impression or later."
110    '(registry "jisx0208\\.1978"
111               dimension 2
112               chars 94
113               mother =jis-x0208@1978/2-pr
114               =>iso-ir 42
115               ;; final ?@
116               graphic 0
117               partial t))
118   (make-charset
119    '=jis-x0208@1978/5pr
120    "JIS X 0208:1978, 5th impression."
121    '(registry "jisx0208\\.1978"
122               dimension 2
123               chars 94
124               mother =jis-x0208@1978/4-pr
125               =>iso-ir 42
126               ;; final ?@
127               graphic 0
128               partial t))
129   (define-charset-alias '=jis-x0208@1978/i1 '=jis-x0208@1978/1pr)
130   (define-charset-alias '=jis-x0208@1978/i-4 '=jis-x0208@1978/-4pr)
131   (define-charset-alias '=jis-x0208@1978/i4- '=jis-x0208@1978/4-pr)
132   )
133  (t
134   (make-charset
135    '=jis-x0208@1978
136    "JIS X0208:1978 Japanese Kanji (so called \"old JIS\")."
137    '(iso-ir 42
138             registry "jisx0208\\.1978"
139             dimension 2
140             chars 94
141             mother =jis-x0208
142             final ?@
143             graphic 0))
144   ))
145
146 (define-charset-alias '=jis-x0208-1978          '=jis-x0208@1978)
147 (define-charset-alias 'japanese-jisx0208-1978   '=jis-x0208@1978)
148 (define-charset-alias 'chinese-gb2312           '=gb2312)
149 (define-charset-alias '=jis-x0208-1983          '=jis-x0208@1983)
150 (define-charset-alias 'japanese-jisx0208        '=jis-x0208@1983)
151 (define-charset-alias 'korean-ksc5601           '=ks-x1001)
152 (define-charset-alias 'japanese-jisx0212        '=jis-x0212)
153 (define-charset-alias 'chinese-cns11643-1       '=cns11643-1)
154 (define-charset-alias 'chinese-cns11643-2       '=cns11643-2)
155 (define-charset-alias 'chinese-gb12345          '=gb12345)
156 (define-charset-alias 'chinese-big5             '=big5)
157
158 ;; PinYin-ZhuYin
159 (make-charset 'sisheng "PinYin-ZhuYin"
160               '(registry "sisheng_cwnn\\|OMRON_UDC_ZH"
161                 dimension 1
162                 chars 94
163                 final ?0
164                 graphic 0
165                 ))
166
167 ;; Lao script.
168 ;; ISO10646's 0x0E80..0x0EDF are mapped to 0x20..0x7F.
169 (make-charset 'lao "Lao script"
170               '(registry "MuleLao-1"
171                 dimension 1
172                 chars 94
173                 final ?1
174                 graphic 1))
175
176 ;; IPA (International Phonetic Alphabet)
177 (make-charset 'ipa "International Phonetic Alphabet"
178               '(registry "MuleIPA"
179                 dimension 1
180                 chars 96
181                 final ?0
182                 graphic 1))
183
184 ;; Ethiopic
185 (make-charset 'ethiopic "Ethiopic"
186               '(registry "Ethio"
187                 dimension 2
188                 chars 94
189                 final ?3
190                 graphic 0
191                 ))
192
193 ;; ISO-IR-165 (CCITT Extended GB)
194 ;;    It is based on CCITT Recommendation T.101, includes GB 2312-80 +
195 ;;    GB 8565-88 table A4 + 293 characters.
196 (if (featurep 'utf-2000)
197     (progn
198       (make-charset '=iso-ir165
199                     "ISO-IR-165 (CCITT Extended GB; Chinese simplified)"
200                     '(iso-ir 165
201                              dimension 2
202                              chars 94
203                              mother =gb2312
204                              final ?E
205                              registry "isoir165"
206                              graphic 0))
207       (define-charset-alias 'chinese-isoir165 '=iso-ir165))
208   (make-charset 'chinese-isoir165
209                 "ISO-IR-165 (CCITT Extended GB; Chinese simplified)"
210                 '(iso-ir 165
211                          dimension 2
212                          chars 94
213                          final ?E
214                          registry "isoir165"
215                          graphic 0)))
216
217 ;; CNS11643 Plane3 thru Plane7
218 ;; These represent more and more obscure Chinese characters.
219 ;; By the time you get to Plane 7, we're talking about characters
220 ;; that appear once in some ancient manuscript and whose meaning
221 ;; is unknown.
222
223 (flet
224     ((make-chinese-cns11643-charset
225       (name iso-ir plane final)
226       (make-charset
227        name (concat "CNS 11643 Plane " plane " (Chinese traditional)")
228        `(iso-ir ,iso-ir
229          registry 
230          ,(concat "CNS11643[.-]\\(.*[.-]\\)?" plane "$")
231          dimension 2
232          chars 94
233          final ,final
234          graphic 0))
235       ))
236   (make-chinese-cns11643-charset '=cns11643-3 183 "3" ?I)
237   (make-chinese-cns11643-charset '=cns11643-4 184 "4" ?J)
238   (make-chinese-cns11643-charset '=cns11643-5 185 "5" ?K)
239   (make-chinese-cns11643-charset '=cns11643-6 186 "6" ?L)
240   (make-chinese-cns11643-charset '=cns11643-7 187 "7" ?M)
241   (define-charset-alias 'chinese-cns11643-3     '=cns11643-3)
242   (define-charset-alias 'chinese-cns11643-4     '=cns11643-4)
243   (define-charset-alias 'chinese-cns11643-5     '=cns11643-5)
244   (define-charset-alias 'chinese-cns11643-6     '=cns11643-6)
245   (define-charset-alias 'chinese-cns11643-7     '=cns11643-7)
246   )
247
248 ;; JIS X 0213:2000
249 (cond
250  ((featurep 'utf-2000)
251   (make-charset
252    '=jis-x0213-1
253    "JIS X 0213 Plain 1 (unchanged part)"
254    '(registry "jisx0213\\(\\.[0-9]+\\)?-1"
255               dimension 2
256               chars 94
257               =>iso-ir 228
258               final ?O
259               graphic 0
260               partial t))
261
262   (make-charset
263    '=jis-x0213-1@2000
264    "JIS X 0213:2000 Plain 1"
265    '(iso-ir 228
266             registry "jisx0213\\(\\.2000\\)-1"
267             dimension 2
268             chars 94
269             mother =jis-x0213-1
270             final ?O
271             graphic 0))
272   (make-charset
273    '=jis-x0213-2
274    "JIS X 0213 Plain 2"
275    '(iso-ir 229
276             registry "jisx0213\\(\\.\\(2000\\|2004\\)\\)?-2"
277             dimension 2
278             chars 94
279             final ?P
280             graphic 0))
281
282   (make-charset
283    '=jis-x0213-1@2004
284    "JIS X 0213:2004 Plain 1"
285    '(iso-ir 233
286             registry "jisx0213\\(\\.2004\\)-1"
287             dimension 2
288             chars 94
289             mother =jis-x0213-1
290             final ?Q
291             graphic 0))
292
293   (define-charset-alias 'japanese-jisx0213-1 '=jis-x0213-1@2000)
294   (define-charset-alias 'japanese-jisx0213-2 '=jis-x0213-2)
295   (define-charset-alias '=jis-x0213-1-2000 '=jis-x0213-1@2000)
296   (define-charset-alias '=jis-x0213-2-2000 '=jis-x0213-2)
297   )
298  (t
299   (make-charset
300    'japanese-jisx0213-1
301    "JIS X 0213:2000 Plain 1"
302    '(registry "jisx0213\\(\\.2000\\)-1"
303               dimension 2
304               chars 94
305               final ?O
306               graphic 0))
307   (make-charset
308    'japanese-jisx0213-2
309    "JIS X 0213:2000 Plain 2"
310    '(registry "jisx0213\\(\\.2000\\)-2"
311               dimension 2
312               chars 94
313               final ?P
314               graphic 0))
315   ))
316
317 (when (featurep 'utf-2000)
318   (define-charset-alias 'ucs '=ucs)
319   (define-charset-alias '=jis-x0208-1990 '=jis-x0208@1990)
320   (define-charset-alias 'japanese-jisx0208-1990 '=jis-x0208@1990)
321
322   (make-charset
323    '=>>>jis-x0208
324    "JIS X 0208 abstract glyph-forms (unchanged part)."
325    '(registry "jisx0208\\.1990"
326               dimension 2
327               chars 94
328               mother =jis-x0208
329               =>iso-ir 168
330               ;; final ?B
331               graphic 0))
332   (make-charset
333    '=>>>jis-x0208@1978
334    "JIS X 0208:1978 abstract glyph-forms."
335    '(registry "jisx0208\\.1978"
336               dimension 2
337               chars 94
338               mother =>>>jis-x0208
339               =>iso-ir 42
340               ;; final ?@
341               graphic 0))
342   (make-charset
343    '=>>>jis-x0208@1983
344    "JIS X 0208:1983 abstract glyph-forms."
345    '(registry "jisx0208\\.1983"
346               dimension 2
347               chars 94
348               mother =>>>jis-x0208
349               =>iso-ir 87
350               graphic 0))
351   (make-charset
352    '=>>>jis-x0208@1990
353    "JIS X 0208:1990 abstract glyph-forms."
354    '(registry "jisx0208\\.1990"
355               dimension 2
356               chars 94
357               mother =>>>jis-x0208
358               =>iso-ir 168
359               ;; final ?B
360               graphic 0))
361   (make-charset
362    '=>>>jis-x0213-1
363    "JIS X 0213 Plain 1 abstract glyph-forms (unchanged part)"
364    '(registry "jisx0213\\(\\.[0-9]+\\)?-1"
365               dimension 2
366               chars 94
367               mother =jis-x0213-1
368               =>iso-ir 228
369               ;; final ?O
370               graphic 0
371               ;; partial t
372               ))
373   (make-charset
374    '=>>>jis-x0213-1@2000
375    "JIS X 0213:2000 Plain 1 abstract glyph-forms"
376    '(registry "jisx0213\\(\\.2000\\)-1"
377               dimension 2
378               chars 94
379               mother =>>>jis-x0213-1
380               =>iso-ir 228
381               ;; final ?O
382               graphic 0
383               ;; partial t
384               ))
385   (make-charset
386    '=>>>jis-x0213-1@2004
387    "JIS X 0213:2004 Plain 1 abstract glyph-forms"
388    '(mother =>>>jis-x0213-1
389             =>iso-ir 233
390             ;; registry "jisx0213\\(\\.2004\\)-1"
391             dimension 2
392             chars 94
393             graphic 0))
394   (make-charset
395    '=>>>jis-x0213-2
396    "JIS X 0213 Plain 2 abstract glyph-forms"
397    '(mother =jis-x0213-2
398             =>iso-ir 229
399             registry "jisx0213\\(\\.\\(2000\\|2004\\)\\)?-2"
400             dimension 2
401             chars 94
402             graphic 0))
403
404   (make-charset
405    '=>>jis-x0208
406    "JIS X 0208 abstract glyphs (unchanged part)."
407    '(registry "jisx0208\\.1990"
408               dimension 2
409               chars 94
410               mother =>>>jis-x0208
411               =>iso-ir 168
412               ;; final ?B
413               graphic 0))
414   (make-charset
415    '=>>jis-x0208@1978
416    "JIS X 0208:1978 abstract glyphs."
417    '(registry "jisx0208\\.1978"
418               dimension 2
419               chars 94
420               mother =>>jis-x0208
421               =>iso-ir 42
422               ;; final ?@
423               graphic 0))
424   (make-charset
425    '=>>jis-x0208@1983
426    "JIS X 0208:1983 abstract glyphs."
427    '(registry "jisx0208\\.1983"
428               dimension 2
429               chars 94
430               mother =>>jis-x0208
431               =>iso-ir 87
432               graphic 0))
433   (make-charset
434    '=>>jis-x0208@1990
435    "JIS X 0208:1990 abstract glyphs."
436    '(registry "jisx0208\\.1990"
437               dimension 2
438               chars 94
439               mother =>>jis-x0208
440               =>iso-ir 168
441               graphic 0))
442
443   (make-charset
444    '=>>jis-x0213-1
445    "JIS X 0213 Plain 1 abstract glyphs (unchanged part)"
446    '(registry "jisx0213\\(\\.[0-9]+\\)?-1"
447               dimension 2
448               chars 94
449               mother =>>>jis-x0213-1
450               =>iso-ir 228
451               ;; final ?O
452               graphic 0
453               ;; partial t
454               ))
455   (make-charset
456    '=>>jis-x0213-1@2000
457    "JIS X 0213:2000 Plain 1 abstract glyphs"
458    '(registry "jisx0213\\(\\.2000\\)-1"
459               dimension 2
460               chars 94
461               mother =>>jis-x0213-1
462               =>iso-ir 228
463               ;; final ?O
464               graphic 0
465               ;; partial t
466               ))
467   (make-charset
468    '=>>jis-x0213-2
469    "JIS X 0213 Plain 2 abstract glyphs"
470    '(registry "jisx0213\\(\\.\\(2000\\|2004\\)\\)?-2"
471               dimension 2
472               chars 94
473               mother =>>>jis-x0213-2
474               =>iso-ir 229
475               ;; final ?P
476               graphic 0))
477   (make-charset
478    '=>>jis-x0213-1@2004
479    "JIS X 0213:2004 Plain 1 abstract glyphs"
480    '(registry "jisx0213\\(\\.2004\\)-1"
481               dimension 2
482               chars 94
483               mother =>>jis-x0213-1
484               =>iso-ir 233
485               ;; final ?Q
486               graphic 0
487               ;; partial t
488               ))
489
490   (make-charset
491    '=+>jis-x0208
492    "JIS X 0208 based on usual unification."
493    '(registry "jisx0208\\.1990"
494               dimension 2
495               chars 94
496               mother =>>jis-x0208
497               =>iso-ir 168
498               ;; final ?B
499               graphic 0))
500   (define-charset-alias '=>jis-x0208@usual '=+>jis-x0208)
501   (make-charset
502    '=+>jis-x0208@1978
503    "JIS X 0208:1978 unified abstract glyphs."
504    '(registry "jisx0208\\.1978"
505               dimension 2
506               chars 94
507               mother =+>jis-x0208
508               =>iso-ir 42
509               ;; final ?@
510               graphic 0))
511
512   (make-charset
513    '=>jis-x0208
514    "JIS X 0208 based on the unchanged unification rules."
515    '(registry "jisx0208\\.1990"
516               dimension 2
517               chars 94
518               mother =+>jis-x0208
519               =>iso-ir 168
520               ;; final ?B
521               graphic 0))
522   (define-charset-alias '<=>jis-x0208 '=>jis-x0208)
523   (make-charset
524    '=>jis-x0208@1997
525    "JIS X 0208 based on the unification rule of 1997 edition."
526    '(registry "jisx0208\\.1990"
527               dimension 2
528               chars 94
529               mother =>jis-x0208
530               =>iso-ir 168
531               ;; final ?B
532               graphic 0))
533   (define-charset-alias '<=>jis-x0208@1997 '=>jis-x0208@1997)
534   (define-charset-alias '  =jis-x0208@1997 '=>jis-x0208@1997)
535
536   (make-charset
537    '=>jis-x0213-1
538    "JIS X 0213 Plain 1 abstract characters (unchanged part)"
539    '(registry "jisx0213\\(\\.[0-9]+\\)?-1"
540               dimension 2
541               chars 94
542               mother =>>jis-x0213-1
543               =>iso-ir 228
544               ;; final ?O
545               graphic 0
546               ;; partial t
547               ))
548   (define-charset-alias '<=>jis-x0213-1 '=>jis-x0213-1)
549   (make-charset
550    '=>jis-x0213-1@2000
551    "JIS X 0213:2000 Plain 1 abstract characters"
552    '(registry "jisx0213\\(\\.2000\\)-1"
553               dimension 2
554               chars 94
555               mother =>jis-x0213-1
556               =>iso-ir 228
557               ;; final ?O
558               graphic 0
559               ;; partial t
560               ))
561   (define-charset-alias '<=>jis-x0213-1@2000 '=>jis-x0213-1@2000)
562   (make-charset
563    '=>jis-x0213-1@2004
564    "JIS X 0213:2004 Plain 1 abstract characters"
565    '(registry "jisx0213\\(\\.2004\\)-1"
566               dimension 2
567               chars 94
568               mother =>jis-x0213-1
569               =>iso-ir 233
570               ;; final ?Q
571               graphic 0
572               ;; partial t
573               ))
574   (define-charset-alias '<=>jis-x0213-1@2004 '=>jis-x0213-1@2004)
575   (make-charset
576    '=>jis-x0213-2@usual
577    "JIS X 0213 Plain 2 based on usual unification."
578    '(registry "jisx0213\\(\\.\\(2000\\|2004\\)\\)?-2"
579               dimension 2
580               chars 94
581               mother =>>jis-x0213-2
582               =>iso-ir 229
583               ;; final ?P
584               graphic 0))
585   (make-charset
586    '=>jis-x0213-2
587    "JIS X 0213 Plain 2 abstract characters"
588    '(registry "jisx0213\\(\\.\\(2000\\|2004\\)\\)?-2"
589               dimension 2
590               chars 94
591               mother =>jis-x0213-2@usual
592               =>iso-ir 229
593               ;; final ?P
594               graphic 0))
595
596   (make-charset '=big5-cdp
597                 "Big5 with CDP extension"
598                 '(long-name     "Big5-CDP"
599                   chars         256
600                   dimension     2
601                   columns       2
602                   graphic       2
603                   direction     l2r
604                   registry      "big5\\.cdp-0"
605                   mother        chinese-big5
606                   min-code      #x8140
607                   max-code      #x8DFE))
608   (define-charset-alias 'chinese-big5-cdp '=big5-cdp)
609
610   (make-charset '=>>big5-cdp
611                 "Abstract glyphs of Big5-CDP"
612                 '(long-name     "Big5-CDP glyphs"
613                   chars         256
614                   dimension     2
615                   columns       2
616                   graphic       2
617                   direction     l2r
618                   registry      "big5\\.cdp-0"
619                   mother        =big5-cdp))
620
621   (make-charset '=>big5-cdp
622                 "Big5-CDP abstract characters"
623                 '(long-name     "Big5-CDP abstract characters"
624                   chars         256
625                   dimension     2
626                   columns       2
627                   graphic       2
628                   direction     l2r
629                   registry      "big5\\.cdp-0"
630                   mother        =>>big5-cdp))
631
632   (make-charset '=gt
633                 "GT 2000"
634                 `(long-name     "GT"
635                   chars         256
636                   dimension     3
637                   columns       2
638                   graphic       2
639                   direction     l2r
640                   registry      ""
641                   min-code      ,(lsh #x6100 16)
642                   max-code      ,(+ (lsh #x6100 16) 67547)
643                   code-offset   ,(lsh #x6100 16)))
644   (define-charset-alias 'ideograph-gt '=gt)
645   (make-charset '=>>>gt
646                 "GT 2000 abstract glyph-forms"
647                 '(long-name     "GT abstract glyph-forms"
648                   chars         256
649                   dimension     3
650                   columns       2
651                   graphic       2
652                   direction     l2r
653                   mother        =gt))
654   (make-charset '=>>gt
655                 "GT 2000 abstract glyphs"
656                 '(long-name     "GT abstract glyphs"
657                   chars         256
658                   dimension     3
659                   columns       2
660                   graphic       2
661                   direction     l2r
662                   mother        =>>>gt))
663   (define-charset-alias '<=>gt '=>>gt)
664   (define-charset-alias '<==>gt '=>>gt)
665   (make-charset '=>gt
666                 "GT 2000 abstract characters"
667                 '(long-name     "abstract GT characters"
668                   chars         256
669                   dimension     3
670                   columns       2
671                   graphic       2
672                   direction     l2r
673                   mother        =>>gt))
674   (make-charset '=gt-k
675                 "Ideographic components of GT"
676                 `(long-name     "GT components"
677                   chars         256
678                   dimension     2
679                   columns       2
680                   graphic       2
681                   direction     l2r
682                   registry      ""
683                   min-code      ,(lsh #x6110 16)
684                   max-code      ,(+ (lsh #x6110 16) 17090)
685                   code-offset   ,(lsh #x6110 16)))
686   (define-charset-alias 'ideograph-gt-k '=gt-k)
687   (make-charset '=>>gt-k
688                 "abstract glyphs of GT-K"
689                 '(long-name     "GT-K abstract glyphs"
690                   chars         256
691                   dimension     2
692                   columns       2
693                   graphic       2
694                   direction     l2r
695                   mother        =gt-k))
696   (make-charset '=>gt-k
697                 "GT-K abstract characters"
698                 '(long-name     "GT-K abstract characters"
699                   chars         256
700                   dimension     2
701                   columns       2
702                   graphic       2
703                   direction     l2r
704                   mother        =>>gt-k))
705   (let ((i 1))
706     (while (<= i 11)
707       (make-charset
708        (intern (format "=gt-pj-%d" i))
709        (format "GT 2000 (pseudo JIS encoding) part %d" i)
710        `(long-name ,(format "GT PJ %d" i)
711                    chars 94
712                    dimension 2
713                    columns 2
714                    graphic 0
715                    direction l2r
716                    registry ,(format "\\(GTpj-%d\\|jisx0208\\.GT-%d\\)$" i i)))
717       (define-charset-alias
718         (intern (format "ideograph-gt-pj-%d" i))
719         (intern (format "=gt-pj-%d" i)))
720       (setq i (1+ i))))
721   (make-charset
722    '=gt-pj-k1
723    "Ideographic parts of GT (pseudo JIS encoding) part 1"
724    '(long-name "GT K1"
725                chars 94
726                dimension 2
727                columns 2
728                graphic 0
729                direction l2r
730                registry "\\(GTKpj-1\\|jisx0208\\.GTK-1\\)$"))
731   (define-charset-alias 'ideograph-gt-pj-k1 '=gt-pj-k1)
732   (make-charset
733    '=gt-pj-k2
734    "Ideographic parts of GT (pseudo JIS encoding) part 2"
735    '(long-name "GT K2"
736                chars 94
737                dimension 2
738                columns 2
739                graphic 0
740                direction l2r
741                registry "\\(GTKpj-2\\|jisx0208\\.GTK-2\\)$"))
742   (define-charset-alias 'ideograph-gt-pj-k2 '=gt-pj-k2)
743
744   (make-charset '=daikanwa
745                 "Daikanwa dictionary (unchanged part)"
746                 `(long-name     "Daikanwa"
747                   chars         256
748                   dimension     2
749                   columns       2
750                   graphic       2
751                   direction     l2r
752                   registry      "Daikanwa\\(\\.[0-9]+\\)?-3"
753                   min-code      #xE00000
754                   max-code      ,(+ #xE00000 50100)
755                   code-offset   #xE00000))
756   (define-charset-alias 'ideograph-daikanwa '=daikanwa)
757
758   (make-charset '=daikanwa@rev1
759                 "Daikanwa dictionary (revised version)"
760                 `(long-name     "Daikanwa Rev."
761                   chars         256
762                   dimension     2
763                   columns       2
764                   graphic       2
765                   direction     l2r
766                   registry      "Daikanwa\\(\\.[0-9]+\\)?-2"
767                   mother        =daikanwa
768                   ))
769   (define-charset-alias 'ideograph-daikanwa-2 '=daikanwa@rev1)
770   (define-charset-alias '=daikanwa-rev1 '=daikanwa@rev1)
771
772   (make-charset '=daikanwa@rev2
773                 "Daikanwa dictionary (revised version 2)"
774                 `(long-name     "Daikanwa"
775                   chars         256
776                   dimension     2
777                   columns       2
778                   graphic       2
779                   direction     l2r
780                   registry      "Daikanwa\\(\\.[0-9]+\\)?-3"
781                   mother        =daikanwa
782                   min-code      1
783                   max-code      49964
784                   ;; min-code   #xE00000
785                   ;; max-code   ,(+ #xE00000 50100)
786                   ;; code-offset        #xE00000
787                   ))
788   (define-charset-alias '=daikanwa-rev2 '=daikanwa@rev2)
789
790   (make-charset '=daikanwa/+p
791                 "Daikanwa dictionary (ddddd')"
792                 `(long-name     "Daikanwa ddddd'"
793                   chars         256
794                   dimension     2
795                   columns       2
796                   graphic       2
797                   direction     l2r))
798   (make-charset '=daikanwa/+2p
799                 "Daikanwa dictionary (ddddd'')"
800                 `(long-name     "Daikanwa ddddd''"
801                   chars         256
802                   dimension     2
803                   columns       2
804                   graphic       2
805                   direction     l2r))
806   (make-charset '=daikanwa/ho
807                 "Daikanwa dictionary (Hokan)"
808                 `(long-name     "Daikanwa-ho"
809                   chars         256
810                   dimension     2
811                   columns       2
812                   graphic       2
813                   direction     l2r))
814
815   (make-charset '=>>daikanwa
816                 "Daikanwa abstract glyphs"
817                 '(long-name     "Daikanwa glyphs"
818                   chars         256
819                   dimension     2
820                   columns       2
821                   graphic       2
822                   direction     l2r
823                   registry      "Daikanwa\\(\\.[0-9]+\\)?-3"
824                   mother        =daikanwa))
825
826   (make-charset '=>daikanwa
827                 "Daikanwa abstract characters"
828                 '(long-name     "abstract Daikanwa"
829                   chars         256
830                   dimension     2
831                   columns       2
832                   graphic       2
833                   direction     l2r
834                   registry      "Daikanwa\\(\\.[0-9]+\\)?-3"
835                   mother        =>>daikanwa))
836
837   (make-charset '=shinjigen
838                 "Kadokawa ShinJigen dictionary (common parts)"
839                 `(long-name     "Shinjigen common parts"
840                   chars         256
841                   dimension     2
842                   columns       2
843                   graphic       2
844                   direction     l2r
845                   registry      "Shinjigen\\(\\.[0-9]+\\)?-*"))
846
847   (make-charset '=shinjigen@1ed
848                 "Kadokawa ShinJigen dictionary (the first edition)"
849                 `(long-name     "Shinjigen-1"
850                   chars         256
851                   dimension     2
852                   columns       2
853                   graphic       2
854                   direction     l2r
855                   mother        =shinjigen
856                   registry      "Shinjigen\\(\\.[0-9]+\\)?-1"))
857   (define-charset-alias 'shinjigen-1 '=shinjigen@1ed)
858
859   (make-charset '=shinjigen@1ed/24pr
860                 "Kadokawa ShinJigen dictionary (the 24th impression)"
861                 `(long-name     "Shinjigen-1 24pr"
862                   chars         256
863                   dimension     2
864                   columns       2
865                   graphic       2
866                   direction     l2r
867                   mother        =shinjigen@1ed))
868
869   (make-charset '=shinjigen@rev
870                 "Kadokawa ShinJigen dictionary (the revised edition)"
871                 `(long-name     "Shinjigen-2"
872                   chars         256
873                   dimension     2
874                   columns       2
875                   graphic       2
876                   direction     l2r
877                   mother        =shinjigen
878                   registry      "Shinjigen\\(\\.[0-9]+\\)?-2"))
879   (define-charset-alias 'shinjigen-2 '=shinjigen@rev)
880   (make-charset '=shinjigen/+p@rev
881                 "ShinJigen (the second edition) number with '"
882                 `(long-name     "Shinjigen-2 with '"
883                   chars         256
884                   dimension     2
885                   columns       2
886                   graphic       2
887                   direction     l2r))
888   (define-charset-alias 'shinjigen-2-p '=shinjigen/+p@rev)
889
890   (make-charset '=big5-pua
891                 "Big5 with private used area"
892                 '(long-name     "Big5-PUA"
893                   chars         256
894                   dimension     2
895                   columns       2
896                   graphic       2
897                   direction     l2r
898                   mother        chinese-big5
899                   registry      "Big5\\.ETEN"))
900   (define-charset-alias 'chinese-big5-pua '=big5-pua)
901   (make-charset '=big5-eten
902                 "Big5 ETEN"
903                 '(long-name     "Big5-ETEN"
904                   chars         256
905                   dimension     2
906                   columns       2
907                   graphic       2
908                   direction     l2r
909                   mother        chinese-big5
910                   min-code      #x8140
911                   max-code      #xFEFE
912                   registry      "Big5\\.ETEN"))
913   (define-charset-alias 'chinese-big5-eten '=big5-eten)
914   (make-charset 'chinese-big5-eten-a
915                 "Big5 ETEN (#xF9D6 .. #xF9FE)"
916                 '(long-name     "Big5-ETEN-a"
917                   chars         256
918                   dimension     2
919                   columns       2
920                   graphic       2
921                   direction     l2r
922                   mother        chinese-big5
923                   min-code      #xF9D6
924                   max-code      #xF9FE
925                   registry      "Big5\\.ETEN"))
926   (make-charset 'chinese-big5-eten-b
927                 "Big5 ETEN (#xC6A1 .. #xC8FE)"
928                 '(long-name     "Big5-ETEN-b"
929                   chars         256
930                   dimension     2
931                   columns       2
932                   graphic       2
933                   direction     l2r
934                   mother        chinese-big5
935                   min-code      #xC6A1
936                   max-code      #xC8FE
937                   registry      "Big5\\.ETEN"))
938
939   (let* ((i 1)
940          (hzk-min (+ (lsh #x6200 16) 65536))
941          (hzk-max (+ hzk-min 65535)))
942     (while (<= i 12)
943       (make-charset
944        (intern (format "=hanziku-%d" i))
945        (format "HANZIKU (pseudo BIG5 encoding) part %d" i)
946        `(long-name ,(format "HANZIKU-%d" i)
947                    chars 256
948                    dimension 2
949                    columns 2
950                    graphic 2
951                    direction l2r
952                    registry ,(format "hanziku-%d$" i i)
953                    min-code ,hzk-min
954                    max-code ,hzk-max
955                    code-offset ,hzk-min))
956       (define-charset-alias
957         (intern (format "ideograph-hanziku-%d" i))
958         (intern (format "=hanziku-%d" i)))
959       (setq hzk-min (1+ hzk-max)
960             hzk-max (+ hzk-min 65535))
961       (setq i (1+ i))))
962
963   (make-charset '=cbeta "CBETA private characters"
964                 '(long-name     "CBETA PUA"
965                   chars         256
966                   dimension     2
967                   registry      "cbeta-0"
968                   graphic       2
969                   min-code      #xE20000
970                   max-code      #xE2FFFF
971                   code-offset   #xE20000
972                   columns       2
973                   direction     l2r))
974   (define-charset-alias 'ideograph-cbeta '=cbeta)
975
976   (make-charset '=>>cbeta "CBETA abstract glyphs"
977                 '(long-name     "CBETA glyphs"
978                   chars         256
979                   dimension     2
980                   registry      "cbeta-0"
981                   graphic       2
982                   columns       2
983                   direction     l2r
984                   mother        =cbeta))
985
986   (make-charset '=zinbun-oracle
987                 "Oracle Bones Script"
988                 `(long-name     "Oracle Bones Script in Zinbun, Kyoto Univ."
989                   chars         256
990                   dimension     2
991                   registry      "zob1968-0"
992                   graphic       2
993                   min-code      #xE70000
994                   max-code      ,(+ #xE70000 8192)
995                   code-offset   #xE70000
996                   columns       2
997                   direction     l2r))
998
999   (make-charset '=>zinbun-oracle
1000                 "Abstract Oracle Bones"
1001                 '(long-name     "Abstract characters of Zinbun Oracle Bones."
1002                   chars         256
1003                   dimension     2
1004                   mother        =zinbun-oracle
1005                   registry      "zob1968-0"
1006                   graphic       2
1007                   columns       2
1008                   direction     l2r))
1009
1010   (make-charset '=jef-china3
1011                 "JEF + CHINA3 private characters"
1012                 '(long-name     "JEF + CHINA3"
1013                   chars         256
1014                   dimension     2
1015                   columns       2
1016                   graphic       2
1017                   direction     l2r
1018                   registry      "china3jef-0"
1019                   min-code      #xE80000
1020                   max-code      #xE8FFFF
1021                   code-offset   #xE80000))
1022   (define-charset-alias 'china3-jef '=jef-china3)
1023
1024   (make-charset '=ruimoku-v6
1025                 "private characters used in RUIMOKU Version.6"
1026                 `(long-name     "RUI6"
1027                   chars         256
1028                   dimension     2
1029                   columns       2
1030                   graphic       2
1031                   direction     l2r
1032                   registry      "rui6-0"
1033                   ;; mother     ucs
1034                   min-code      #xE90000 ; #xE000
1035                   max-code      #xE908FF ; #xE8FF
1036                   code-offset   ,(- #xE90000 #xE000)))
1037   (make-charset '=>>ruimoku-v6
1038                 "RUIMOKU Version.6 glyphs"
1039                 '(long-name     "RUI6 glyphs"
1040                   chars         256
1041                   dimension     2
1042                   columns       2
1043                   graphic       2
1044                   direction     l2r
1045                   registry      "rui6-0"
1046                   mother        =ruimoku-v6))
1047
1048   (make-charset '==>ucs@bucs
1049                 "Basic Subset of Coded Character Sets (BUCS)"
1050                 '(long-name     "BUCS abstract characters"
1051                   chars         256
1052                   dimension     3
1053                   columns       2
1054                   graphic       2
1055                   direction     l2r
1056                   =>iso-ir      177
1057                   mother        =ucs))
1058
1059   (make-charset '=>ucs@iso
1060                 "Abstract characters of ISO/IEC 10646 representatives"
1061                 '(long-name     "UCS characters for ISO"
1062                   chars         256
1063                   dimension     3
1064                   columns       2
1065                   graphic       2
1066                   direction     l2r
1067                   =>iso-ir      177
1068                   mother        =ucs))
1069   (make-charset '=>ucs@unicode
1070                 "Abstract characters of Unicode representatives"
1071                 '(long-name     "UCS characters for Unicode"
1072                   chars         256
1073                   dimension     3
1074                   columns       2
1075                   graphic       2
1076                   direction     l2r
1077                   =>iso-ir      177
1078                   mother        =>ucs@iso))
1079   (make-charset '=>ucs@jis
1080                 "UCS Representative characters for JIS X0208/0212/0213"
1081                 '(long-name     "UCS characters for JIS"
1082                   chars         256
1083                   dimension     3
1084                   columns       2
1085                   graphic       2
1086                   direction     l2r
1087                   =>iso-ir      177
1088                   mother        =>ucs@unicode))
1089   (make-charset '=>ucs@jis/1990
1090                 "UCS Representative characters for JIS X0208/0212:1990"
1091                 '(long-name     "UCS characters for JIS:1990"
1092                   chars         256
1093                   dimension     3
1094                   columns       2
1095                   graphic       2
1096                   direction     l2r
1097                   =>iso-ir      177
1098                   mother        =>ucs@jis))
1099   (make-charset '=>ucs@JP
1100                 "UCS Representative characters for Japanese usual unification"
1101                 '(long-name     "UCS characters for JP"
1102                   chars         256
1103                   dimension     3
1104                   columns       2
1105                   graphic       2
1106                   direction     l2r
1107                   =>iso-ir      177
1108                   mother        =>ucs@jis))
1109   (make-charset '=>ucs@ks
1110                 "UCS Representative characters for Korean Standards"
1111                 '(long-name     "UCS characters for KS"
1112                   chars         256
1113                   dimension     3
1114                   columns       2
1115                   graphic       2
1116                   direction     l2r
1117                   =>iso-ir      177
1118                   mother        =>ucs@unicode))
1119   (make-charset '=>ucs@cns
1120                 "UCS representatives characters for CNS 11643 sources"
1121                 '(long-name     "UCS characters for CNS 11643"
1122                   chars         256
1123                   dimension     3
1124                   columns       2
1125                   graphic       2
1126                   direction     l2r
1127                   =>iso-ir      177
1128                   mother        =>ucs@unicode))
1129
1130   (make-charset '=>>ucs@iso
1131                 "Representative abstract-glyphs of ISO/IEC 10646"
1132                 '(long-name     "UCS abstract glyphs for UCS"
1133                   chars         256
1134                   dimension     3
1135                   columns       2
1136                   graphic       2
1137                   direction     l2r
1138                   =>iso-ir      177
1139                   mother        =>ucs@iso))
1140   (make-charset '=>>ucs@unicode
1141                 "Representative abstract-glyphs of Unicode"
1142                 '(long-name     "Unicode abstract glyphs"
1143                   chars         256
1144                   dimension     3
1145                   columns       2
1146                   graphic       2
1147                   direction     l2r
1148                   =>iso-ir      177
1149                   mother        =>>ucs@iso))
1150   (make-charset '=>>ucs@jis
1151                 "UCS Representative abstract-glyphs for JIS X0208/0212/0213"
1152                 '(long-name     "UCS abstract glyphs for JIS"
1153                   chars         256
1154                   dimension     3
1155                   columns       2
1156                   graphic       2
1157                   direction     l2r
1158                   =>iso-ir      177
1159                   mother        =>>ucs@unicode))
1160   (make-charset '=>>ucs@jis/1990
1161                 "UCS Representative glyphs for JIS X 0208/0212:1990"
1162                 '(long-name     "UCS glyphs for JIS:1990"
1163                   chars         256
1164                   dimension     3
1165                   columns       2
1166                   graphic       2
1167                   direction     l2r
1168                   =>iso-ir      177
1169                   mother        =>>ucs@jis))
1170   (make-charset '=>>ucs@jis/2000
1171                 "UCS Representative glyphs for JIS X 0213:2000"
1172                 '(long-name     "UCS glyphs for JIS:2000"
1173                   chars         256
1174                   dimension     3
1175                   columns       2
1176                   graphic       2
1177                   direction     l2r
1178                   =>iso-ir      177
1179                   mother        =>>ucs@jis))
1180   (make-charset '=>>ucs@jis/2004
1181                 "UCS Representative glyphs for JIS X 0213:2004"
1182                 '(long-name     "UCS glyphs for JIS:2004"
1183                   chars         256
1184                   dimension     3
1185                   columns       2
1186                   graphic       2
1187                   direction     l2r
1188                   =>iso-ir      177
1189                   mother        =>>ucs@jis))
1190   (make-charset '=>>ucs@JP
1191                 "UCS abstract-glyphs based on Japanese style glyphs"
1192                 '(long-name     "UCS glyphs for JP"
1193                   chars         256
1194                   dimension     3
1195                   columns       2
1196                   graphic       2
1197                   direction     l2r
1198                   =>iso-ir      177
1199                   mother        =>>ucs@jis/2004))
1200   (make-charset '=>>ucs@ks
1201                 "UCS Representative glyphs for Korean Standards"
1202                 '(long-name     "UCS glyphs for KS"
1203                   chars         256
1204                   dimension     3
1205                   columns       2
1206                   graphic       2
1207                   direction     l2r
1208                   =>iso-ir      177
1209                   mother        =>>ucs@unicode))
1210   (make-charset '=>>ucs@cns
1211                 "UCS Representative glyphs for CNS 11643 sources"
1212                 '(long-name     "UCS glyphs for CNS"
1213                   chars         256
1214                   dimension     3
1215                   columns       2
1216                   graphic       2
1217                   direction     l2r
1218                   =>iso-ir      177
1219                   mother        =>>ucs@unicode))
1220
1221   (make-charset '=>>>ucs@iso
1222                 "Representative glyph-forms of ISO/IEC 10646"
1223                 '(long-name     "UCS glyph-forms for UCS"
1224                   chars         256
1225                   dimension     3
1226                   columns       2
1227                   graphic       2
1228                   direction     l2r
1229                   =>iso-ir      177
1230                   mother        =>>ucs@iso))
1231   (make-charset '=>>>ucs@unicode
1232                 "Representative glyph-forms of Unicode"
1233                 '(long-name     "UCS glyph-forms for Unicode"
1234                   chars         256
1235                   dimension     3
1236                   columns       2
1237                   graphic       2
1238                   direction     l2r
1239                   =>iso-ir      177
1240                   mother        =>>>ucs@iso))
1241   (make-charset '=>>>ucs@jis
1242                 "UCS Representative glyph-forms for JIS X0208/0212/0213"
1243                 '(long-name     "UCS glyph-forms for JIS"
1244                   chars         256
1245                   dimension     3
1246                   columns       2
1247                   graphic       2
1248                   direction     l2r
1249                   =>iso-ir      177
1250                   mother        =>>>ucs@unicode))
1251   (make-charset '=>>>ucs@jis/1990
1252                 "UCS Representative glyph-forms for JIS X 0208/0212:1990"
1253                 '(long-name     "UCS glyph-forms for JIS:1990"
1254                   chars         256
1255                   dimension     3
1256                   columns       2
1257                   graphic       2
1258                   direction     l2r
1259                   =>iso-ir      177
1260                   mother        =>>>ucs@jis))
1261   (make-charset '=>>>ucs@jis/2000
1262                 "UCS Representative glyph-forms for JIS X 0213:2000"
1263                 '(long-name     "UCS glyph-forms for JIS:2000"
1264                   chars         256
1265                   dimension     3
1266                   columns       2
1267                   graphic       2
1268                   direction     l2r
1269                   =>iso-ir      177
1270                   mother        =>>>ucs@jis))
1271   (make-charset '=>>>ucs@jis/2004
1272                 "UCS Representative glyph-forms for JIS X 0213:2004"
1273                 '(long-name     "UCS glyph-forms for JIS:2004"
1274                   chars         256
1275                   dimension     3
1276                   columns       2
1277                   graphic       2
1278                   direction     l2r
1279                   =>iso-ir      177
1280                   mother        =>>>ucs@jis))
1281   (make-charset '=>>>ucs@ks
1282                 "UCS Representative glyph-forms for Korean Standards"
1283                 '(long-name     "UCS glyph-forms for KS"
1284                   chars         256
1285                   dimension     3
1286                   columns       2
1287                   graphic       2
1288                   direction     l2r
1289                   =>iso-ir      177
1290                   mother        =>>>ucs@unicode))
1291   (make-charset '=>>>ucs@cns
1292                 "UCS Representative glyph-forms for CNS 11643 sources"
1293                 '(long-name     "UCS glyph-forms for CNS"
1294                   chars         256
1295                   dimension     3
1296                   columns       2
1297                   graphic       2
1298                   direction     l2r
1299                   =>iso-ir      177
1300                   mother        =>>>ucs@unicode))
1301
1302   (make-charset '=ucs@iso
1303                 "ISO/IEC 10646 for its representative glyphs"
1304                 '(long-name     "UCS for ISO"
1305                   chars         256
1306                   dimension     3
1307                   columns       2
1308                   graphic       2
1309                   direction     l2r
1310                   =>iso-ir      177
1311                   mother        =>>>ucs@iso))
1312   (make-charset '=ucs@unicode
1313                 "Unicode for its representative glyphs"
1314                 '(long-name     "UCS for Unicode"
1315                   chars         256
1316                   dimension     3
1317                   columns       2
1318                   graphic       2
1319                   direction     l2r
1320                   =>iso-ir      177
1321                   mother        =ucs@iso))
1322   (make-charset '=ucs@gb
1323                 "ISO/IEC 10646 for GB"
1324                 '(long-name     "UCS for GB"
1325                   chars         256
1326                   dimension     3
1327                   columns       2
1328                   graphic       2
1329                   direction     l2r
1330                   =>iso-ir      177
1331                   mother        =ucs@unicode))
1332   (define-charset-alias 'ucs-gb '=ucs@gb)
1333   (make-charset '=ucs@gb/fw
1334                 "ISO/IEC 10646 for GB with fullwidth"
1335                 '(long-name     "UCS for GB-fullwidth"
1336                   chars         256
1337                   dimension     3
1338                   columns       2
1339                   graphic       2
1340                   direction     l2r
1341                   =>iso-ir      177
1342                   mother        =ucs@gb))
1343   (make-charset '=ucs-bmp@gb
1344                 "ISO/IEC 10646 BMP for GB"
1345                 '(long-name     "BMP for GB"
1346                   chars         256
1347                   dimension     3
1348                   columns       2
1349                   graphic       2
1350                   direction     l2r
1351                   mother        =ucs@gb
1352                   min-code      #x0000
1353                   max-code      #xFFFF))
1354   (make-charset '=ucs@cns
1355                 "ISO/IEC 10646 for CNS 11643"
1356                 '(long-name     "UCS for CNS"
1357                   chars         256
1358                   dimension     3
1359                   columns       2
1360                   graphic       2
1361                   direction     l2r
1362                   =>iso-ir      177
1363                   mother        =ucs@unicode))
1364   (define-charset-alias 'ucs-cns '=ucs@cns)
1365   (make-charset '=ucs@cns/fw
1366                 "ISO/IEC 10646 for CNS 11643 with fullwidth"
1367                 '(long-name     "UCS for CNS-fullwidth"
1368                   chars         256
1369                   dimension     3
1370                   columns       2
1371                   graphic       2
1372                   direction     l2r
1373                   =>iso-ir      177
1374                   mother        =ucs@cns))
1375   (make-charset '=ucs-bmp@cns
1376                 "ISO/IEC 10646 BMP for CNS"
1377                 '(long-name     "BMP for CNS"
1378                   chars         256
1379                   dimension     3
1380                   columns       2
1381                   graphic       2
1382                   direction     l2r
1383                   mother        =ucs@cns
1384                   min-code      #x0000
1385                   max-code      #xFFFF))
1386   (make-charset '=ucs@jis
1387                 "ISO/IEC 10646 for JIS X0208/0212/0213"
1388                 '(long-name     "UCS for JIS"
1389                   chars         256
1390                   dimension     3
1391                   columns       2
1392                   graphic       2
1393                   direction     l2r
1394                   =>iso-ir      177
1395                   mother        =ucs@unicode))
1396   (define-charset-alias 'ucs-jis '=ucs@jis)
1397   (make-charset '=ucs@jis/fw
1398                 "ISO/IEC 10646 for JIS X0208/0212/0213 with fullwidth"
1399                 '(long-name     "UCS for JIS-fullwidth"
1400                   chars         256
1401                   dimension     3
1402                   columns       2
1403                   graphic       2
1404                   direction     l2r
1405                   =>iso-ir      177
1406                   mother        =ucs@jis))
1407   (make-charset '=ucs-bmp@jis
1408                 "ISO/IEC 10646 BMP for JIS"
1409                 '(long-name     "BMP for JIS"
1410                   chars         256
1411                   dimension     3
1412                   columns       2
1413                   graphic       2
1414                   direction     l2r
1415                   mother        =ucs@jis
1416                   min-code      #x0000
1417                   max-code      #xFFFF))
1418   ;; (make-charset '=ucs@jis/1983
1419   ;;               "ISO/IEC 10646 for JIS X 0208:1983"
1420   ;;               '(long-name     "UCS for JIS:1983"
1421   ;;                 chars         256
1422   ;;                 dimension     3
1423   ;;                 columns       2
1424   ;;                 graphic       2
1425   ;;                 direction     l2r
1426   ;;                 =>iso-ir      177
1427   ;;                 mother        =ucs@jis))
1428   (make-charset '=ucs@jis/1990
1429                 "ISO/IEC 10646 for JIS X 0208/0212:1990"
1430                 '(long-name     "UCS for JIS:1990"
1431                   chars         256
1432                   dimension     3
1433                   columns       2
1434                   graphic       2
1435                   direction     l2r
1436                   =>iso-ir      177
1437                   mother        =ucs@jis))
1438   (define-charset-alias '=ucs@jis-1990 '=ucs@jis/1990)
1439   (define-charset-alias '=ucs-jis-1990 '=ucs@jis/1990)
1440   (make-charset '=ucs@jis/2000
1441                 "ISO/IEC 10646 for JIS X 0213:2000"
1442                 '(long-name     "UCS for JIS:2000"
1443                   chars         256
1444                   dimension     3
1445                   columns       2
1446                   graphic       2
1447                   direction     l2r
1448                   =>iso-ir      177
1449                   mother        =ucs@jis))
1450   (define-charset-alias '=ucs@jis-2000 '=ucs@jis/2000)
1451   (define-charset-alias '=ucs-jis-2000 '=ucs@jis/2000)
1452   (make-charset '=ucs@jis/2004
1453                 "ISO/IEC 10646 for JIS X 0213:2004"
1454                 '(long-name     "UCS for JIS:2004"
1455                   chars         256
1456                   dimension     3
1457                   columns       2
1458                   graphic       2
1459                   direction     l2r
1460                   =>iso-ir      177
1461                   mother        =ucs@jis))
1462   (make-charset '=ucs@JP
1463                 "UCS for common glyphs used in Japan"
1464                 '(long-name     "UCS for Japan"
1465                   chars         256
1466                   dimension     3
1467                   columns       2
1468                   graphic       2
1469                   direction     l2r
1470                   =>iso-ir      177
1471                   mother        =ucs@jis/2004))
1472   (define-charset-alias '=ucs@jp '=ucs@JP)
1473   (make-charset '=ucs@JP/hanazono
1474                 "Japanese glyph-images of Hanazono Mincho"
1475                 '(long-name     "UCS for Hana-Min"
1476                   chars         256
1477                   dimension     3
1478                   columns       2
1479                   graphic       2
1480                   direction     l2r
1481                   =>iso-ir      177
1482                   mother        =ucs@JP))
1483   (make-charset '=ucs@ks
1484                 "ISO/IEC 10646 for Korean Standards"
1485                 '(long-name     "UCS for KS"
1486                   chars         256
1487                   dimension     3
1488                   columns       2
1489                   graphic       2
1490                   direction     l2r
1491                   =>iso-ir      177
1492                   mother        =ucs@unicode))
1493   (define-charset-alias 'ucs-ks '=ucs@ks)
1494   (make-charset '=ucs-bmp@ks
1495                 "ISO/IEC 10646 BMP for KS"
1496                 '(long-name     "BMP for KS"
1497                   chars         256
1498                   dimension     3
1499                   columns       2
1500                   graphic       2
1501                   direction     l2r
1502                   mother        =ucs@ks
1503                   min-code      #x0000
1504                   max-code      #xFFFF))
1505   (make-charset '=ucs@cns11643
1506                 "ISO/IEC 10646 for CNS based on www.cns11643.gov.tw"
1507                 '(long-name     "UCS for CNS11643"
1508                   chars         256
1509                   dimension     3
1510                   columns       2
1511                   graphic       2
1512                   direction     l2r
1513                   =>iso-ir      177
1514                   mother        =ucs@cns))
1515   (make-charset '=ucs@big5
1516                 "ISO/IEC 10646 for Big5"
1517                 '(long-name     "UCS for Big5"
1518                   chars         256
1519                   dimension     3
1520                   columns       2
1521                   graphic       2
1522                   direction     l2r
1523                   =>iso-ir      177
1524                   mother        =>>ucs@cns))
1525   (define-charset-alias 'ucs-big5 '=ucs@big5)
1526   (make-charset '=ucs@big5/cns11643
1527                 "ISO/IEC 10646 for Big5 based on www.cns11643.gov.tw"
1528                 '(long-name     "UCS for Big5@CNS11643"
1529                   chars         256
1530                   dimension     3
1531                   columns       2
1532                   graphic       2
1533                   direction     l2r
1534                   =>iso-ir      177
1535                   mother        =ucs@big5))
1536
1537   (make-charset
1538    '=ucs-radicals
1539    "CJK Radicals of UCS"
1540    '(long-name "UCS-Radicals"
1541                chars 256
1542                dimension 2
1543                columns 2
1544                graphic 2
1545                direction l2r
1546                registry "-zhRadicals-.*-ucs-0"
1547                mother ucs-bmp
1548                min-code #x2E00 max-code #x2FFF))
1549   (make-charset
1550    '=ucs-radicals@unicode
1551    "CJK Radicals of UCS"
1552    '(long-name "UCS-Radicals"
1553                chars 256
1554                dimension 2
1555                columns 2
1556                graphic 2
1557                direction l2r
1558                registry "-zhRadicals-.*-ucs-0"
1559                mother =ucs@unicode
1560                min-code #x2E00 max-code #x2FFF))
1561   (make-charset
1562    '=ucs-hangul
1563    "Hangul Syllables of UCS"
1564    '(long-name "UCS-Hangul-Syllables"
1565                chars 256
1566                dimension 2
1567                columns 2
1568                graphic 2
1569                direction l2r
1570                registry "-Hangul-.*-ucs-0"
1571                mother =ucs
1572                min-code #xAC00 max-code #xD7AF))
1573   (make-charset
1574    '=ucs-bmp-cjk
1575    "CJK Characters in BMP of UCS"
1576    '(long-name "UCS-BMP-CJK"
1577                chars 256
1578                dimension 2
1579                columns 2
1580                graphic 2
1581                direction l2r
1582                registry "-zh-.*-ucs-0"
1583                mother ucs-bmp
1584                min-code #x2E00
1585                max-code #x9FA5
1586                ;; max-code #xA4CF
1587                ))
1588   (make-charset
1589    '=ucs-bmp-cjk@unicode
1590    "CJK Characters in BMP of Unicode"
1591    '(long-name "Unicode-BMP-CJK"
1592                chars 256
1593                dimension 2
1594                columns 2
1595                graphic 2
1596                direction l2r
1597                registry "-zh-.*-ucs-0"
1598                mother =ucs@unicode
1599                min-code #x2E00
1600                max-code #x9FA5
1601                ;; max-code #xA4CF
1602                ))
1603   (make-charset
1604    '=ucs-bmp-cjk@JP
1605    "CJK Characters in BMP with JIS representative glyphs"
1606    '(long-name "CJK in BMP@JP"
1607                chars 256
1608                dimension 2
1609                columns 2
1610                graphic 2
1611                direction l2r
1612                registry "-ja-.*-ucs-0"
1613                mother =ucs@JP
1614                min-code #x2E00
1615                max-code #x9FA5
1616                ;; max-code #xA4CF
1617                ))
1618   (make-charset
1619    '=ucs-bmp-cjk@JP/hanazono
1620    "CJK Characters in BMP with Hanazono font"
1621    '(long-name "CJK in BMP@JP/Hanazono"
1622                chars 256
1623                dimension 2
1624                columns 2
1625                graphic 2
1626                direction l2r
1627                registry "-ja-.*-ucs-0"
1628                mother =ucs@JP/hanazono
1629                min-code #x2E00
1630                max-code #x9FA5
1631                ;; max-code #xA4CF
1632                ))
1633   (make-charset
1634    '==>ucs-bmp-cjk@bucs
1635    "CJK Characters in BMP of BUCS"
1636    '(long-name "BUCS-BMP-CJK"
1637                chars 256
1638                dimension 2
1639                columns 2
1640                graphic 2
1641                direction l2r
1642                registry "-zh-.*-ucs-0"
1643                mother ==>ucs@bucs
1644                min-code #x2E00
1645                max-code #x9FA5
1646                ;; max-code #xA4CF
1647                ))
1648   (make-charset
1649    '=ucs-sip-ext-b
1650    "CJK Ideographs Extension B"
1651    '(long-name "UCS CJK Ext-B"
1652                chars 256
1653                dimension 2
1654                columns 2
1655                graphic 2
1656                direction l2r
1657                registry "\\(iso10646\\|ucs02\\)-2$"
1658                mother ucs
1659                min-code #x20000 max-code #x2A6D6
1660                code-offset #x20000))
1661   (make-charset
1662    '=ucs-sip-ext-b@iso
1663    "CJK Ideographs Extension B (ISO/IEC 10646-2)"
1664    '(long-name "UCS CJK Ext-B"
1665                chars 256
1666                dimension 2
1667                columns 2
1668                graphic 2
1669                direction l2r
1670                registry "\\(iso10646\\|ucs02\\)-2$"
1671                mother =ucs@iso
1672                min-code #x20000 max-code #x2A6D6
1673                code-offset #x20000))
1674
1675   (make-charset
1676    '=adobe-japan1-base
1677    "Adobe-Japan1 Character Collection for CID-Keyed Fonts"
1678    `(long-name "Adobe-Japan1"
1679                chars 256
1680                dimension 2
1681                columns 2
1682                graphic 2
1683                direction l2r
1684                registry "AdobeJapan1-[0-6]$"
1685                min-code ,(lsh #x6300 16)
1686                max-code ,(+ (lsh #x6300 16) 23057)
1687                code-offset      ,(lsh #x6300 16)))
1688   (make-charset
1689    '=adobe-japan1-0
1690    "Adobe-Japan1-0 Character Collection for CID-Keyed Fonts"
1691    '(long-name "Adobe-Japan1-0"
1692                chars 256
1693                dimension 2
1694                columns 2
1695                graphic 2
1696                direction l2r
1697                mother =adobe-japan1-base
1698                min-code 0
1699                max-code 8283
1700                registry "AdobeJapan1-0$"))
1701   (make-charset
1702    '=adobe-japan1-1
1703    "Adobe-Japan1-1 Character Collection for CID-Keyed Fonts"
1704    '(long-name "Adobe-Japan1-1"
1705                chars 256
1706                dimension 2
1707                columns 2
1708                graphic 2
1709                direction l2r
1710                mother =adobe-japan1-0
1711                min-code 0
1712                max-code 8358
1713                registry "AdobeJapan1-1$"))
1714   (make-charset
1715    '=adobe-japan1-2
1716    "Adobe-Japan1-2 Character Collection for CID-Keyed Fonts"
1717    '(long-name "Adobe-Japan1-2"
1718                chars 256
1719                dimension 2
1720                columns 2
1721                graphic 2
1722                direction l2r
1723                mother =adobe-japan1-1
1724                min-code 0
1725                max-code 8719
1726                registry "AdobeJapan1-2$"))
1727   (make-charset
1728    '=adobe-japan1-3
1729    "Adobe-Japan1-3 Character Collection for CID-Keyed Fonts"
1730    '(long-name "Adobe-Japan1-3"
1731                chars 256
1732                dimension 2
1733                columns 2
1734                graphic 2
1735                direction l2r
1736                mother =adobe-japan1-2
1737                min-code 0
1738                max-code 9353
1739                registry "AdobeJapan1-3$"))
1740   (make-charset
1741    '=adobe-japan1-4
1742    "Adobe-Japan1-4 Character Collection for CID-Keyed Fonts"
1743    '(long-name "Adobe-Japan1-4"
1744                chars 256
1745                dimension 2
1746                columns 2
1747                graphic 2
1748                direction l2r
1749                mother =adobe-japan1-3
1750                min-code 0
1751                max-code 15443
1752                registry "AdobeJapan1-4$"))
1753   (make-charset
1754    '=adobe-japan1-5
1755    "Adobe-Japan1-5 Character Collection for CID-Keyed Fonts"
1756    '(long-name "Adobe-Japan1-5"
1757                chars 256
1758                dimension 2
1759                columns 2
1760                graphic 2
1761                direction l2r
1762                mother =adobe-japan1-4
1763                min-code 0
1764                max-code 20316
1765                registry "AdobeJapan1-5$"))
1766   (make-charset
1767    '=adobe-japan1-6
1768    "Adobe-Japan1-6 Character Collection for CID-Keyed Fonts"
1769    '(long-name "Adobe-Japan1-6"
1770                chars 256
1771                dimension 2
1772                columns 2
1773                graphic 2
1774                direction l2r
1775                mother =adobe-japan1-5
1776                min-code 0
1777                max-code 23057
1778                registry "AdobeJapan1-6$"))
1779   (make-charset
1780    '=>>adobe-japan1
1781    "Adobe-Japan1 abstract glyphs"
1782    '(long-name "Adobe-Japan1 abstract glyphs"
1783                chars 256
1784                dimension 2
1785                columns 2
1786                graphic 2
1787                direction l2r
1788                mother =adobe-japan1-6
1789                registry "AdobeJapan1-6$"))
1790
1791   (make-charset
1792    '=hanyo-denshi/ja
1793    "JA (JIS X0208) part of Han'you-Denshi characters"
1794    `(long-name "Han'you-Denshi/JA"
1795                chars 94
1796                dimension 2
1797                columns 2
1798                graphic 2
1799                direction l2r
1800                registry "HanyoDenshi\\.JA-0$"
1801                min-code ,(lsh #x6400 16)
1802                max-code ,(+ (lsh #x6400 16) (1- (* 94 94)))
1803                code-offset ,(lsh #x6400 16)))
1804   (make-charset
1805    '=hanyo-denshi/jb
1806    "JB (JIS X0212) part of Han'you-Denshi characters"
1807    `(long-name "Han'you-Denshi/JB"
1808                chars 94
1809                dimension 2
1810                columns 2
1811                graphic 2
1812                direction l2r
1813                registry "HanyoDenshi\\.JB-0$"
1814                min-code    ,(+ (lsh #x6400 16) (* 94 94))
1815                max-code    ,(+ (lsh #x6400 16) (1- (* 94 94 2)))
1816                code-offset ,(+ (lsh #x6400 16) (* 94 94))))
1817   (make-charset
1818    '=hanyo-denshi/jc
1819    "JC (JIS X0213:2000 Plane 1) part of Han'you-Denshi characters"
1820    `(long-name "Han'you-Denshi/JC"
1821                chars 94
1822                dimension 2
1823                columns 2
1824                graphic 2
1825                direction l2r
1826                registry "HanyoDenshi\\.JC-0$"
1827                min-code    ,(+ (lsh #x6400 16) (* 94 94 2))
1828                max-code    ,(+ (lsh #x6400 16) (1- (* 94 94 3)))
1829                code-offset ,(+ (lsh #x6400 16) (* 94 94 2))))
1830   (make-charset
1831    '=hanyo-denshi/jd
1832    "JD (JIS X0213:2000 Plane 1) part of Han'you-Denshi characters"
1833    `(long-name "Han'you-Denshi/JD"
1834                chars 94
1835                dimension 2
1836                columns 2
1837                graphic 2
1838                direction l2r
1839                registry "HanyoDenshi\\.JD-0$"
1840                min-code    ,(+ (lsh #x6400 16) (* 94 94 3))
1841                max-code    ,(+ (lsh #x6400 16) (1- (* 94 94 4)))
1842                code-offset ,(+ (lsh #x6400 16) (* 94 94 3))))
1843   (make-charset
1844    '=hanyo-denshi/ft
1845    "FT (FDPC additional) part of Han'you-Denshi characters"
1846    `(long-name "Han'you-Denshi/FT"
1847                chars 94
1848                dimension 2
1849                columns 2
1850                graphic 2
1851                direction l2r
1852                registry "HanyoDenshi\\.FT-0$"
1853                min-code    ,(+ (lsh #x6400 16) (* 94 94 4))
1854                max-code    ,(+ (lsh #x6400 16) (1- (* 94 94 5)))
1855                code-offset ,(+ (lsh #x6400 16) (* 94 94 4))))
1856   (make-charset
1857    '=hanyo-denshi/ia
1858    "IA part of Han'you-Denshi characters"
1859    `(long-name "Han'you-Denshi/IA"
1860                chars 94
1861                dimension 2
1862                columns 2
1863                graphic 2
1864                direction l2r
1865                registry "HanyoDenshi\\.IA-0$"
1866                min-code    ,(+ (lsh #x6400 16) (* 94 94 5))
1867                max-code    ,(+ (lsh #x6400 16) (1- (* 94 94 6)))
1868                code-offset ,(+ (lsh #x6400 16) (* 94 94 5))))
1869   (make-charset
1870    '=hanyo-denshi/ib
1871    "IB part of Han'you-Denshi characters"
1872    `(long-name "Han'you-Denshi/IB"
1873                chars 94
1874                dimension 2
1875                columns 2
1876                graphic 2
1877                direction l2r
1878                registry "HanyoDenshi\\.IB-0$"
1879                min-code    ,(+ (lsh #x6400 16) (* 94 94 6))
1880                max-code    ,(+ (lsh #x6400 16) (1- (* 94 94 7)))
1881                code-offset ,(+ (lsh #x6400 16) (* 94 94 6))))
1882   (make-charset
1883    '=hanyo-denshi/hg
1884    "HG (HyouGai Kanji) part of Han'you-Denshi characters"
1885    `(long-name "Han'you-Denshi/HG"
1886                chars 94
1887                dimension 2
1888                columns 2
1889                graphic 2
1890                direction l2r
1891                registry "HanyoDenshi\\.HG-0$"
1892                min-code    ,(+ (lsh #x6400 16) (* 94 94 7))
1893                max-code    ,(+ (lsh #x6400 16) (1- (* 94 94 8)))
1894                code-offset ,(+ (lsh #x6400 16) (* 94 94 7))))
1895   (make-charset
1896    '=hanyo-denshi/ip
1897    "IP (for IPA) part of Han'you-Denshi characters"
1898    `(long-name "Han'you-Denshi/IP"
1899                chars 256
1900                dimension 2
1901                columns 2
1902                graphic 2
1903                direction l2r
1904                registry "HanyoDenshi\\.IP-0$"
1905                min-code    ,(+ (lsh #x6402 16) #x4E00)
1906                max-code    ,(+ (lsh #x6402 16) #x9FFF)
1907                code-offset ,(+ (lsh #x6402 16))))
1908   (make-charset
1909    '=hanyo-denshi/jt
1910    "JT (Juuki Touitsu Moji) part of Han'you-Denshi characters"
1911    `(long-name "Han'you-Denshi/JT"
1912                chars 256
1913                dimension 2
1914                columns 2
1915                graphic 2
1916                direction l2r
1917                registry "HanyoDenshi\\.JT-0$"
1918                min-code    ,(+ (lsh #x6402 16) #xAC00)
1919                max-code    ,(+ (lsh #x6402 16) #xD7AF)
1920                code-offset ,(+ (lsh #x6402 16))))
1921   (make-charset
1922    '=hanyo-denshi/ks
1923    "KS (KoSeki) part of Han'you-Denshi characters"
1924    `(long-name "Han'you-Denshi/KS font encoding"
1925                chars 256
1926                dimension 3
1927                columns 2
1928                graphic 2
1929                direction l2r))
1930   (make-charset
1931    '=hanyo-denshi/ks/mf
1932    "font encoding for KS (KoSeki) characters"
1933    `(long-name "Han'you-Denshi/KS font encoding"
1934                chars 256
1935                dimension 2
1936                columns 2
1937                graphic 2
1938                direction l2r
1939                registry "HanyoDenshi\\.KSMF-0$"
1940                min-code       ,(lsh #x6403 16)
1941                max-code    ,(+ (lsh #x6403 16) #xFFFF)
1942                code-offset    ,(lsh #x6403 16)))
1943
1944   (make-charset
1945    '=>>>hanyo-denshi/jt
1946    "JT (Juuki Touitsu Moji) abstract glyph-forms"
1947    '(long-name "Han'you-Denshi/JT glyph-forms"
1948                chars 256
1949                dimension 2
1950                columns 2
1951                graphic 2
1952                direction l2r
1953                registry "HanyoDenshi\\.JT-0$"
1954                mother =hanyo-denshi/jt))
1955
1956   (make-charset
1957    '=>>hanyo-denshi/jb
1958    "Han'you-Denshi/JB abstract glyphs"
1959    '(long-name "Han'you-Denshi/JB glyphs"
1960                chars 94
1961                dimension 2
1962                columns 2
1963                graphic 2
1964                direction l2r
1965                registry "HanyoDenshi\\.JB-0$"
1966                mother =hanyo-denshi/jb))
1967   (make-charset
1968    '=>>hanyo-denshi/jc
1969    "Han'you-Denshi/JC abstract glyphs"
1970    '(long-name "Han'you-Denshi/JC glyphs"
1971                chars 94
1972                dimension 2
1973                columns 2
1974                graphic 2
1975                direction l2r
1976                registry "HanyoDenshi\\.JC-0$"
1977                mother =hanyo-denshi/jc))
1978   (make-charset
1979    '=>>hanyo-denshi/jd
1980    "Han'you-Denshi/JD abstract glyphs"
1981    '(long-name "Han'you-Denshi/JD glyphs"
1982                chars 94
1983                dimension 2
1984                columns 2
1985                graphic 2
1986                direction l2r
1987                registry "HanyoDenshi\\.JD-0$"
1988                mother =hanyo-denshi/jd))
1989   (make-charset
1990    '=>>hanyo-denshi/ft
1991    "Han'you-Denshi/FT abstract glyphs"
1992    '(long-name "Han'you-Denshi/FT glyphs"
1993                chars 94
1994                dimension 2
1995                columns 2
1996                graphic 2
1997                direction l2r
1998                registry "HanyoDenshi\\.FT-0$"
1999                mother =hanyo-denshi/ft))
2000   (make-charset
2001    '=>>hanyo-denshi/ia
2002    "Han'you-Denshi/IA abstract glyphs"
2003    '(long-name "Han'you-Denshi/IA glyphs"
2004                chars 94
2005                dimension 2
2006                columns 2
2007                graphic 2
2008                direction l2r
2009                registry "HanyoDenshi\\.IA-0$"
2010                mother =hanyo-denshi/ia))
2011   (make-charset
2012    '=>>hanyo-denshi/ib
2013    "Han'you-Denshi/IB abstract glyphs"
2014    '(long-name "Han'you-Denshi/IB abstract glyphs"
2015                chars 94
2016                dimension 2
2017                columns 2
2018                graphic 2
2019                direction l2r
2020                registry "HanyoDenshi\\.IB-0$"
2021                mother =hanyo-denshi/ib))
2022   (make-charset
2023    '=>>hanyo-denshi/hg
2024    "Han'you-Denshi/HG abstract glyphs"
2025    '(long-name "Han'you-Denshi/HG abstract glyphs"
2026                chars 94
2027                dimension 2
2028                columns 2
2029                graphic 2
2030                direction l2r
2031                registry "HanyoDenshi\\.HG-0$"
2032                mother =hanyo-denshi/hg))
2033   (make-charset
2034    '=>>hanyo-denshi/jt
2035    "JT (Juuki Touitsu Moji) abstract glyphs"
2036    '(long-name "Han'you-Denshi/JT glyphs"
2037                chars 256
2038                dimension 2
2039                columns 2
2040                graphic 2
2041                direction l2r
2042                registry "HanyoDenshi\\.JT-0$"
2043                mother =>>>hanyo-denshi/jt))
2044   (make-charset
2045    '=>>hanyo-denshi/ks
2046    "Han'you-Denshi/KS abstract glyphs"
2047    '(long-name "Han'you-Denshi/KS glyphs"
2048                chars 256
2049                dimension 3
2050                columns 2
2051                graphic 2
2052                direction l2r
2053                mother =hanyo-denshi/ks))
2054   )
2055
2056 ;;; mule-conf.el ends here