(=>zinbun-oracle): New abstract coded-charset for XEmacs CHISE.
[chise/xemacs-chise.git.1] / 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 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/4-pr
87    "JIS X 0208:1978, 4th 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   (define-charset-alias '=jis-x0208@1978/i1 '=jis-x0208@1978/1pr)
97   (define-charset-alias '=jis-x0208@1978/i-4 '=jis-x0208@1978/-4pr)
98   (define-charset-alias '=jis-x0208@1978/i4- '=jis-x0208@1978/4-pr)
99   )
100  (t
101   (make-charset
102    '=jis-x0208@1978
103    "JIS X0208:1978 Japanese Kanji (so called \"old JIS\")."
104    '(iso-ir 42
105             registry "jisx0208\\.1978"
106             dimension 2
107             chars 94
108             mother =jis-x0208
109             final ?@
110             graphic 0))
111   ))
112
113 (define-charset-alias '=jis-x0208-1978          '=jis-x0208@1978)
114 (define-charset-alias 'japanese-jisx0208-1978   '=jis-x0208@1978)
115 (define-charset-alias 'chinese-gb2312           '=gb2312)
116 (define-charset-alias '=jis-x0208-1983          '=jis-x0208@1983)
117 (define-charset-alias 'japanese-jisx0208        '=jis-x0208@1983)
118 (define-charset-alias 'korean-ksc5601           '=ks-x1001)
119 (define-charset-alias 'japanese-jisx0212        '=jis-x0212)
120 (define-charset-alias 'chinese-cns11643-1       '=cns11643-1)
121 (define-charset-alias 'chinese-cns11643-2       '=cns11643-2)
122 (define-charset-alias 'chinese-gb12345          '=gb12345)
123 (define-charset-alias 'chinese-big5             '=big5)
124
125 ;; PinYin-ZhuYin
126 (make-charset 'sisheng "PinYin-ZhuYin"
127               '(registry "sisheng_cwnn\\|OMRON_UDC_ZH"
128                 dimension 1
129                 chars 94
130                 final ?0
131                 graphic 0
132                 ))
133
134 ;; Lao script.
135 ;; ISO10646's 0x0E80..0x0EDF are mapped to 0x20..0x7F.
136 (make-charset 'lao "Lao script"
137               '(registry "MuleLao-1"
138                 dimension 1
139                 chars 94
140                 final ?1
141                 graphic 1))
142
143 ;; IPA (International Phonetic Alphabet)
144 (make-charset 'ipa "International Phonetic Alphabet"
145               '(registry "MuleIPA"
146                 dimension 1
147                 chars 96
148                 final ?0
149                 graphic 1))
150
151 ;; Ethiopic
152 (make-charset 'ethiopic "Ethiopic"
153               '(registry "Ethio"
154                 dimension 2
155                 chars 94
156                 final ?3
157                 graphic 0
158                 ))
159
160 ;; ISO-IR-165 (CCITT Extended GB)
161 ;;    It is based on CCITT Recommendation T.101, includes GB 2312-80 +
162 ;;    GB 8565-88 table A4 + 293 characters.
163 (if (featurep 'utf-2000)
164     (progn
165       (make-charset '=iso-ir165
166                     "ISO-IR-165 (CCITT Extended GB; Chinese simplified)"
167                     '(iso-ir 165
168                              dimension 2
169                              chars 94
170                              mother =gb2312
171                              final ?E
172                              registry "isoir165"
173                              graphic 0))
174       (define-charset-alias 'chinese-isoir165 '=iso-ir165))
175   (make-charset 'chinese-isoir165
176                 "ISO-IR-165 (CCITT Extended GB; Chinese simplified)"
177                 '(iso-ir 165
178                          dimension 2
179                          chars 94
180                          final ?E
181                          registry "isoir165"
182                          graphic 0)))
183
184 ;; CNS11643 Plane3 thru Plane7
185 ;; These represent more and more obscure Chinese characters.
186 ;; By the time you get to Plane 7, we're talking about characters
187 ;; that appear once in some ancient manuscript and whose meaning
188 ;; is unknown.
189
190 (flet
191     ((make-chinese-cns11643-charset
192       (name iso-ir plane final)
193       (make-charset
194        name (concat "CNS 11643 Plane " plane " (Chinese traditional)")
195        `(iso-ir ,iso-ir
196          registry 
197          ,(concat "CNS11643[.-]\\(.*[.-]\\)?" plane "$")
198          dimension 2
199          chars 94
200          final ,final
201          graphic 0))
202       ))
203   (make-chinese-cns11643-charset '=cns11643-3 183 "3" ?I)
204   (make-chinese-cns11643-charset '=cns11643-4 184 "4" ?J)
205   (make-chinese-cns11643-charset '=cns11643-5 185 "5" ?K)
206   (make-chinese-cns11643-charset '=cns11643-6 186 "6" ?L)
207   (make-chinese-cns11643-charset '=cns11643-7 187 "7" ?M)
208   (define-charset-alias 'chinese-cns11643-3     '=cns11643-3)
209   (define-charset-alias 'chinese-cns11643-4     '=cns11643-4)
210   (define-charset-alias 'chinese-cns11643-5     '=cns11643-5)
211   (define-charset-alias 'chinese-cns11643-6     '=cns11643-6)
212   (define-charset-alias 'chinese-cns11643-7     '=cns11643-7)
213   )
214
215 ;; JIS X 0213:2000
216 (cond
217  ((featurep 'utf-2000)
218   (make-charset
219    '=jis-x0213-1
220    "JIS X 0213 Plain 1 (unchanged part)"
221    '(registry "jisx0213\\(\\.[0-9]+\\)?-1"
222               dimension 2
223               chars 94
224               =>iso-ir 228
225               final ?O
226               graphic 0
227               partial t))
228
229   (make-charset
230    '=jis-x0213-1@2000
231    "JIS X 0213:2000 Plain 1"
232    '(iso-ir 228
233             registry "jisx0213\\(\\.2000\\)-1"
234             dimension 2
235             chars 94
236             mother =jis-x0213-1
237             final ?O
238             graphic 0))
239   (make-charset
240    '=jis-x0213-2
241    "JIS X 0213 Plain 2"
242    '(iso-ir 229
243             registry "jisx0213\\(\\.\\(2000\\|2004\\)\\)?-2"
244             dimension 2
245             chars 94
246             final ?P
247             graphic 0))
248
249   (make-charset
250    '=jis-x0213-1@2004
251    "JIS X 0213:2004 Plain 1"
252    '(iso-ir 233
253             registry "jisx0213\\(\\.2004\\)-1"
254             dimension 2
255             chars 94
256             mother =jis-x0213-1
257             final ?Q
258             graphic 0))
259
260   (define-charset-alias 'japanese-jisx0213-1 '=jis-x0213-1@2000)
261   (define-charset-alias 'japanese-jisx0213-2 '=jis-x0213-2)
262   (define-charset-alias '=jis-x0213-1-2000 '=jis-x0213-1@2000)
263   (define-charset-alias '=jis-x0213-2-2000 '=jis-x0213-2)
264   )
265  (t
266   (make-charset
267    'japanese-jisx0213-1
268    "JIS X 0213:2000 Plain 1"
269    '(registry "jisx0213\\(\\.2000\\)-1"
270               dimension 2
271               chars 94
272               final ?O
273               graphic 0))
274   (make-charset
275    'japanese-jisx0213-2
276    "JIS X 0213:2000 Plain 2"
277    '(registry "jisx0213\\(\\.2000\\)-2"
278               dimension 2
279               chars 94
280               final ?P
281               graphic 0))
282   ))
283
284 (when (featurep 'utf-2000)
285   (define-charset-alias 'ucs '=ucs)
286   (define-charset-alias '=jis-x0208-1990 '=jis-x0208@1990)
287   (define-charset-alias 'japanese-jisx0208-1990 '=jis-x0208@1990)
288
289   (make-charset
290    '=>>jis-x0208
291    "JIS X 0208 abstract glyphs (unchanged part)."
292    '(registry "jisx0208\\.1990"
293               dimension 2
294               chars 94
295               mother =jis-x0208
296               =>iso-ir 168
297               ;; final ?B
298               graphic 0))
299   (make-charset
300    '=>>jis-x0208@1978
301    "JIS X 0208:1978 abstract glyphs (unchanged part)."
302    '(registry "jisx0208\\.1978"
303               dimension 2
304               chars 94
305               mother =>>jis-x0208
306               =>iso-ir 42
307               ;; final ?@
308               graphic 0))
309
310   (make-charset
311    '=>>jis-x0213-1
312    "JIS X 0213 Plain 1 abstract glyphs (unchanged part)"
313    '(registry "jisx0213\\(\\.[0-9]+\\)?-1"
314               dimension 2
315               chars 94
316               mother =jis-x0213-1
317               =>iso-ir 228
318               ;; final ?O
319               graphic 0
320               ;; partial t
321               ))
322   (make-charset
323    '=>>jis-x0213-1@2000
324    "JIS X 0213:2000 Plain 1 abstract glyphs"
325    '(registry "jisx0213\\(\\.2000\\)-1"
326               dimension 2
327               chars 94
328               mother =>>jis-x0213-1
329               =>iso-ir 228
330               ;; final ?O
331               graphic 0
332               ;; partial t
333               ))
334   (make-charset
335    '=>>jis-x0213-2
336    "JIS X 0213 Plain 2 abstract glyphs"
337    '(registry "jisx0213\\(\\.\\(2000\\|2004\\)\\)?-2"
338               dimension 2
339               chars 94
340               mother =jis-x0213-2
341               =>iso-ir 229
342               ;; final ?P
343               graphic 0))
344   (make-charset
345    '=>>jis-x0213-1@2004
346    "JIS X 0213:2004 Plain 1 abstract glyphs"
347    '(registry "jisx0213\\(\\.2004\\)-1"
348               dimension 2
349               chars 94
350               mother =>>jis-x0213-1
351               =>iso-ir 233
352               ;; final ?Q
353               graphic 0
354               ;; partial t
355               ))
356
357   (make-charset
358    '=>jis-x0208
359    "JIS X 0208 based on the unchanged unification rules."
360    '(registry "jisx0208\\.1990"
361               dimension 2
362               chars 94
363               mother =>>jis-x0208
364               =>iso-ir 168
365               ;; final ?B
366               graphic 0))
367   (define-charset-alias '<=>jis-x0208 '=>jis-x0208)
368   (make-charset
369    '=>jis-x0208@1997
370    "JIS X 0208 based on the unification rule of 1997 edition."
371    '(registry "jisx0208\\.1990"
372               dimension 2
373               chars 94
374               mother =>jis-x0208
375               =>iso-ir 168
376               ;; final ?B
377               graphic 0))
378   (define-charset-alias '<=>jis-x0208@1997 '=>jis-x0208@1997)
379   (define-charset-alias '  =jis-x0208@1997 '=>jis-x0208@1997)
380
381   (make-charset
382    '=>jis-x0213-1
383    "JIS X 0213 Plain 1 abstract characters (unchanged part)"
384    '(registry "jisx0213\\(\\.[0-9]+\\)?-1"
385               dimension 2
386               chars 94
387               mother =>>jis-x0213-1
388               =>iso-ir 228
389               ;; final ?O
390               graphic 0
391               ;; partial t
392               ))
393   (define-charset-alias '<=>jis-x0213-1 '=>jis-x0213-1)
394   (make-charset
395    '=>jis-x0213-1@2000
396    "JIS X 0213:2000 Plain 1 abstract characters"
397    '(registry "jisx0213\\(\\.2000\\)-1"
398               dimension 2
399               chars 94
400               mother =>jis-x0213-1
401               =>iso-ir 228
402               ;; final ?O
403               graphic 0
404               ;; partial t
405               ))
406   (define-charset-alias '<=>jis-x0213-1@2000 '=>jis-x0213-1@2000)
407   (make-charset
408    '=>jis-x0213-1@2004
409    "JIS X 0213:2004 Plain 1 abstract characters"
410    '(registry "jisx0213\\(\\.2004\\)-1"
411               dimension 2
412               chars 94
413               mother =>jis-x0213-1
414               =>iso-ir 233
415               ;; final ?Q
416               graphic 0
417               ;; partial t
418               ))
419   (define-charset-alias '<=>jis-x0213-1@2004 '=>jis-x0213-1@2004)
420   (make-charset
421    '=>jis-x0213-2
422    "JIS X 0213 Plain 2 abstract characters"
423    '(registry "jisx0213\\(\\.\\(2000\\|2004\\)\\)?-2"
424               dimension 2
425               chars 94
426               mother =>>jis-x0213-2
427               =>iso-ir 229
428               ;; final ?P
429               graphic 0))
430
431   (make-charset '=big5-cdp
432                 "Big5 with CDP extension"
433                 '(long-name     "Big5-CDP"
434                   chars         256
435                   dimension     2
436                   columns       2
437                   graphic       2
438                   direction     l2r
439                   registry      "big5\\.cdp-0"
440                   mother        chinese-big5
441                   min-code      #x8140
442                   max-code      #x8DFE))
443   (define-charset-alias 'chinese-big5-cdp '=big5-cdp)
444
445   (make-charset '=gt
446                 "GT 2000"
447                 `(long-name     "GT"
448                   chars         256
449                   dimension     3
450                   columns       2
451                   graphic       2
452                   direction     l2r
453                   registry      ""
454                   min-code      ,(lsh #x6100 16)
455                   max-code      ,(+ (lsh #x6100 16) 67547)
456                   code-offset   ,(lsh #x6100 16)))
457   (define-charset-alias 'ideograph-gt '=gt)
458   (make-charset '=>>gt
459                 "GT 2000 abstract glyphs"
460                 `(long-name     "abstract GT"
461                   chars         256
462                   dimension     3
463                   columns       2
464                   graphic       2
465                   direction     l2r
466                   mother        =gt))
467   (define-charset-alias '<=>gt '=>>gt)
468   (define-charset-alias '<==>gt '=>>gt)
469   (make-charset '=gt-k
470                 "Ideographic components of GT"
471                 `(long-name     "GT components"
472                   chars         256
473                   dimension     2
474                   columns       2
475                   graphic       2
476                   direction     l2r
477                   registry      ""
478                   min-code      ,(lsh #x6110 16)
479                   max-code      ,(+ (lsh #x6110 16) 17090)
480                   code-offset   ,(lsh #x6110 16)))
481   (define-charset-alias 'ideograph-gt-k '=gt-k)
482   (let ((i 1))
483     (while (<= i 11)
484       (make-charset
485        (intern (format "=gt-pj-%d" i))
486        (format "GT 2000 (pseudo JIS encoding) part %d" i)
487        `(long-name ,(format "GT PJ %d" i)
488                    chars 94
489                    dimension 2
490                    columns 2
491                    graphic 0
492                    direction l2r
493                    registry ,(format "\\(GTpj-%d\\|jisx0208\\.GT-%d\\)$" i i)))
494       (define-charset-alias
495         (intern (format "ideograph-gt-pj-%d" i))
496         (intern (format "=gt-pj-%d" i)))
497       (setq i (1+ i))))
498   (make-charset
499    '=gt-pj-k1
500    "Ideographic parts of GT (pseudo JIS encoding) part 1"
501    '(long-name "GT K1"
502                chars 94
503                dimension 2
504                columns 2
505                graphic 0
506                direction l2r
507                registry "\\(GTKpj-1\\|jisx0208\\.GTK-1\\)$"))
508   (define-charset-alias 'ideograph-gt-pj-k1 '=gt-pj-k1)
509   (make-charset
510    '=gt-pj-k2
511    "Ideographic parts of GT (pseudo JIS encoding) part 2"
512    '(long-name "GT K2"
513                chars 94
514                dimension 2
515                columns 2
516                graphic 0
517                direction l2r
518                registry "\\(GTKpj-2\\|jisx0208\\.GTK-2\\)$"))
519   (define-charset-alias 'ideograph-gt-pj-k2 '=gt-pj-k2)
520
521   (make-charset '=daikanwa
522                 "Daikanwa dictionary (revised version 2)"
523                 `(long-name     "Daikanwa"
524                   chars         256
525                   dimension     2
526                   columns       2
527                   graphic       2
528                   direction     l2r
529                   registry      "Daikanwa\\(\\.[0-9]+\\)?-3"
530                   min-code      #xE00000
531                   max-code      ,(+ #xE00000 50100)
532                   code-offset   #xE00000))
533   (define-charset-alias 'ideograph-daikanwa '=daikanwa)
534
535   (make-charset '=daikanwa@rev1
536                 "Daikanwa dictionary (revised version)"
537                 `(long-name     "Daikanwa Rev."
538                   chars         256
539                   dimension     2
540                   columns       2
541                   graphic       2
542                   direction     l2r
543                   registry      "Daikanwa\\(\\.[0-9]+\\)?-2"
544                   mother        =daikanwa
545                   ))
546   (define-charset-alias 'ideograph-daikanwa-2 '=daikanwa@rev1)
547   (define-charset-alias '=daikanwa-rev1 '=daikanwa@rev1)
548
549   (make-charset '=daikanwa@rev2
550                 "Daikanwa dictionary (revised version 2)"
551                 `(long-name     "Daikanwa"
552                   chars         256
553                   dimension     2
554                   columns       2
555                   graphic       2
556                   direction     l2r
557                   registry      "Daikanwa\\(\\.[0-9]+\\)?-3"
558                   mother        =daikanwa
559                   min-code      1
560                   max-code      49964
561                   ;; min-code   #xE00000
562                   ;; max-code   ,(+ #xE00000 50100)
563                   ;; code-offset        #xE00000
564                   ))
565   (define-charset-alias '=daikanwa-rev2 '=daikanwa@rev2)
566
567   (make-charset '=shinjigen
568                 "Kadokawa ShinJigen dictionary (common parts)"
569                 `(long-name     "Shinjigen common parts"
570                   chars         256
571                   dimension     2
572                   columns       2
573                   graphic       2
574                   direction     l2r
575                   registry      "Shinjigen\\(\\.[0-9]+\\)?-*"))
576
577   (make-charset '=shinjigen@1ed
578                 "Kadokawa ShinJigen dictionary (the first edition)"
579                 `(long-name     "Shinjigen-1"
580                   chars         256
581                   dimension     2
582                   columns       2
583                   graphic       2
584                   direction     l2r
585                   mother        =shinjigen
586                   registry      "Shinjigen\\(\\.[0-9]+\\)?-1"))
587   (define-charset-alias 'shinjigen-1 '=shinjigen@1ed)
588
589   (make-charset '=shinjigen@1ed/24pr
590                 "Kadokawa ShinJigen dictionary (the 24th impression)"
591                 `(long-name     "Shinjigen-1 24pr"
592                   chars         256
593                   dimension     2
594                   columns       2
595                   graphic       2
596                   direction     l2r
597                   mother        =shinjigen@1ed))
598
599   (make-charset '=shinjigen@rev
600                 "Kadokawa ShinJigen dictionary (the revised edition)"
601                 `(long-name     "Shinjigen-2"
602                   chars         256
603                   dimension     2
604                   columns       2
605                   graphic       2
606                   direction     l2r
607                   mother        =shinjigen
608                   registry      "Shinjigen\\(\\.[0-9]+\\)?-2"))
609   (define-charset-alias 'shinjigen-2 '=shinjigen@rev)
610   (make-charset '=shinjigen/+p@rev
611                 "ShinJigen (the second edition) number with '"
612                 `(long-name     "Shinjigen-2 with '"
613                   chars         256
614                   dimension     2
615                   columns       2
616                   graphic       2
617                   direction     l2r))
618   (define-charset-alias 'shinjigen-2-p '=shinjigen/+p@rev)
619
620   (make-charset '=big5-pua
621                 "Big5 with private used area"
622                 '(long-name     "Big5-PUA"
623                   chars         256
624                   dimension     2
625                   columns       2
626                   graphic       2
627                   direction     l2r
628                   mother        chinese-big5
629                   registry      "Big5\\.ETEN"))
630   (define-charset-alias 'chinese-big5-pua '=big5-pua)
631   (make-charset '=big5-eten
632                 "Big5 ETEN"
633                 '(long-name     "Big5-ETEN"
634                   chars         256
635                   dimension     2
636                   columns       2
637                   graphic       2
638                   direction     l2r
639                   mother        chinese-big5
640                   min-code      #x8140
641                   max-code      #xFEFE
642                   registry      "Big5\\.ETEN"))
643   (define-charset-alias 'chinese-big5-eten '=big5-eten)
644   (make-charset 'chinese-big5-eten-a
645                 "Big5 ETEN (#xF9D6 .. #xF9FE)"
646                 '(long-name     "Big5-ETEN-a"
647                   chars         256
648                   dimension     2
649                   columns       2
650                   graphic       2
651                   direction     l2r
652                   mother        chinese-big5
653                   min-code      #xF9D6
654                   max-code      #xF9FE
655                   registry      "Big5\\.ETEN"))
656   (make-charset 'chinese-big5-eten-b
657                 "Big5 ETEN (#xC6A1 .. #xC8FE)"
658                 '(long-name     "Big5-ETEN-b"
659                   chars         256
660                   dimension     2
661                   columns       2
662                   graphic       2
663                   direction     l2r
664                   mother        chinese-big5
665                   min-code      #xC6A1
666                   max-code      #xC8FE
667                   registry      "Big5\\.ETEN"))
668
669   (let* ((i 1)
670          (hzk-min (+ (lsh #x6200 16) 65536))
671          (hzk-max (+ hzk-min 65535)))
672     (while (<= i 12)
673       (make-charset
674        (intern (format "=hanziku-%d" i))
675        (format "HANZIKU (pseudo BIG5 encoding) part %d" i)
676        `(long-name ,(format "HANZIKU-%d" i)
677                    chars 256
678                    dimension 2
679                    columns 2
680                    graphic 2
681                    direction l2r
682                    registry ,(format "hanziku-%d$" i i)
683                    min-code ,hzk-min
684                    max-code ,hzk-max
685                    code-offset ,hzk-min))
686       (define-charset-alias
687         (intern (format "ideograph-hanziku-%d" i))
688         (intern (format "=hanziku-%d" i)))
689       (setq hzk-min (1+ hzk-max)
690             hzk-max (+ hzk-min 65535))
691       (setq i (1+ i))))
692
693   (make-charset '=cbeta "CBETA private characters"
694                 '(long-name     "CBETA PUA"
695                   chars         256
696                   dimension     2
697                   registry      "cbeta-0"
698                   graphic       2
699                   min-code      #xE20000
700                   max-code      #xE2FFFF
701                   code-offset   #xE20000
702                   columns       2
703                   direction     l2r))
704   (define-charset-alias 'ideograph-cbeta '=cbeta)
705
706   (make-charset '=zinbun-oracle
707                 "Oracle Bones Script"
708                 `(long-name     "Oracle Bones Script in Zinbun, Kyoto Univ."
709                   chars         256
710                   dimension     2
711                   registry      "zob1968-0"
712                   graphic       2
713                   min-code      #xE70000
714                   max-code      ,(+ #xE70000 8192)
715                   code-offset   #xE70000
716                   columns       2
717                   direction     l2r))
718
719   (make-charset '=>zinbun-oracle
720                 "Abstract Oracle Bones"
721                 '(long-name     "Abstract characters of Zinbun Oracle Bones."
722                   chars         256
723                   dimension     2
724                   mother        =zinbun-oracle
725                   registry      "zob1968-0"
726                   graphic       2
727                   columns       2
728                   direction     l2r))
729
730   (make-charset '=jef-china3
731                 "JEF + CHINA3 private characters"
732                 '(long-name     "JEF + CHINA3"
733                   chars         256
734                   dimension     2
735                   columns       2
736                   graphic       2
737                   direction     l2r
738                   registry      "china3jef-0"
739                   min-code      #xE80000
740                   max-code      #xE8FFFF
741                   code-offset   #xE80000))
742   (define-charset-alias 'china3-jef '=jef-china3)
743
744   (make-charset '=ruimoku-v6
745                 "private characters used in RUIMOKU Version.6"
746                 `(long-name     "RUI6"
747                   chars         256
748                   dimension     2
749                   columns       2
750                   graphic       2
751                   direction     l2r
752                   registry      "rui6-0"
753                   ;; mother     ucs
754                   min-code      #xE90000 ; #xE000
755                   max-code      #xE908FF ; #xE8FF
756                   code-offset   ,(- #xE90000 #xE000)))
757
758   (make-charset '=ucs@iso
759                 "ISO/IEC 10646 for its representative glyphs"
760                 '(long-name     "UCS for ISO"
761                   chars         256
762                   dimension     3
763                   columns       2
764                   graphic       2
765                   direction     l2r
766                   =>iso-ir      177
767                   mother        =ucs))
768   (make-charset '=ucs@unicode
769                 "Unicode for its representative glyphs"
770                 '(long-name     "UCS for Unicode"
771                   chars         256
772                   dimension     3
773                   columns       2
774                   graphic       2
775                   direction     l2r
776                   =>iso-ir      177
777                   mother        =ucs@iso))
778   (make-charset '=ucs@gb
779                 "ISO/IEC 10646 for GB"
780                 '(long-name     "UCS for GB"
781                   chars         256
782                   dimension     3
783                   columns       2
784                   graphic       2
785                   direction     l2r
786                   =>iso-ir      177
787                   mother        =ucs@unicode))
788   (define-charset-alias 'ucs-gb '=ucs@gb)
789   (make-charset '=ucs@gb/fw
790                 "ISO/IEC 10646 for GB with fullwidth"
791                 '(long-name     "UCS for GB-fullwidth"
792                   chars         256
793                   dimension     3
794                   columns       2
795                   graphic       2
796                   direction     l2r
797                   =>iso-ir      177
798                   mother        =ucs@gb))
799   (make-charset '=ucs-bmp@gb
800                 "ISO/IEC 10646 BMP for GB"
801                 '(long-name     "BMP for GB"
802                   chars         256
803                   dimension     3
804                   columns       2
805                   graphic       2
806                   direction     l2r
807                   mother        =ucs@gb
808                   min-code      #x0000
809                   max-code      #xFFFF))
810   (make-charset '=ucs@cns
811                 "ISO/IEC 10646 for CNS 11643"
812                 '(long-name     "UCS for CNS"
813                   chars         256
814                   dimension     3
815                   columns       2
816                   graphic       2
817                   direction     l2r
818                   =>iso-ir      177
819                   mother        =ucs@unicode))
820   (define-charset-alias 'ucs-cns '=ucs@cns)
821   (make-charset '=ucs@cns/fw
822                 "ISO/IEC 10646 for CNS 11643 with fullwidth"
823                 '(long-name     "UCS for CNS-fullwidth"
824                   chars         256
825                   dimension     3
826                   columns       2
827                   graphic       2
828                   direction     l2r
829                   =>iso-ir      177
830                   mother        =ucs@cns))
831   (make-charset '=ucs-bmp@cns
832                 "ISO/IEC 10646 BMP for CNS"
833                 '(long-name     "BMP for CNS"
834                   chars         256
835                   dimension     3
836                   columns       2
837                   graphic       2
838                   direction     l2r
839                   mother        =ucs@cns
840                   min-code      #x0000
841                   max-code      #xFFFF))
842   (make-charset '=ucs@jis
843                 "ISO/IEC 10646 for JIS X0208/0212/0213"
844                 '(long-name     "UCS for JIS"
845                   chars         256
846                   dimension     3
847                   columns       2
848                   graphic       2
849                   direction     l2r
850                   =>iso-ir      177
851                   mother        =ucs@unicode))
852   (define-charset-alias 'ucs-jis '=ucs@jis)
853   (make-charset '=ucs@jis/fw
854                 "ISO/IEC 10646 for JIS X0208/0212/0213 with fullwidth"
855                 '(long-name     "UCS for JIS-fullwidth"
856                   chars         256
857                   dimension     3
858                   columns       2
859                   graphic       2
860                   direction     l2r
861                   =>iso-ir      177
862                   mother        =ucs@jis))
863   (make-charset '=ucs-bmp@jis
864                 "ISO/IEC 10646 BMP for JIS"
865                 '(long-name     "BMP for JIS"
866                   chars         256
867                   dimension     3
868                   columns       2
869                   graphic       2
870                   direction     l2r
871                   mother        =ucs@jis
872                   min-code      #x0000
873                   max-code      #xFFFF))
874   (make-charset '=ucs@jis/1990
875                 "ISO/IEC 10646 for JIS X 0208/0212:1990"
876                 '(long-name     "UCS for JIS:1990"
877                   chars         256
878                   dimension     3
879                   columns       2
880                   graphic       2
881                   direction     l2r
882                   =>iso-ir      177
883                   mother        ucs-jis))
884   (define-charset-alias '=ucs@jis-1990 '=ucs@jis/1990)
885   (define-charset-alias '=ucs-jis-1990 '=ucs@jis/1990)
886   (make-charset '=ucs@jis/2000
887                 "ISO/IEC 10646 for JIS X 0213:2000"
888                 '(long-name     "UCS for JIS:2000"
889                   chars         256
890                   dimension     3
891                   columns       2
892                   graphic       2
893                   direction     l2r
894                   =>iso-ir      177
895                   mother        ucs-jis))
896   (define-charset-alias '=ucs@jis-2000 '=ucs@jis/2000)
897   (define-charset-alias '=ucs-jis-2000 '=ucs@jis/2000)
898   (make-charset '=ucs@jis/2004
899                 "ISO/IEC 10646 for JIS X 0213:2004"
900                 '(long-name     "UCS for JIS:2004"
901                   chars         256
902                   dimension     3
903                   columns       2
904                   graphic       2
905                   direction     l2r
906                   =>iso-ir      177
907                   mother        ucs-jis))
908   (make-charset '=ucs@JP
909                 "UCS for common glyphs used in Japan"
910                 '(long-name     "UCS for Japan"
911                   chars         256
912                   dimension     3
913                   columns       2
914                   graphic       2
915                   direction     l2r
916                   =>iso-ir      177
917                   mother        =ucs@jis/2004))
918   (define-charset-alias '=ucs@jp '=ucs@JP)
919   (make-charset '=ucs@ks
920                 "ISO/IEC 10646 for Korean Standards"
921                 '(long-name     "UCS for KS"
922                   chars         256
923                   dimension     3
924                   columns       2
925                   graphic       2
926                   direction     l2r
927                   =>iso-ir      177
928                   mother        =ucs@unicode))
929   (define-charset-alias 'ucs-ks '=ucs@ks)
930   (make-charset '=ucs-bmp@ks
931                 "ISO/IEC 10646 BMP for KS"
932                 '(long-name     "BMP for KS"
933                   chars         256
934                   dimension     3
935                   columns       2
936                   graphic       2
937                   direction     l2r
938                   mother        =ucs@ks
939                   min-code      #x0000
940                   max-code      #xFFFF))
941   (make-charset '=ucs@big5
942                 "ISO/IEC 10646 for Big5"
943                 '(long-name     "UCS for Big5"
944                   chars         256
945                   dimension     3
946                   columns       2
947                   graphic       2
948                   direction     l2r
949                   =>iso-ir      177
950                   mother        =ucs@unicode))
951   (define-charset-alias 'ucs-big5 '=ucs@big5)
952   (make-charset '=ucs@big5/cns11643
953                 "ISO/IEC 10646 for Big5 based on www.cns11643.gov.tw"
954                 '(long-name     "UCS for Big5@CNS11643"
955                   chars         256
956                   dimension     3
957                   columns       2
958                   graphic       2
959                   direction     l2r
960                   =>iso-ir      177
961                   mother        =ucs@big5))
962   (make-charset '=ucs@cns11643
963                 "ISO/IEC 10646 for CNS based on www.cns11643.gov.tw"
964                 '(long-name     "UCS for CNS11643"
965                   chars         256
966                   dimension     3
967                   columns       2
968                   graphic       2
969                   direction     l2r
970                   =>iso-ir      177
971                   mother        =ucs@cns))
972   
973   (make-charset
974    '=ucs-radicals
975    "CJK Radicals of UCS"
976    '(long-name "UCS-Radicals"
977                chars 256
978                dimension 2
979                columns 2
980                graphic 2
981                direction l2r
982                registry "-zhRadicals-.*-ucs-0"
983                mother ucs-bmp
984                min-code #x2E00 max-code #x2FFF))
985   (make-charset
986    '=ucs-radicals@unicode
987    "CJK Radicals of UCS"
988    '(long-name "UCS-Radicals"
989                chars 256
990                dimension 2
991                columns 2
992                graphic 2
993                direction l2r
994                registry "-zhRadicals-.*-ucs-0"
995                mother =ucs@unicode
996                min-code #x2E00 max-code #x2FFF))
997   (make-charset
998    '=ucs-hangul
999    "Hangul Syllables of UCS"
1000    '(long-name "UCS-Hangul-Syllables"
1001                chars 256
1002                dimension 2
1003                columns 2
1004                graphic 2
1005                direction l2r
1006                registry "-Hangul-.*-ucs-0"
1007                mother =ucs
1008                min-code #xAC00 max-code #xD7AF))
1009   (make-charset
1010    '=ucs-bmp-cjk
1011    "CJK Characters in BMP of UCS"
1012    '(long-name "UCS-BMP-CJK"
1013                chars 256
1014                dimension 2
1015                columns 2
1016                graphic 2
1017                direction l2r
1018                registry "-zh-.*-ucs-0"
1019                mother ucs-bmp
1020                min-code #x2E00
1021                max-code #x9FA5
1022                ;; max-code #xA4CF
1023                ))
1024   (make-charset
1025    '=ucs-bmp-cjk@unicode
1026    "CJK Characters in BMP of Unicode"
1027    '(long-name "Unicode-BMP-CJK"
1028                chars 256
1029                dimension 2
1030                columns 2
1031                graphic 2
1032                direction l2r
1033                registry "-zh-.*-ucs-0"
1034                mother =ucs@unicode
1035                min-code #x2E00
1036                max-code #x9FA5
1037                ;; max-code #xA4CF
1038                ))
1039   (make-charset
1040    '=ucs-sip-ext-b
1041    "CJK Ideographs Extension B"
1042    '(long-name "UCS CJK Ext-B"
1043                chars 256
1044                dimension 2
1045                columns 2
1046                graphic 2
1047                direction l2r
1048                registry "\\(iso10646\\|ucs02\\)-2$"
1049                mother ucs
1050                min-code #x20000 max-code #x2A6D6
1051                code-offset #x20000))
1052   (make-charset
1053    '=ucs-sip-ext-b@iso
1054    "CJK Ideographs Extension B (ISO/IEC 10646-2)"
1055    '(long-name "UCS CJK Ext-B"
1056                chars 256
1057                dimension 2
1058                columns 2
1059                graphic 2
1060                direction l2r
1061                registry "\\(iso10646\\|ucs02\\)-2$"
1062                mother =ucs@iso
1063                min-code #x20000 max-code #x2A6D6
1064                code-offset #x20000))
1065
1066   (make-charset
1067    '=adobe-japan1-0
1068    "Adobe-Japan1-0 Character Collection for CID-Keyed Fonts"
1069    '(long-name "Adobe-Japan1-0"
1070                chars 256
1071                dimension 2
1072                columns 2
1073                graphic 2
1074                direction l2r
1075                registry "AdobeJapan1-0$"))
1076   (make-charset
1077    '=adobe-japan1-1
1078    "Adobe-Japan1-1 Character Collection for CID-Keyed Fonts"
1079    '(long-name "Adobe-Japan1-1"
1080                chars 256
1081                dimension 2
1082                columns 2
1083                graphic 2
1084                direction l2r
1085                mother =adobe-japan1-0
1086                registry "AdobeJapan1-1$"))
1087   (make-charset
1088    '=adobe-japan1-2
1089    "Adobe-Japan1-2 Character Collection for CID-Keyed Fonts"
1090    '(long-name "Adobe-Japan1-2"
1091                chars 256
1092                dimension 2
1093                columns 2
1094                graphic 2
1095                direction l2r
1096                mother =adobe-japan1-1
1097                registry "AdobeJapan1-2$"))
1098   (make-charset
1099    '=adobe-japan1-3
1100    "Adobe-Japan1-3 Character Collection for CID-Keyed Fonts"
1101    '(long-name "Adobe-Japan1-3"
1102                chars 256
1103                dimension 2
1104                columns 2
1105                graphic 2
1106                direction l2r
1107                mother =adobe-japan1-2
1108                registry "AdobeJapan1-3$"))
1109   (make-charset
1110    '=adobe-japan1-4
1111    "Adobe-Japan1-4 Character Collection for CID-Keyed Fonts"
1112    '(long-name "Adobe-Japan1-4"
1113                chars 256
1114                dimension 2
1115                columns 2
1116                graphic 2
1117                direction l2r
1118                mother =adobe-japan1-3
1119                registry "AdobeJapan1-4$"))
1120   (make-charset
1121    '=adobe-japan1-5
1122    "Adobe-Japan1-5 Character Collection for CID-Keyed Fonts"
1123    '(long-name "Adobe-Japan1-5"
1124                chars 256
1125                dimension 2
1126                columns 2
1127                graphic 2
1128                direction l2r
1129                mother =adobe-japan1-4
1130                registry "AdobeJapan1-5$"))
1131   (make-charset
1132    '=adobe-japan1-6
1133    "Adobe-Japan1-6 Character Collection for CID-Keyed Fonts"
1134    '(long-name "Adobe-Japan1-6"
1135                chars 256
1136                dimension 2
1137                columns 2
1138                graphic 2
1139                direction l2r
1140                mother =adobe-japan1-5
1141                registry "AdobeJapan1-6$"))
1142   )
1143
1144 ;;; mule-conf.el ends here