X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lisp%2Fmule%2Fmule-conf.el;h=839fca22833aa68a2a5dd1e683242647b8bf9eb7;hb=a8f98368dcee4fcc3f4cea6320a4ead897573bdb;hp=bc9450d1bc762b76f428dc204811d46edfe489d1;hpb=92d1ef7239d3e85df48132c94e8f18c0cd56578c;p=chise%2Fxemacs-chise.git.1 diff --git a/lisp/mule/mule-conf.el b/lisp/mule/mule-conf.el index bc9450d..839fca2 100644 --- a/lisp/mule/mule-conf.el +++ b/lisp/mule/mule-conf.el @@ -2,7 +2,7 @@ ;; Copyright (C) 1995,1999 Electrotechnical Laboratory, JAPAN. ;; Licensed to the Free Software Foundation. -;; Copyright (C) 1997,1999,2000,2002,2003 MORIOKA Tomohiko +;; Copyright (C) 1997,1999,2000,2002,2003,2004 MORIOKA Tomohiko ;; Keywords: mule, multilingual, character set, coding system @@ -25,6 +25,16 @@ ;;; Code: +(define-charset-alias 'japanese-jisx0208-1978 '=jis-x0208-1978) +(define-charset-alias 'chinese-gb2312 '=gb2312) +(define-charset-alias 'japanese-jisx0208 '=jis-x0208-1983) +(define-charset-alias 'korean-ksc5601 '=ks-x1001) +(define-charset-alias 'japanese-jisx0212 '=jis-x0212) +(define-charset-alias 'chinese-cns11643-1 '=cns11643-1) +(define-charset-alias 'chinese-cns11643-2 '=cns11643-2) +(define-charset-alias 'chinese-gb12345 '=gb12345) +(define-charset-alias 'chinese-big5 '=big5) + ;; PinYin-ZhuYin (make-charset 'sisheng "PinYin-ZhuYin" '(registry "sisheng_cwnn\\|OMRON_UDC_ZH" @@ -63,14 +73,26 @@ ;; ISO-IR-165 (CCITT Extended GB) ;; It is based on CCITT Recommendation T.101, includes GB 2312-80 + ;; GB 8565-88 table A4 + 293 characters. -(make-charset - 'chinese-isoir165 - "ISO-IR-165 (CCITT Extended GB; Chinese simplified)" - `(registry "isoir165" - dimension 2 - chars 94 - final ?E - graphic 0)) +(if (featurep 'utf-2000) + (progn + (make-charset '=iso-ir165 + "ISO-IR-165 (CCITT Extended GB; Chinese simplified)" + '(iso-ir 165 + dimension 2 + chars 94 + mother =gb2312 + final ?E + registry "isoir165" + graphic 0)) + (define-charset-alias 'chinese-isoir165 '=iso-ir165)) + (make-charset 'chinese-isoir165 + "ISO-IR-165 (CCITT Extended GB; Chinese simplified)" + '(iso-ir 165 + dimension 2 + chars 94 + final ?E + registry "isoir165" + graphic 0))) ;; CNS11643 Plane3 thru Plane7 ;; These represent more and more obscure Chinese characters. @@ -80,21 +102,27 @@ (flet ((make-chinese-cns11643-charset - (name plane final) + (name iso-ir plane final) (make-charset name (concat "CNS 11643 Plane " plane " (Chinese traditional)") - `(registry + `(iso-ir ,iso-ir + registry ,(concat "CNS11643[.-]\\(.*[.-]\\)?" plane "$") dimension 2 chars 94 final ,final graphic 0)) )) - (make-chinese-cns11643-charset 'chinese-cns11643-3 "3" ?I) - (make-chinese-cns11643-charset 'chinese-cns11643-4 "4" ?J) - (make-chinese-cns11643-charset 'chinese-cns11643-5 "5" ?K) - (make-chinese-cns11643-charset 'chinese-cns11643-6 "6" ?L) - (make-chinese-cns11643-charset 'chinese-cns11643-7 "7" ?M) + (make-chinese-cns11643-charset '=cns11643-3 183 "3" ?I) + (make-chinese-cns11643-charset '=cns11643-4 184 "4" ?J) + (make-chinese-cns11643-charset '=cns11643-5 185 "5" ?K) + (make-chinese-cns11643-charset '=cns11643-6 186 "6" ?L) + (make-chinese-cns11643-charset '=cns11643-7 187 "7" ?M) + (define-charset-alias 'chinese-cns11643-3 '=cns11643-3) + (define-charset-alias 'chinese-cns11643-4 '=cns11643-4) + (define-charset-alias 'chinese-cns11643-5 '=cns11643-5) + (define-charset-alias 'chinese-cns11643-6 '=cns11643-6) + (define-charset-alias 'chinese-cns11643-7 '=cns11643-7) ) ;; JIS X 0213:2000 @@ -103,20 +131,22 @@ (make-charset '=jis-x0213-1-2000 "JIS X 0213:2000 Plain 1" - '(registry "jisx0213\\(\\.2000\\)-1" - dimension 2 - chars 94 - mother =jis-x0208-1990 - final ?O - graphic 0)) + '(iso-ir 228 + registry "jisx0213\\(\\.2000\\)-1" + dimension 2 + chars 94 + mother =jis-x0208-1990 + final ?O + graphic 0)) (make-charset '=jis-x0213-2-2000 "JIS X 0213:2000 Plain 2" - '(registry "jisx0213\\(\\.2000\\)-2" - dimension 2 - chars 94 - final ?P - graphic 0)) + '(iso-ir 229 + registry "jisx0213\\(\\.2000\\)-2" + dimension 2 + chars 94 + final ?P + graphic 0)) (define-charset-alias 'japanese-jisx0213-1 '=jis-x0213-1-2000) (define-charset-alias 'japanese-jisx0213-2 '=jis-x0213-2-2000) ) @@ -141,77 +171,87 @@ (when (featurep 'utf-2000) (define-charset-alias 'ucs '=ucs) (define-charset-alias 'japanese-jisx0208-1990 '=jis-x0208-1990) - (make-charset '=ucs@gb - "UCS for GB" - `(long-name "ISO/IEC 10646 for GB" - chars 256 - dimension 3 - columns 2 - graphic 2 - direction l2r - mother =ucs)) - (define-charset-alias 'ucs-gb '=ucs@gb) - (make-charset '=ucs@cns - "UCS for CNS" - `(long-name "ISO/IEC 10646 for CNS 11643" - chars 256 - dimension 3 - columns 2 - graphic 2 - direction l2r - mother =ucs)) - (define-charset-alias 'ucs-cns '=ucs@cns) - (make-charset '=ucs@jis - "UCS for JIS" - `(long-name "ISO/IEC 10646 for JIS X0208/0212/0213" - chars 256 - dimension 3 - columns 2 - graphic 2 - direction l2r - mother =ucs)) - (define-charset-alias 'ucs-jis '=ucs@jis) - (make-charset '=ucs@jis-1990 - "UCS for JIS:1990" - `(long-name "ISO/IEC 10646 for JIS X 0208/0212:1990" - chars 256 - dimension 3 - columns 2 - graphic 2 - direction l2r - mother ucs-jis)) - (define-charset-alias '=ucs-jis-1990 '=ucs@jis-1990) - (make-charset '=ucs@jis-2000 - "UCS for JIS:2000" - `(long-name "ISO/IEC 10646 for JIS X 0213:2000" + + (make-charset '=big5-cdp + "Big5-CDP" + `(long-name "Big5 with CDP extension" chars 256 - dimension 3 + dimension 2 columns 2 graphic 2 direction l2r - mother ucs-jis)) - (define-charset-alias '=ucs-jis-2000 '=ucs@jis-2000) - (make-charset '=ucs@ks - "UCS for KS" - `(long-name "ISO/IEC 10646 for Korean Standards" + registry "big5\\.cdp-0" + mother chinese-big5 + min-code #x8140 + max-code #x8DFE)) + (define-charset-alias 'chinese-big5-cdp '=big5-cdp) + + (make-charset '=gt + "GT" + `(long-name "GT 2000" chars 256 dimension 3 columns 2 graphic 2 direction l2r - mother =ucs)) - (define-charset-alias 'ucs-ks '=ucs@ks) - (make-charset 'ucs-big5 - "UCS for Big5" - `(long-name "ISO/IEC 10646 for Big5" + registry "" + min-code ,(lsh #x6100 16) + max-code ,(+ (lsh #x6100 16) 67547) + code-offset ,(lsh #x6100 16))) + (define-charset-alias 'ideograph-gt '=gt) + (make-charset '=gt-k + "GT parts" + `(long-name "Ideographic parts of GT" chars 256 - dimension 3 + dimension 2 columns 2 graphic 2 direction l2r - mother =ucs)) + registry "" + min-code ,(lsh #x6110 16) + max-code ,(+ (lsh #x6110 16) 17090) + code-offset ,(lsh #x6110 16))) + (define-charset-alias 'ideograph-gt-k '=gt-k) + (let ((i 1)) + (while (<= i 11) + (make-charset + (intern (format "=gt-pj-%d" i)) + (format "GT PJ %d" i) + `(long-name ,(format "GT 2000 (pseudo JIS encoding) part %d" i) + chars 94 + dimension 2 + columns 2 + graphic 0 + direction l2r + registry ,(format "\\(GTpj-%d\\|jisx0208\\.GT-%d\\)$" i i))) + (define-charset-alias + (intern (format "ideograph-gt-pj-%d" i)) + (intern (format "=gt-pj-%d" i))) + (setq i (1+ i)))) + (make-charset + '=gt-pj-k1 + "GT K1" + `(long-name "Ideographic parts of GT (pseudo JIS encoding) part 1" + chars 94 + dimension 2 + columns 2 + graphic 0 + direction l2r + registry "\\(GTKpj-1\\|jisx0208\\.GTK-1\\)$")) + (define-charset-alias 'ideograph-gt-pj-k1 '=gt-pj-k1) + (make-charset + '=gt-pj-k2 + "GT K2" + `(long-name "Ideographic parts of GT (pseudo JIS encoding) part 2" + chars 94 + dimension 2 + columns 2 + graphic 0 + direction l2r + registry "\\(GTKpj-2\\|jisx0208\\.GTK-2\\)$")) + (define-charset-alias 'ideograph-gt-pj-k2 '=gt-pj-k2) - (make-charset 'ideograph-daikanwa + (make-charset '=daikanwa "Daikanwa" `(long-name "Daikanwa dictionary (revised version 2)" chars 256 @@ -223,6 +263,7 @@ min-code #xE00000 max-code ,(+ #xE00000 50100) code-offset #xE00000)) + (define-charset-alias 'ideograph-daikanwa '=daikanwa) (make-charset '=daikanwa-rev1 "Daikanwa Rev." @@ -296,19 +337,7 @@ min-code #xC6A1 max-code #xC8FE registry "Big5\\.ETEN")) - (make-charset '=big5-cdp - "Big5-CDP" - `(long-name "Big5 with CDP extension" - chars 256 - dimension 2 - columns 2 - graphic 2 - direction l2r - registry "big5\\.cdp-0" - mother chinese-big5 - min-code #x8140 - max-code #x8DFE)) - (define-charset-alias 'chinese-big5-cdp '=big5-cdp) + (let* ((i 1) (hzk-min (+ (lsh #x6200 16) 65536)) (hzk-max (+ hzk-min 65535))) @@ -333,70 +362,6 @@ hzk-max (+ hzk-min 65535)) (setq i (1+ i)))) - (make-charset '=gt - "GT" - `(long-name "GT 2000" - chars 256 - dimension 3 - columns 2 - graphic 2 - direction l2r - registry "" - min-code ,(lsh #x6100 16) - max-code ,(+ (lsh #x6100 16) 67547) - code-offset ,(lsh #x6100 16))) - (define-charset-alias 'ideograph-gt '=gt) - (make-charset '=gt-k - "GT parts" - `(long-name "Ideographic parts of GT" - chars 256 - dimension 2 - columns 2 - graphic 2 - direction l2r - registry "" - min-code ,(lsh #x6110 16) - max-code ,(+ (lsh #x6110 16) 17090) - code-offset ,(lsh #x6110 16))) - (define-charset-alias 'ideograph-gt-k '=gt-k) - (let ((i 1)) - (while (<= i 11) - (make-charset - (intern (format "=gt-pj-%d" i)) - (format "GT PJ %d" i) - `(long-name ,(format "GT 2000 (pseudo JIS encoding) part %d" i) - chars 94 - dimension 2 - columns 2 - graphic 0 - direction l2r - registry ,(format "\\(GTpj-%d\\|jisx0208\\.GT-%d\\)$" i i))) - (define-charset-alias - (intern (format "ideograph-gt-pj-%d" i)) - (intern (format "=gt-pj-%d" i))) - (setq i (1+ i)))) - (make-charset - '=gt-pj-k1 - "GT K1" - `(long-name "Ideographic parts of GT (pseudo JIS encoding) part 1" - chars 94 - dimension 2 - columns 2 - graphic 0 - direction l2r - registry "\\(GTKpj-1\\|jisx0208\\.GTK-1\\)$")) - (define-charset-alias 'ideograph-gt-pj-k1 '=gt-pj-k1) - (make-charset - '=gt-pj-k2 - "GT K2" - `(long-name "Ideographic parts of GT (pseudo JIS encoding) part 2" - chars 94 - dimension 2 - columns 2 - graphic 0 - direction l2r - registry "\\(GTKpj-2\\|jisx0208\\.GTK-2\\)$")) - (define-charset-alias 'ideograph-gt-pj-k2 '=gt-pj-k2) (make-charset '=cbeta "CBETA PUA" '(long-name "CBETA private characters" chars 256 @@ -409,6 +374,7 @@ columns 2 direction l2r)) (define-charset-alias 'ideograph-cbeta '=cbeta) + (make-charset '=jef-china3 "JEF + CHINA3" `(long-name "JEF + CHINA3 private characters" @@ -422,6 +388,193 @@ max-code #xE8FFFF code-offset #xE80000)) (define-charset-alias 'china3-jef '=jef-china3) + + (make-charset '=ruimoku-v6 + "RUI6" + `(long-name "private characters used in RUIMOKU" + chars 256 + dimension 2 + columns 2 + graphic 2 + direction l2r + registry "rui6-0" + ;; mother ucs + min-code #xE90000 ; #xE000 + max-code #xE908FF ; #xE8FF + code-offset ,(- #xE90000 #xE000))) + + (make-charset '=ucs@iso + "UCS for ISO" + `(long-name "ISO/IEC 10646 for its representative glyphs" + chars 256 + dimension 3 + columns 2 + graphic 2 + direction l2r + mother =ucs)) + (make-charset '=ucs@unicode + "UCS for Unicode" + `(long-name "Unicode for its representative glyphs" + chars 256 + dimension 3 + columns 2 + graphic 2 + direction l2r + mother =ucs@iso)) + (make-charset '=ucs@gb + "UCS for GB" + `(long-name "ISO/IEC 10646 for GB" + chars 256 + dimension 3 + columns 2 + graphic 2 + direction l2r + mother =ucs@unicode)) + (define-charset-alias 'ucs-gb '=ucs@gb) + (make-charset '=ucs@cns + "UCS for CNS" + `(long-name "ISO/IEC 10646 for CNS 11643" + chars 256 + dimension 3 + columns 2 + graphic 2 + direction l2r + mother =ucs@unicode)) + (define-charset-alias 'ucs-cns '=ucs@cns) + (make-charset '=ucs@jis + "UCS for JIS" + `(long-name "ISO/IEC 10646 for JIS X0208/0212/0213" + chars 256 + dimension 3 + columns 2 + graphic 2 + direction l2r + mother =ucs@unicode)) + (define-charset-alias 'ucs-jis '=ucs@jis) + (make-charset '=ucs@jis-1990 + "UCS for JIS:1990" + `(long-name "ISO/IEC 10646 for JIS X 0208/0212:1990" + chars 256 + dimension 3 + columns 2 + graphic 2 + direction l2r + mother ucs-jis)) + (define-charset-alias '=ucs-jis-1990 '=ucs@jis-1990) + (make-charset '=ucs@jis-2000 + "UCS for JIS:2000" + `(long-name "ISO/IEC 10646 for JIS X 0213:2000" + chars 256 + dimension 3 + columns 2 + graphic 2 + direction l2r + mother ucs-jis)) + (define-charset-alias '=ucs-jis-2000 '=ucs@jis-2000) + (make-charset '=ucs@jp + "UCS for Japan" + `(long-name "UCS for common glyphs used in Japan" + chars 256 + dimension 3 + columns 2 + graphic 2 + direction l2r + mother =ucs@jis-2000)) + (make-charset '=ucs@ks + "UCS for KS" + `(long-name "ISO/IEC 10646 for Korean Standards" + chars 256 + dimension 3 + columns 2 + graphic 2 + direction l2r + mother =ucs@unicode)) + (define-charset-alias 'ucs-ks '=ucs@ks) + (make-charset '=ucs@big5 + "UCS for Big5" + `(long-name "ISO/IEC 10646 for Big5" + chars 256 + dimension 3 + columns 2 + graphic 2 + direction l2r + mother =ucs@unicode)) + (define-charset-alias 'ucs-big5 '=ucs@big5) + + (make-charset + '=ucs-radicals + "UCS-Radicals" + `(long-name "CJK Radicals of UCS" + chars 256 + dimension 2 + columns 2 + graphic 2 + direction l2r + registry "-zh-.*-ucs-0" + mother ucs-bmp + min-code #x2E00 max-code #x2FFF)) + (make-charset + '=ucs-radicals@unicode + "UCS-Radicals" + `(long-name "CJK Radicals of UCS" + chars 256 + dimension 2 + columns 2 + graphic 2 + direction l2r + registry "-zh-.*-ucs-0" + mother =ucs@unicode + min-code #x2E00 max-code #x2FFF)) + (make-charset + '=ucs-bmp-cjk + "UCS-BMP-CJK" + `(long-name "CJK Characters in BMP of UCS" + chars 256 + dimension 2 + columns 2 + graphic 2 + direction l2r + registry "-zh-.*-ucs-0" + mother ucs-bmp + min-code #x2E00 max-code #xA4CF)) + (make-charset + '=ucs-bmp-cjk@unicode + "Unicode-BMP-CJK" + `(long-name "CJK Characters in BMP of Unicode" + chars 256 + dimension 2 + columns 2 + graphic 2 + direction l2r + registry "-zh-.*-ucs-0" + mother =ucs@unicode + min-code #x2E00 max-code #xA4CF)) + (make-charset + '=ucs-sip-ext-b + "UCS CJK Ext-B" + `(long-name "CJK Ideographs Extension B" + chars 256 + dimension 2 + columns 2 + graphic 2 + direction l2r + registry "\\(iso10646\\|ucs02\\)-2$" + mother ucs + min-code #x20000 max-code #x2A6D6 + code-offset #x20000)) + (make-charset + '=ucs-sip-ext-b@iso + "UCS CJK Ext-B" + `(long-name "CJK Ideographs Extension B (ISO/IEC 10646-2)" + chars 256 + dimension 2 + columns 2 + graphic 2 + direction l2r + registry "\\(iso10646\\|ucs02\\)-2$" + mother =ucs@iso + min-code #x20000 max-code #x2A6D6 + code-offset #x20000)) ) ;;; mule-conf.el ends here