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