aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa2006-04-05 06:34:46 +0000
committerKenichi Handa2006-04-05 06:34:46 +0000
commita293e9b6eddac033fd53113b903664753a7a7d64 (patch)
treed4bcef4fea34a4b60e2c418a066bdf75c2bcf466
parentb6f2cf4bfa2c7d563a08091d77db287b4bec09de (diff)
downloademacs-a293e9b6eddac033fd53113b903664753a7a7d64.tar.gz
emacs-a293e9b6eddac033fd53113b903664753a7a7d64.zip
Setup cases of Latin, Greek, and
Cyrillic characters in CJK charsets.
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/international/characters.el47
2 files changed, 52 insertions, 0 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 1e58ce2ea13..9397101c432 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
12006-04-05 Kenichi Handa <handa@m17n.org>
2
3 * international/characters.el: Setup cases of Latin, Greek, and
4 Cyrillic characters in CJK charsets.
5
12006-03-29 Daiki Ueno <ueno@unixuser.org> 62006-03-29 Daiki Ueno <ueno@unixuser.org>
2 7
3 * pgg-gpg.el (pgg-gpg-start-process): Don't bind 8 * pgg-gpg.el (pgg-gpg-start-process): Don't bind
diff --git a/lisp/international/characters.el b/lisp/international/characters.el
index ad9040b706e..638d09eea6e 100644
--- a/lisp/international/characters.el
+++ b/lisp/international/characters.el
@@ -177,6 +177,17 @@
177 (modify-category-entry (make-char 'chinese-gb2312 row) ?C) 177 (modify-category-entry (make-char 'chinese-gb2312 row) ?C)
178 (setq row (1+ row)))) 178 (setq row (1+ row))))
179 179
180(let ((tbl (standard-case-table)))
181 (dotimes (i 26)
182 (set-case-syntax-pair (make-char 'chinese-gb2312 #x23 (+ #x41 i))
183 (make-char 'chinese-gb2312 #x23 (+ #x61 i)) tbl))
184 (dotimes (i 24)
185 (set-case-syntax-pair (make-char 'chinese-gb2312 #x26 (+ #x21 i))
186 (make-char 'chinese-gb2312 #x26 (+ #x41 i)) tbl))
187 (dotimes (i 33)
188 (set-case-syntax-pair (make-char 'chinese-gb2312 #x27 (+ #x21 i))
189 (make-char 'chinese-gb2312 #x27 (+ #x51 i)) tbl)))
190
180;; Chinese character set (BIG5) 191;; Chinese character set (BIG5)
181 192
182(let ((from (decode-big5-char #xA141)) 193(let ((from (decode-big5-char #xA141))
@@ -217,6 +228,17 @@
217 (modify-category-entry generic-big5-1-char ?\|) 228 (modify-category-entry generic-big5-1-char ?\|)
218 (modify-category-entry generic-big5-2-char ?\|)) 229 (modify-category-entry generic-big5-2-char ?\|))
219 230
231(let ((tbl (standard-case-table)))
232 (dotimes (i 22)
233 (set-case-syntax-pair (decode-big5-char (+ #xA2CF i))
234 (decode-big5-char (+ #xA2CF i 26)) tbl))
235 (dotimes (i 4)
236 (set-case-syntax-pair (decode-big5-char (+ #xA2E4 i))
237 (decode-big5-char (+ #xA340 i)) tbl))
238 (dotimes (i 24)
239 (set-case-syntax-pair (decode-big5-char (+ #xA344 i))
240 (decode-big5-char (+ #xA344 i 24)) tbl)))
241
220 242
221;; Chinese character set (CNS11643) 243;; Chinese character set (CNS11643)
222 244
@@ -629,6 +651,17 @@
629 (modify-category-entry (car chars) ?C) 651 (modify-category-entry (car chars) ?C)
630 (setq chars (cdr chars)))) 652 (setq chars (cdr chars))))
631 653
654(let ((tbl (standard-case-table)))
655 (dotimes (i 26)
656 (set-case-syntax-pair (make-char 'japanese-jisx0208 #x23 (+ #x41 i))
657 (make-char 'japanese-jisx0208 #x23 (+ #x61 i)) tbl))
658 (dotimes (i 24)
659 (set-case-syntax-pair (make-char 'japanese-jisx0208 #x26 (+ #x21 i))
660 (make-char 'japanese-jisx0208 #x26 (+ #x41 i)) tbl))
661 (dotimes (i 33)
662 (set-case-syntax-pair (make-char 'japanese-jisx0208 #x27 (+ #x21 i))
663 (make-char 'japanese-jisx0208 #x27 (+ #x51 i)) tbl)))
664
632;; JISX0212 665;; JISX0212
633;; (modify-syntax-entry (make-char 'japanese-jisx0212) "w") 666;; (modify-syntax-entry (make-char 'japanese-jisx0212) "w")
634(modify-syntax-entry (make-char 'japanese-jisx0212 33) "_") 667(modify-syntax-entry (make-char 'japanese-jisx0212 33) "_")
@@ -674,6 +707,20 @@
674 (modify-syntax-entry open (format "(%c" close)) 707 (modify-syntax-entry open (format "(%c" close))
675 (modify-syntax-entry close (format ")%c" open)))) 708 (modify-syntax-entry close (format ")%c" open))))
676 709
710(let ((tbl (standard-case-table)))
711 (dotimes (i 26)
712 (set-case-syntax-pair (make-char 'korean-ksc5601 #x23 (+ #x41 i))
713 (make-char 'korean-ksc5601 #x23 (+ #x61 i)) tbl))
714 (dotimes (i 10)
715 (set-case-syntax-pair (make-char 'korean-ksc5601 #x25 (+ #x21 i))
716 (make-char 'korean-ksc5601 #x25 (+ #x30 i)) tbl))
717 (dotimes (i 24)
718 (set-case-syntax-pair (make-char 'korean-ksc5601 #x25 (+ #x41 i))
719 (make-char 'korean-ksc5601 #x25 (+ #x61 i)) tbl))
720 (dotimes (i 33)
721 (set-case-syntax-pair (make-char 'korean-ksc5601 #x2C (+ #x21 i))
722 (make-char 'korean-ksc5601 #x2C (+ #x51 i)) tbl)))
723
677;; Latin character set (latin-1,2,3,4,5,8,9) 724;; Latin character set (latin-1,2,3,4,5,8,9)
678 725
679(modify-category-entry (make-char 'latin-iso8859-1) ?l) 726(modify-category-entry (make-char 'latin-iso8859-1) ?l)