Mercurial > hg > xemacs-beta
comparison lisp/mule/cyrillic.el @ 3749:f37a5923ceba
[xemacs-hg @ 2006-12-17 13:41:33 by aidan]
Add case support for Cyrillic, change various syntax choices.
author | aidan |
---|---|
date | Sun, 17 Dec 2006 13:41:49 +0000 |
parents | f6f6fc9eb269 |
children | 6b2ef948e140 |
comparison
equal
deleted
inserted
replaced
3748:ed9fdfb69780 | 3749:f37a5923ceba |
---|---|
31 | 31 |
32 ;; Windows-1251 support deleted because XEmacs has automatic support. | 32 ;; Windows-1251 support deleted because XEmacs has automatic support. |
33 | 33 |
34 ;;; Code: | 34 ;;; Code: |
35 | 35 |
36 ;; Cyrillic syntax | |
37 (modify-syntax-entry 'cyrillic-iso8859-5 "w") | |
38 (modify-syntax-entry ?,L-(B ".") | |
39 (modify-syntax-entry ?,Lp(B ".") | |
40 (modify-syntax-entry ?,L}(B ".") | |
41 | |
42 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 36 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
43 ;;; CYRILLIC | 37 ;;; CYRILLIC |
44 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 38 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
45 | 39 |
46 ;; ISO-8859-5 | 40 ;; ISO-8859-5 |
47 | 41 |
48 ; (make-charset 'cyrillic-iso8859-5 | 42 (loop |
49 ; "Right-Hand Part of Latin/Cyrillic Alphabet (ISO/IEC 8859-5): ISO-IR-144" | 43 for (upper lower) |
50 ; '(dimension | 44 in '((#xcf #xef) ; YA |
51 ; 1 | 45 (#xce #xee) ; YU |
52 ; registry "ISO8859-5" | 46 (#xcd #xed) ; E |
53 ; chars 96 | 47 (#xcc #xec) ; SOFT SIGN |
54 ; columns 1 | 48 (#xcb #xeb) ; YERU |
55 ; direction l2r | 49 (#xca #xea) ; HARD SIGN |
56 ; final ?L | 50 (#xc9 #xe9) ; SHCHA |
57 ; graphic 1 | 51 (#xc8 #xe8) ; SHA |
58 ; short-name "RHP of ISO8859/5" | 52 (#xc7 #xe7) ; CHE |
59 ; long-name "RHP of Cyrillic (ISO 8859-5): ISO-IR-144" | 53 (#xc6 #xe6) ; TSE |
60 ; )) | 54 (#xc5 #xe5) ; HA |
55 (#xc4 #xe4) ; EF | |
56 (#xc3 #xe3) ; U | |
57 (#xc2 #xe2) ; TE | |
58 (#xc1 #xe1) ; ES | |
59 (#xc0 #xe0) ; ER | |
60 (#xbf #xdf) ; PE | |
61 (#xbe #xde) ; O | |
62 (#xbd #xdd) ; EN | |
63 (#xbc #xdc) ; EM | |
64 (#xbb #xdb) ; EL | |
65 (#xba #xda) ; KA | |
66 (#xb9 #xd9) ; SHORT I | |
67 (#xb8 #xd8) ; I | |
68 (#xb7 #xd7) ; ZE | |
69 (#xb6 #xd6) ; ZHE | |
70 (#xb5 #xd5) ; IE | |
71 (#xb4 #xd4) ; DE | |
72 (#xb3 #xd3) ; GHE | |
73 (#xb2 #xd2) ; VE | |
74 (#xb1 #xd1) ; BE | |
75 (#xb0 #xd0) ; A | |
76 (#xaf #xff) ; DZHE | |
77 (#xae #xfe) ; SHORT U | |
78 (#xac #xfc) ; KJE | |
79 (#xab #xfb) ; TSHE | |
80 (#xaa #xfa) ; NJE | |
81 (#xa9 #xf9) ; LJE | |
82 (#xa8 #xf8) ; JE | |
83 (#xa7 #xf7) ; YI | |
84 (#xa6 #xf6) ; BYELORUSSIAN-UKRAINIAN I | |
85 (#xa5 #xf5) ; DZE | |
86 (#xa4 #xf4) ; UKRAINIAN IE | |
87 (#xa3 #xf3) ; GJE | |
88 (#xa2 #xf2) ; DJE | |
89 (#xa1 #xf1)) ; IO | |
90 with case-table = (standard-case-table) | |
91 do | |
92 (put-case-table-pair (make-char 'cyrillic-iso8859-5 upper) | |
93 (make-char 'cyrillic-iso8859-5 lower) | |
94 case-table)) | |
95 | |
96 ;; The default character syntax is now word. Pay attention to the | |
97 ;; exceptions in ISO-8859-5. | |
98 (dolist (code '(#xAD ;; SOFT HYPHEN | |
99 #xF0 ;; NUMERO SIGN | |
100 #xFD)) ;; SECTION SIGN | |
101 (modify-syntax-entry (make-char 'cyrillic-iso8859-5 code) ".")) | |
102 | |
103 ;; NO-BREAK SPACE | |
104 (modify-syntax-entry (make-char 'cyrillic-iso8859-5 #xA0) " ") | |
61 | 105 |
62 (make-coding-system | 106 (make-coding-system |
63 'iso-8859-5 'iso2022 | 107 'iso-8859-5 'iso2022 |
64 "ISO-8859-5 (Cyrillic)" | 108 "ISO-8859-5 (Cyrillic)" |
65 '(charset-g0 ascii | 109 '(charset-g0 ascii |