Mercurial > emacs
annotate lisp/international/characters.el @ 112321:dc74e58f6b0b
Merge from mainline.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Tue, 11 Jan 2011 21:57:19 -0800 |
parents | f026c8607795 |
children | 417b1e4d63cd |
rev | line source |
---|---|
17052 | 1 ;;; characters.el --- set syntax and category for multibyte characters |
2 | |
106815 | 3 ;; Copyright (C) 1997, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 |
62274 | 4 ;; Free Software Foundation, Inc. |
74605
6ee41fdd69ff
Update AIST copyright years.
Kenichi Handa <handa@m17n.org>
parents:
74544
diff
changeset
|
5 ;; Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, |
106815 | 6 ;; 2005, 2006, 2007, 2008, 2009, 2010 |
62274 | 7 ;; National Institute of Advanced Industrial Science and Technology (AIST) |
8 ;; Registration Number H14PRO021 | |
89483 | 9 ;; Copyright (C) 2003 |
88403
3c6459e2914f
Adjusted for the deletion of generic characters.
Kenichi Handa <handa@m17n.org>
parents:
41992
diff
changeset
|
10 ;; National Institute of Advanced Industrial Science and Technology (AIST) |
3c6459e2914f
Adjusted for the deletion of generic characters.
Kenichi Handa <handa@m17n.org>
parents:
41992
diff
changeset
|
11 ;; Registration Number H13PRO009 |
17052 | 12 |
13 ;; Keywords: multibyte character, character set, syntax, category | |
14 | |
15 ;; This file is part of GNU Emacs. | |
16 | |
94664
889bc336b89b
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94129
diff
changeset
|
17 ;; GNU Emacs is free software: you can redistribute it and/or modify |
17052 | 18 ;; it under the terms of the GNU General Public License as published by |
94664
889bc336b89b
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94129
diff
changeset
|
19 ;; the Free Software Foundation, either version 3 of the License, or |
889bc336b89b
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94129
diff
changeset
|
20 ;; (at your option) any later version. |
17052 | 21 |
22 ;; GNU Emacs is distributed in the hope that it will be useful, | |
23 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
24 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
25 ;; GNU General Public License for more details. | |
26 | |
27 ;; You should have received a copy of the GNU General Public License | |
94664
889bc336b89b
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94129
diff
changeset
|
28 ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |
17052 | 29 |
30 ;;; Commentary: | |
31 | |
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
36688
diff
changeset
|
32 ;;; Code: |
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
36688
diff
changeset
|
33 |
17052 | 34 ;;; Predefined categories. |
35 | |
36 ;; For each character set. | |
37 | |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
38 (define-category ?a "ASCII |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
39 ASCII graphic characters 32-126 (ISO646 IRV:1983[4/0])") |
17052 | 40 (define-category ?l "Latin") |
41 (define-category ?t "Thai") | |
42 (define-category ?g "Greek") | |
43 (define-category ?b "Arabic") | |
44 (define-category ?w "Hebrew") | |
45 (define-category ?y "Cyrillic") | |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
46 (define-category ?k "Katakana |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
47 Japanese katakana") |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
48 (define-category ?r "Roman |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
49 Japanese roman") |
17052 | 50 (define-category ?c "Chinese") |
51 (define-category ?j "Japanese") | |
52 (define-category ?h "Korean") | |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
53 (define-category ?e "Ethiopic |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
54 Ethiopic (Ge'ez)") |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
55 (define-category ?v "Viet |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
56 Vietnamese") |
17052 | 57 (define-category ?i "Indian") |
17078
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
58 (define-category ?o "Lao") |
17753
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
59 (define-category ?q "Tibetan") |
17052 | 60 |
61 ;; For each group (row) of 2-byte character sets. | |
62 | |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
63 (define-category ?A "2-byte alnum |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
64 Alpha-numeric characters of 2-byte character sets") |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
65 (define-category ?C "2-byte han |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
66 Chinese (Han) characters of 2-byte character sets") |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
67 (define-category ?G "2-byte Greek |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
68 Greek characters of 2-byte character sets") |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
69 (define-category ?H "2-byte Hiragana |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
70 Japanese Hiragana characters of 2-byte character sets") |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
71 (define-category ?K "2-byte Katakana |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
72 Japanese Katakana characters of 2-byte character sets") |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
73 (define-category ?N "2-byte Korean |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
74 Korean Hangul characters of 2-byte character sets") |
99146
c75ecb203637
Docstrings of categories improved again.
Kenichi Handa <handa@m17n.org>
parents:
99118
diff
changeset
|
75 (define-category ?Y "2-byte Cyrillic |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
76 Cyrillic characters of 2-byte character sets") |
17052 | 77 (define-category ?I "Indian Glyphs") |
78 | |
79 ;; For phonetic classifications. | |
80 | |
81 (define-category ?0 "consonant") | |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
82 (define-category ?1 "base vowel |
101982
f22ae19dd025
* international/characters.el (?1, ?2, ?3, ?4, ?7, ?^):
Juanma Barranquero <lekktu@gmail.com>
parents:
101961
diff
changeset
|
83 Base (independent) vowel") |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
84 (define-category ?2 "upper diacritic |
101982
f22ae19dd025
* international/characters.el (?1, ?2, ?3, ?4, ?7, ?^):
Juanma Barranquero <lekktu@gmail.com>
parents:
101961
diff
changeset
|
85 Upper diacritical mark (including upper vowel)") |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
86 (define-category ?3 "lower diacritic |
101982
f22ae19dd025
* international/characters.el (?1, ?2, ?3, ?4, ?7, ?^):
Juanma Barranquero <lekktu@gmail.com>
parents:
101961
diff
changeset
|
87 Lower diacritical mark (including lower vowel)") |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
88 (define-category ?4 "combining tone |
101982
f22ae19dd025
* international/characters.el (?1, ?2, ?3, ?4, ?7, ?^):
Juanma Barranquero <lekktu@gmail.com>
parents:
101961
diff
changeset
|
89 Combining tone mark") |
18561
f3c28fd5118e
Modify docstring of char category
Kenichi Handa <handa@m17n.org>
parents:
18377
diff
changeset
|
90 (define-category ?5 "symbol") |
17052 | 91 (define-category ?6 "digit") |
99146
c75ecb203637
Docstrings of categories improved again.
Kenichi Handa <handa@m17n.org>
parents:
99118
diff
changeset
|
92 (define-category ?7 "vowel diacritic |
101982
f22ae19dd025
* international/characters.el (?1, ?2, ?3, ?4, ?7, ?^):
Juanma Barranquero <lekktu@gmail.com>
parents:
101961
diff
changeset
|
93 Vowel-modifying diacritical mark") |
17078
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
94 (define-category ?8 "vowel-signs") |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
95 (define-category ?9 "semivowel lower") |
17052 | 96 |
97 ;; For filling. | |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
98 (define-category ?| "line breakable |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
99 While filling, we can break a line at this character.") |
17052 | 100 |
20247 | 101 ;; For indentation calculation. |
49769
5ed59fd23bc4
Use new ?\s syntax instead of "? " followed by a comment.
Juanma Barranquero <lekktu@gmail.com>
parents:
49601
diff
changeset
|
102 (define-category ?\s |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
103 "space for indent |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
104 This character counts as a space for indentation purposes.") |
20247 | 105 |
22529 | 106 ;; Keep the following for `kinsoku' processing. See comments in |
17052 | 107 ;; kinsoku.el. |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
108 (define-category ?> "Not at bol |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
109 A character which can't be placed at beginning of line.") |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
110 (define-category ?< "Not at eol |
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
111 A character which can't be placed at end of line.") |
17052 | 112 |
101961
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
113 ;; Base and Combining |
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
114 (define-category ?. "Base |
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
115 Base characters (Unicode General Category L,N,P,S,Zs)") |
99118
1fa22c8361b3
Docstrings of categories improved.
Kenichi Handa <handa@m17n.org>
parents:
99017
diff
changeset
|
116 (define-category ?^ "Combining |
101982
f22ae19dd025
* international/characters.el (?1, ?2, ?3, ?4, ?7, ?^):
Juanma Barranquero <lekktu@gmail.com>
parents:
101961
diff
changeset
|
117 Combining diacritic or mark (Unicode General Category M)") |
17052 | 118 |
119 ;;; Setting syntax and category. | |
120 | |
121 ;; ASCII | |
122 | |
88425
d7bd9df1799d
Optimize calls of modify-category-entry.
Kenichi Handa <handa@m17n.org>
parents:
88403
diff
changeset
|
123 ;; All ASCII characters have the category `a' (ASCII) and `l' (Latin). |
d7bd9df1799d
Optimize calls of modify-category-entry.
Kenichi Handa <handa@m17n.org>
parents:
88403
diff
changeset
|
124 (modify-category-entry '(32 . 127) ?a) |
d7bd9df1799d
Optimize calls of modify-category-entry.
Kenichi Handa <handa@m17n.org>
parents:
88403
diff
changeset
|
125 (modify-category-entry '(32 . 127) ?l) |
17052 | 126 |
89314 | 127 ;; Deal with the CJK charsets first. Since the syntax of blocks is |
128 ;; defined per charset, and the charsets may contain e.g. Latin | |
129 ;; characters, we end up with the wrong syntax definitions if we're | |
130 ;; not careful. | |
17052 | 131 |
88752 | 132 ;; Chinese characters (Unicode) |
89923
be0153d5e3f8
Give more CJK characters the category `|'.
Kenichi Handa <handa@m17n.org>
parents:
89914
diff
changeset
|
133 (modify-category-entry '(#x2E80 . #x312F) ?|) |
be0153d5e3f8
Give more CJK characters the category `|'.
Kenichi Handa <handa@m17n.org>
parents:
89914
diff
changeset
|
134 (modify-category-entry '(#x3190 . #x33FF) ?|) |
103882
68c7ccee0204
Fix setting of category ?C.
Kenichi Handa <handa@m17n.org>
parents:
103629
diff
changeset
|
135 (modify-category-entry '(#x3400 . #x4DBF) ?C) |
68c7ccee0204
Fix setting of category ?C.
Kenichi Handa <handa@m17n.org>
parents:
103629
diff
changeset
|
136 (modify-category-entry '(#x4E00 . #x9FAF) ?C) |
88752 | 137 (modify-category-entry '(#x3400 . #x9FAF) ?c) |
138 (modify-category-entry '(#x3400 . #x9FAF) ?|) | |
139 (modify-category-entry '(#xF900 . #xFAFF) ?C) | |
140 (modify-category-entry '(#xF900 . #xFAFF) ?c) | |
141 (modify-category-entry '(#xF900 . #xFAFF) ?|) | |
104052
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
142 (modify-category-entry '(#x20000 . #x2FFFF) ?|) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
143 (modify-category-entry '(#x20000 . #x2FFFF) ?C) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
144 (modify-category-entry '(#x20000 . #x2FFFF) ?c) |
89680
9f9a2db0bc5a
Fix setting of category `|'.
Kenichi Handa <handa@m17n.org>
parents:
89635
diff
changeset
|
145 |
17052 | 146 |
147 ;; Chinese character set (GB2312) | |
148 | |
88752 | 149 (map-charset-chars #'modify-syntax-entry 'chinese-gb2312 "_" #x2121 #x217E) |
150 (map-charset-chars #'modify-syntax-entry 'chinese-gb2312 "_" #x2221 #x227E) | |
151 (map-charset-chars #'modify-syntax-entry 'chinese-gb2312 "_" #x2921 #x297E) | |
17052 | 152 |
88723 | 153 (map-charset-chars #'modify-category-entry 'chinese-gb2312 ?c) |
89014 | 154 (map-charset-chars #'modify-category-entry 'chinese-gb2312 ?A #x2330 #x2339) |
155 (map-charset-chars #'modify-category-entry 'chinese-gb2312 ?A #x2341 #x235A) | |
156 (map-charset-chars #'modify-category-entry 'chinese-gb2312 ?A #x2361 #x237A) | |
88752 | 157 (map-charset-chars #'modify-category-entry 'chinese-gb2312 ?H #x2421 #x247E) |
158 (map-charset-chars #'modify-category-entry 'chinese-gb2312 ?K #x2521 #x257E) | |
159 (map-charset-chars #'modify-category-entry 'chinese-gb2312 ?G #x2621 #x267E) | |
160 (map-charset-chars #'modify-category-entry 'chinese-gb2312 ?Y #x2721 #x277E) | |
161 (map-charset-chars #'modify-category-entry 'chinese-gb2312 ?C #x3021 #x7E7E) | |
17052 | 162 |
163 ;; Chinese character set (BIG5) | |
164 | |
88971
651b64e6dce3
Call map-charset-chars on big5
Kenichi Handa <handa@m17n.org>
parents:
88892
diff
changeset
|
165 (map-charset-chars #'modify-category-entry 'big5 ?c) |
103882
68c7ccee0204
Fix setting of category ?C.
Kenichi Handa <handa@m17n.org>
parents:
103629
diff
changeset
|
166 (map-charset-chars #'modify-category-entry 'big5 ?C #xA259 #xA261) |
89014 | 167 (map-charset-chars #'modify-category-entry 'big5 ?C #xA440 #xC67E) |
103882
68c7ccee0204
Fix setting of category ?C.
Kenichi Handa <handa@m17n.org>
parents:
103629
diff
changeset
|
168 (map-charset-chars #'modify-category-entry 'big5 ?C #xC940 #xF9DC) |
17052 | 169 |
170 ;; Chinese character set (CNS11643) | |
171 | |
88723 | 172 (dolist (c '(chinese-cns11643-1 chinese-cns11643-2 chinese-cns11643-3 |
173 chinese-cns11643-4 chinese-cns11643-5 chinese-cns11643-6 | |
174 chinese-cns11643-7)) | |
175 (map-charset-chars #'modify-category-entry c ?c) | |
89014 | 176 (if (eq c 'chinese-cns11643-1) |
177 (map-charset-chars #'modify-category-entry c ?C #x4421 #x7E7E) | |
89680
9f9a2db0bc5a
Fix setting of category `|'.
Kenichi Handa <handa@m17n.org>
parents:
89635
diff
changeset
|
178 (map-charset-chars #'modify-category-entry c ?C))) |
17052 | 179 |
89483 | 180 ;; Japanese character set (JISX0201, JISX0208, JISX0212, JISX0213) |
17052 | 181 |
88752 | 182 (map-charset-chars #'modify-category-entry 'katakana-jisx0201 ?k) |
183 | |
184 (map-charset-chars #'modify-category-entry 'latin-jisx0201 ?r) | |
88403
3c6459e2914f
Adjusted for the deletion of generic characters.
Kenichi Handa <handa@m17n.org>
parents:
41992
diff
changeset
|
185 |
89483 | 186 (dolist (l '(katakana-jisx0201 japanese-jisx0208 japanese-jisx0212 |
104632
6d053719e87d
Add category `j' to cp932-2-byte.
Kenichi Handa <handa@m17n.org>
parents:
104055
diff
changeset
|
187 japanese-jisx0213-1 japanese-jisx0213-2 |
6d053719e87d
Add category `j' to cp932-2-byte.
Kenichi Handa <handa@m17n.org>
parents:
104055
diff
changeset
|
188 cp932-2-byte)) |
89680
9f9a2db0bc5a
Fix setting of category `|'.
Kenichi Handa <handa@m17n.org>
parents:
89635
diff
changeset
|
189 (map-charset-chars #'modify-category-entry l ?j)) |
17052 | 190 |
111035
31d92d74a71a
international/characters.el: Add category '|' (word breakable) to fullwidth characters.
Kenichi Handa <handa@m17n.org>
parents:
107307
diff
changeset
|
191 ;; Fullwidth characters |
31d92d74a71a
international/characters.el: Add category '|' (word breakable) to fullwidth characters.
Kenichi Handa <handa@m17n.org>
parents:
107307
diff
changeset
|
192 (modify-category-entry '(#xff01 . #xff60) ?\|) |
31d92d74a71a
international/characters.el: Add category '|' (word breakable) to fullwidth characters.
Kenichi Handa <handa@m17n.org>
parents:
107307
diff
changeset
|
193 |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
194 ;; Unicode equivalents of JISX0201-kana |
88752 | 195 (let ((range '(#xff61 . #xff9f))) |
196 (modify-category-entry range ?k) | |
197 (modify-category-entry range ?j) | |
198 (modify-category-entry range ?\|)) | |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
199 |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
200 ;; Katakana block |
104052
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
201 (modify-category-entry '(#x3099 . #x309C) ?K) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
202 (modify-category-entry '(#x30A0 . #x30FF) ?K) |
104055 | 203 (modify-category-entry '(#x31F0 . #x31FF) ?K) |
104053 | 204 (modify-category-entry '(#x30A0 . #x30FA) ?\|) |
104052
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
205 (modify-category-entry #x30FF ?\|) |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
206 |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
207 ;; Hiragana block |
104052
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
208 (modify-category-entry '(#x3040 . #x309F) ?H) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
209 (modify-category-entry '(#x3040 . #x3096) ?\|) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
210 (modify-category-entry #x309F ?\|) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
211 (modify-category-entry #x30A0 ?H) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
212 (modify-category-entry #x30FC ?H) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
213 |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
214 |
17052 | 215 ;; JISX0208 |
88752 | 216 (map-charset-chars #'modify-syntax-entry 'japanese-jisx0208 "_" #x2121 #x227E) |
217 (map-charset-chars #'modify-syntax-entry 'japanese-jisx0208 "_" #x2821 #x287E) | |
218 (let ((chars '(?ー ?゛ ?゜ ?ヽ ?ヾ ?ゝ ?ゞ ?〃 ?仝 ?々 ?〆 ?〇))) | |
88519
98ec5d812ccc
Set syntax/category for japanese-jisx0208.
Kenichi Handa <handa@m17n.org>
parents:
88492
diff
changeset
|
219 (dolist (elt chars) |
88612 | 220 (modify-syntax-entry (car chars) "w"))) |
17052 | 221 |
88752 | 222 (map-charset-chars #'modify-category-entry 'japanese-jisx0208 ?A #x2321 #x237E) |
223 (map-charset-chars #'modify-category-entry 'japanese-jisx0208 ?H #x2421 #x247E) | |
224 (map-charset-chars #'modify-category-entry 'japanese-jisx0208 ?K #x2521 #x257E) | |
225 (map-charset-chars #'modify-category-entry 'japanese-jisx0208 ?G #x2621 #x267E) | |
226 (map-charset-chars #'modify-category-entry 'japanese-jisx0208 ?Y #x2721 #x277E) | |
227 (map-charset-chars #'modify-category-entry 'japanese-jisx0208 ?C #x3021 #x7E7E) | |
228 (modify-category-entry ?ー ?K) | |
229 (let ((chars '(?゛ ?゜))) | |
17052 | 230 (while chars |
231 (modify-category-entry (car chars) ?K) | |
232 (modify-category-entry (car chars) ?H) | |
233 (setq chars (cdr chars)))) | |
103882
68c7ccee0204
Fix setting of category ?C.
Kenichi Handa <handa@m17n.org>
parents:
103629
diff
changeset
|
234 (let ((chars '(?仝 ?々 ?〆 ?〇))) |
17052 | 235 (while chars |
236 (modify-category-entry (car chars) ?C) | |
237 (setq chars (cdr chars)))) | |
238 | |
239 ;; JISX0212 | |
88723 | 240 |
88752 | 241 (map-charset-chars #'modify-syntax-entry 'japanese-jisx0212 "_" #x2121 #x237E) |
17052 | 242 |
243 ;; JISX0201-Kana | |
88723 | 244 |
88612 | 245 (let ((chars '(?。 ?、 ?・))) |
17052 | 246 (while chars |
247 (modify-syntax-entry (car chars) ".") | |
248 (setq chars (cdr chars)))) | |
249 | |
88469
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
250 (modify-syntax-entry ?\「 "(」") |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
251 (modify-syntax-entry ?\」 "(「") |
36688
45b172fa5c17
Add category `j' for katakana-jisx0201. Fix syntaxes of
Kenichi Handa <handa@m17n.org>
parents:
34507
diff
changeset
|
252 |
17052 | 253 ;; Korean character set (KSC5601) |
254 | |
88723 | 255 (map-charset-chars #'modify-category-entry 'korean-ksc5601 ?h) |
88752 | 256 |
257 (map-charset-chars #'modify-syntax-entry 'korean-ksc5601 "_" #x2121 #x227E) | |
89117 | 258 (map-charset-chars #'modify-syntax-entry 'korean-ksc5601 "_" #x2621 #x277E) |
259 (map-charset-chars #'modify-syntax-entry 'korean-ksc5601 "_" #x2830 #x287E) | |
260 (map-charset-chars #'modify-syntax-entry 'korean-ksc5601 "_" #x2930 #x297E) | |
89014 | 261 (map-charset-chars #'modify-category-entry 'korean-ksc5601 ?A #x2330 #x2339) |
262 (map-charset-chars #'modify-category-entry 'korean-ksc5601 ?A #x2341 #x235A) | |
263 (map-charset-chars #'modify-category-entry 'korean-ksc5601 ?A #x2361 #x237A) | |
88752 | 264 (map-charset-chars #'modify-category-entry 'korean-ksc5601 ?G #x2521 #x257E) |
265 (map-charset-chars #'modify-category-entry 'korean-ksc5601 ?H #x2A21 #x2A7E) | |
266 (map-charset-chars #'modify-category-entry 'korean-ksc5601 ?K #x2B21 #x2B7E) | |
267 (map-charset-chars #'modify-category-entry 'korean-ksc5601 ?Y #x2C21 #x2C7E) | |
17052 | 268 |
89314 | 269 ;; These are in more than one charset. |
89483 | 270 (let ((parens (concat "〈〉《》「」『』【】〔〕〖〗〘〙〚〛" |
271 "︵︶︷︸︹︺︻︼︽︾︿﹀﹁﹂﹃﹄" | |
272 "()[]{}")) | |
55675
506ecef6bbf8
Fix syntax (open/close) of CJK characters.
Kenichi Handa <handa@m17n.org>
parents:
54657
diff
changeset
|
273 open close) |
506ecef6bbf8
Fix syntax (open/close) of CJK characters.
Kenichi Handa <handa@m17n.org>
parents:
54657
diff
changeset
|
274 (dotimes (i (/ (length parens) 2)) |
506ecef6bbf8
Fix syntax (open/close) of CJK characters.
Kenichi Handa <handa@m17n.org>
parents:
54657
diff
changeset
|
275 (setq open (aref parens (* i 2)) |
506ecef6bbf8
Fix syntax (open/close) of CJK characters.
Kenichi Handa <handa@m17n.org>
parents:
54657
diff
changeset
|
276 close (aref parens (1+ (* i 2)))) |
506ecef6bbf8
Fix syntax (open/close) of CJK characters.
Kenichi Handa <handa@m17n.org>
parents:
54657
diff
changeset
|
277 (modify-syntax-entry open (format "(%c" close)) |
506ecef6bbf8
Fix syntax (open/close) of CJK characters.
Kenichi Handa <handa@m17n.org>
parents:
54657
diff
changeset
|
278 (modify-syntax-entry close (format ")%c" open)))) |
17052 | 279 |
280 ;; Arabic character set | |
281 | |
282 (let ((charsets '(arabic-iso8859-6 | |
283 arabic-digit | |
284 arabic-1-column | |
285 arabic-2-column))) | |
286 (while charsets | |
89314 | 287 (map-charset-chars #'modify-category-entry (car charsets) ?b) |
17052 | 288 (setq charsets (cdr charsets)))) |
89314 | 289 (modify-category-entry '(#x600 . #x6ff) ?b) |
290 (modify-category-entry '(#xfb50 . #xfdff) ?b) | |
291 (modify-category-entry '(#xfe70 . #xfefe) ?b) | |
55675
506ecef6bbf8
Fix syntax (open/close) of CJK characters.
Kenichi Handa <handa@m17n.org>
parents:
54657
diff
changeset
|
292 |
17052 | 293 ;; Cyrillic character set (ISO-8859-5) |
294 | |
89314 | 295 (modify-syntax-entry ?№ ".") |
17753
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
296 |
17052 | 297 ;; Ethiopic character set |
298 | |
90535 | 299 (modify-category-entry '(#x1200 . #x1399) ?e) |
300 (modify-category-entry '(#x2d80 . #x2dde) ?e) | |
91933
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
301 (let ((chars '(?፡ ?። ?፣ ?፤ ?፥ ?፦ ?፧ ?፨))) |
18304
58b39b4108d5
Set syntaxes of Ethiopic characters.
Kenichi Handa <handa@m17n.org>
parents:
18205
diff
changeset
|
302 (while chars |
58b39b4108d5
Set syntaxes of Ethiopic characters.
Kenichi Handa <handa@m17n.org>
parents:
18205
diff
changeset
|
303 (modify-syntax-entry (car chars) ".") |
58b39b4108d5
Set syntaxes of Ethiopic characters.
Kenichi Handa <handa@m17n.org>
parents:
18205
diff
changeset
|
304 (setq chars (cdr chars)))) |
89314 | 305 (map-charset-chars #'modify-category-entry 'ethiopic ?e) |
17052 | 306 |
307 ;; Hebrew character set (ISO-8859-8) | |
308 | |
89314 | 309 (modify-syntax-entry #x5be ".") ; MAQAF |
310 (modify-syntax-entry #x5c0 ".") ; PASEQ | |
311 (modify-syntax-entry #x5c3 ".") ; SOF PASUQ | |
312 (modify-syntax-entry #x5f3 ".") ; GERESH | |
313 (modify-syntax-entry #x5f4 ".") ; GERSHAYIM | |
17052 | 314 |
315 ;; Indian character set (IS 13194 and other Emacs original Indian charsets) | |
316 | |
89314 | 317 (modify-category-entry '(#x901 . #x970) ?i) |
318 (map-charset-chars #'modify-category-entry 'indian-is13194 ?i) | |
319 (map-charset-chars #'modify-category-entry 'indian-2-column ?i) | |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
320 |
17078
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
321 ;; Lao character set |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
322 |
88612 | 323 (modify-category-entry '(#xe80 . #xeff) ?o) |
324 (map-charset-chars #'modify-category-entry 'lao ?o) | |
17078
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
325 |
88612 | 326 (let ((deflist '(("ກ-ຮ" "w" ?0) ; consonant |
88469
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
327 ("ະາຳຽເ-ໄ" "w" ?1) ; vowel base |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
328 ("ັິ-ືົໍ" "w" ?2) ; vowel upper |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
329 ("ຸູ" "w" ?3) ; vowel lower |
89483 | 330 ("່-໋" "w" ?4) ; tone mark |
88469
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
331 ("ຼຽ" "w" ?9) ; semivowel lower |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
332 ("໐-໙" "w" ?6) ; digit |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
333 ("ຯໆ" "_" ?5) ; symbol |
17078
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
334 )) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
335 elm chars len syntax category to ch i) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
336 (while deflist |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
337 (setq elm (car deflist)) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
338 (setq chars (car elm) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
339 len (length chars) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
340 syntax (nth 1 elm) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
341 category (nth 2 elm) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
342 i 0) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
343 (while (< i len) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
344 (if (= (aref chars i) ?-) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
345 (setq i (1+ i) |
20843 | 346 to (aref chars i)) |
347 (setq ch (aref chars i) | |
17078
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
348 to ch)) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
349 (while (<= ch to) |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
350 (unless (string-equal syntax "w") |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
351 (modify-syntax-entry ch syntax)) |
17078
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
352 (modify-category-entry ch category) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
353 (setq ch (1+ ch))) |
20843 | 354 (setq i (1+ i))) |
17078
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
355 (setq deflist (cdr deflist)))) |
874b471d6635
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
356 |
17052 | 357 ;; Thai character set (TIS620) |
358 | |
88612 | 359 (modify-category-entry '(#xe00 . #xe7f) ?t) |
360 (map-charset-chars #'modify-category-entry 'thai-tis620 ?t) | |
17052 | 361 |
362 (let ((deflist '(;; chars syntax category | |
88469
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
363 ("ก-รลว-ฮ" "w" ?0) ; consonant |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
364 ("ฤฦะาำเ-ๅ" "w" ?1) ; vowel base |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
365 ("ัิ-ื็๎" "w" ?2) ; vowel upper |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
366 ("ุ-ฺ" "w" ?3) ; vowel lower |
89483 | 367 ("่-ํ" "w" ?4) ; tone mark |
88469
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
368 ("๐-๙" "w" ?6) ; digit |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
369 ("ฯๆ฿๏๚๛" "_" ?5) ; symbol |
17052 | 370 )) |
371 elm chars len syntax category to ch i) | |
372 (while deflist | |
373 (setq elm (car deflist)) | |
374 (setq chars (car elm) | |
375 len (length chars) | |
376 syntax (nth 1 elm) | |
377 category (nth 2 elm) | |
378 i 0) | |
379 (while (< i len) | |
380 (if (= (aref chars i) ?-) | |
381 (setq i (1+ i) | |
20843 | 382 to (aref chars i)) |
383 (setq ch (aref chars i) | |
17052 | 384 to ch)) |
385 (while (<= ch to) | |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
386 (unless (string-equal syntax "w") |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
387 (modify-syntax-entry ch syntax)) |
17052 | 388 (modify-category-entry ch category) |
389 (setq ch (1+ ch))) | |
20843 | 390 (setq i (1+ i))) |
17052 | 391 (setq deflist (cdr deflist)))) |
392 | |
17753
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
393 ;; Tibetan character set |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
394 |
88612 | 395 (modify-category-entry '(#xf00 . #xfff) ?q) |
396 (map-charset-chars #'modify-category-entry 'tibetan ?q) | |
397 (map-charset-chars #'modify-category-entry 'tibetan-1-column ?q) | |
17753
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
398 |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
399 (let ((deflist '(;; chars syntax category |
88711 | 400 ("ཀ-ཀྵཪ" "w" ?0) ; consonant |
91933
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
401 ("ྐ-ྐྵྺྻྼ" "w" ?0) ; |
88711 | 402 ("ིེཻོཽྀ" "w" ?2) ; upper vowel |
403 ("ཾྂྃ྆྇ྈྉྊྋ" "w" ?2) ; upper modifier | |
91933
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
404 ("྄ཱུ༙༵༷" "w" ?3) ; lowel vowel/modifier |
89483 | 405 ("" "w" ?3) ; invisible vowel a |
88711 | 406 ("༠-༩༪-༳" "w" ?6) ; digit |
407 ("་།-༒༔ཿ" "." ?|) ; line-break char | |
408 ("་།༏༐༑༔ཿ" "." ?|) ; | |
409 ("༈་།-༒༔ཿ༽༴" "." ?>) ; prohibition | |
410 ("་།༏༐༑༔ཿ" "." ?>) ; | |
411 ("ༀ-༊༼࿁࿂྅" "." ?<) ; prohibition | |
412 ("༓༕-༘༚-༟༶༸-༻༾༿྾྿-࿏" "." ?q) ; others | |
17753
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
413 )) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
414 elm chars len syntax category to ch i) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
415 (while deflist |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
416 (setq elm (car deflist)) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
417 (setq chars (car elm) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
418 len (length chars) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
419 syntax (nth 1 elm) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
420 category (nth 2 elm) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
421 i 0) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
422 (while (< i len) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
423 (if (= (aref chars i) ?-) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
424 (setq i (1+ i) |
20843 | 425 to (aref chars i)) |
426 (setq ch (aref chars i) | |
17753
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
427 to ch)) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
428 (while (<= ch to) |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
429 (unless (string-equal syntax "w") |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
430 (modify-syntax-entry ch syntax)) |
17753
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
431 (modify-category-entry ch category) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
432 (setq ch (1+ ch))) |
20843 | 433 (setq i (1+ i))) |
17753
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
434 (setq deflist (cdr deflist)))) |
de6be7f3b904
Set syntax and category for Devanagari, Thai, and
Kenichi Handa <handa@m17n.org>
parents:
17296
diff
changeset
|
435 |
17052 | 436 ;; Vietnamese character set |
437 | |
88612 | 438 ;; To make a word with Latin characters |
439 (map-charset-chars #'modify-category-entry 'vietnamese-viscii-lower ?l) | |
440 (map-charset-chars #'modify-category-entry 'vietnamese-viscii-lower ?v) | |
441 | |
442 (map-charset-chars #'modify-category-entry 'vietnamese-viscii-upper ?l) | |
443 (map-charset-chars #'modify-category-entry 'vietnamese-viscii-upper ?v) | |
17052 | 444 |
27691
5ed8dd27c116
Setup case table for Vietnamese.
Kenichi Handa <handa@m17n.org>
parents:
26885
diff
changeset
|
445 (let ((tbl (standard-case-table)) |
5ed8dd27c116
Setup case table for Vietnamese.
Kenichi Handa <handa@m17n.org>
parents:
26885
diff
changeset
|
446 (i 32)) |
5ed8dd27c116
Setup case table for Vietnamese.
Kenichi Handa <handa@m17n.org>
parents:
26885
diff
changeset
|
447 (while (< i 128) |
88711 | 448 (let* ((char (decode-char 'vietnamese-viscii-upper i)) |
449 (charl (decode-char 'vietnamese-viscii-lower i)) | |
450 (uc (encode-char char 'ucs)) | |
451 (lc (encode-char charl 'ucs))) | |
452 (set-case-syntax-pair char (decode-char 'vietnamese-viscii-lower i) | |
101982
f22ae19dd025
* international/characters.el (?1, ?2, ?3, ?4, ?7, ?^):
Juanma Barranquero <lekktu@gmail.com>
parents:
101961
diff
changeset
|
453 tbl) |
88711 | 454 (if uc (modify-category-entry uc ?v)) |
455 (if lc (modify-category-entry lc ?v))) | |
27691
5ed8dd27c116
Setup case table for Vietnamese.
Kenichi Handa <handa@m17n.org>
parents:
26885
diff
changeset
|
456 (setq i (1+ i)))) |
5ed8dd27c116
Setup case table for Vietnamese.
Kenichi Handa <handa@m17n.org>
parents:
26885
diff
changeset
|
457 |
90945
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
458 ;; Tai Viet |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
459 (let ((deflist '(;; chars syntax category |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
460 ((?ꪀ. ?ꪯ) "w" ?0) ; cosonant |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
461 ("ꪱꪵꪶ" "w" ?1) ; vowel base |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
462 ((?ꪹ . ?ꪽ) "w" ?1) ; vowel base |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
463 ("ꪰꪲꪳꪷꪸꪾ" "w" ?2) ; vowel upper |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
464 ("ꪴ" "w" ?3) ; vowel lower |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
465 ("ꫀꫂ" "w" ?1) ; non-combining tone-mark |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
466 ("꪿꫁" "w" ?4) ; combining tone-mark |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
467 ((?ꫛ . ?꫟) "_" ?5) ; symbol |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
468 ))) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
469 (dolist (elm deflist) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
470 (let ((chars (car elm)) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
471 (syntax (nth 1 elm)) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
472 (category (nth 2 elm))) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
473 (if (consp chars) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
474 (progn |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
475 (modify-syntax-entry chars syntax) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
476 (modify-category-entry chars category)) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
477 (mapc #'(lambda (x) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
478 (modify-syntax-entry x syntax) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
479 (modify-category-entry x category)) |
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
480 chars))))) |
89314 | 481 |
482 ;; Latin | |
483 | |
484 (modify-category-entry '(#x80 . #x024F) ?l) | |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
485 |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
486 (let ((tbl (standard-case-table)) c) |
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
487 |
89146 | 488 ;; Latin-1 |
489 | |
490 ;; Fixme: Some of the non-word syntaxes here perhaps should be | |
491 ;; reviewed. (Note that the following all implicitly have word | |
492 ;; syntax: ¢£¤¥¨ª¯²³´¶¸¹º.) There should be a well-defined way of | |
493 ;; relating Unicode categories to Emacs syntax codes. | |
90146
a4445dd2a017
Set syntax of NBSP to punctuation.
Kenichi Handa <handa@m17n.org>
parents:
89923
diff
changeset
|
494 |
a4445dd2a017
Set syntax of NBSP to punctuation.
Kenichi Handa <handa@m17n.org>
parents:
89923
diff
changeset
|
495 ;; NBSP isn't semantically interchangeable with other whitespace chars, |
a4445dd2a017
Set syntax of NBSP to punctuation.
Kenichi Handa <handa@m17n.org>
parents:
89923
diff
changeset
|
496 ;; so it's more like punctation. |
a4445dd2a017
Set syntax of NBSP to punctuation.
Kenichi Handa <handa@m17n.org>
parents:
89923
diff
changeset
|
497 (set-case-syntax ? "." tbl) |
89146 | 498 (set-case-syntax ?¡ "." tbl) |
499 (set-case-syntax ?¦ "_" tbl) | |
500 (set-case-syntax ?§ "." tbl) | |
501 (set-case-syntax ?© "_" tbl) | |
502 (set-case-syntax-delims 171 187 tbl) ; « » | |
503 (set-case-syntax ?¬ "_" tbl) | |
504 (set-case-syntax ? "_" tbl) | |
505 (set-case-syntax ?® "_" tbl) | |
506 (set-case-syntax ?° "_" tbl) | |
507 (set-case-syntax ?± "_" tbl) | |
508 (set-case-syntax ?µ "_" tbl) | |
509 (set-case-syntax ?· "_" tbl) | |
510 (set-case-syntax ?¼ "_" tbl) | |
511 (set-case-syntax ?½ "_" tbl) | |
512 (set-case-syntax ?¾ "_" tbl) | |
513 (set-case-syntax ?¿ "." tbl) | |
514 (let ((c 192)) | |
515 (while (<= c 222) | |
516 (set-case-syntax-pair c (+ c 32) tbl) | |
517 (setq c (1+ c)))) | |
518 (set-case-syntax ?× "_" tbl) | |
519 (set-case-syntax ?ß "w" tbl) | |
520 (set-case-syntax ?÷ "_" tbl) | |
521 ;; See below for ÿ. | |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
522 |
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
523 ;; Latin Extended-A, Latin Extended-B |
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
524 (setq c #x0100) |
90792
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
525 (while (<= c #x02B8) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
526 (modify-category-entry c ?l) |
76328 | 527 (setq c (1+ c))) |
76320
7bc5977e9593
Set category `l' (latin) for more
Kenichi Handa <handa@m17n.org>
parents:
75827
diff
changeset
|
528 |
90792
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
529 (let ((pair-ranges '((#x0100 . #x012F) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
530 (#x0132 . #x0137) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
531 (#x0139 . #x0148) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
532 (#x014a . #x0177) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
533 (#x0179 . #x017E) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
534 (#x0182 . #x0185) |
104052
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
535 (#x0187 . #x0188) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
536 (#x018B . #x018C) |
90792
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
537 (#x0191 . #x0192) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
538 (#x0198 . #x0199) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
539 (#x01A0 . #x01A5) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
540 (#x01A7 . #x01A8) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
541 (#x01AC . #x01AD) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
542 (#x01AF . #x01B0) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
543 (#x01B3 . #x01B6) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
544 (#x01BC . #x01BD) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
545 (#x01CD . #x01DC) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
546 (#x01DE . #x01EF) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
547 (#x01F4 . #x01F5) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
548 (#x01F8 . #x021F) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
549 (#x0222 . #x0233) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
550 (#x023B . #x023C) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
551 (#x0241 . #x0242) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
552 (#x0246 . #x024F)))) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
553 (dolist (elt pair-ranges) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
554 (let ((from (car elt)) (to (cdr elt))) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
555 (while (< from to) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
556 (set-case-syntax-pair from (1+ from) tbl) |
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
557 (setq from (+ from 2)))))) |
73944
dba240f0d108
(case table): Do nothing special for i and I.
Richard M. Stallman <rms@gnu.org>
parents:
71399
diff
changeset
|
558 |
104052
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
559 (set-case-syntax-pair #x189 #x256 tbl) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
560 (set-case-syntax-pair #x18A #x257 tbl) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
561 |
73944
dba240f0d108
(case table): Do nothing special for i and I.
Richard M. Stallman <rms@gnu.org>
parents:
71399
diff
changeset
|
562 ;; In some languages, such as Turkish, U+0049 LATIN CAPITAL LETTER I |
dba240f0d108
(case table): Do nothing special for i and I.
Richard M. Stallman <rms@gnu.org>
parents:
71399
diff
changeset
|
563 ;; and U+0131 LATIN SMALL LETTER DOTLESS I make a case pair, and so |
dba240f0d108
(case table): Do nothing special for i and I.
Richard M. Stallman <rms@gnu.org>
parents:
71399
diff
changeset
|
564 ;; do U+0130 LATIN CAPITAL LETTER I WITH DOT ABOVE and U+0069 LATIN |
dba240f0d108
(case table): Do nothing special for i and I.
Richard M. Stallman <rms@gnu.org>
parents:
71399
diff
changeset
|
565 ;; SMALL LETTER I. |
dba240f0d108
(case table): Do nothing special for i and I.
Richard M. Stallman <rms@gnu.org>
parents:
71399
diff
changeset
|
566 |
dba240f0d108
(case table): Do nothing special for i and I.
Richard M. Stallman <rms@gnu.org>
parents:
71399
diff
changeset
|
567 ;; We used to set up half of those correspondence unconditionally, |
dba240f0d108
(case table): Do nothing special for i and I.
Richard M. Stallman <rms@gnu.org>
parents:
71399
diff
changeset
|
568 ;; but that makes searches slow. So now we don't set up either half |
dba240f0d108
(case table): Do nothing special for i and I.
Richard M. Stallman <rms@gnu.org>
parents:
71399
diff
changeset
|
569 ;; of these correspondences by default. |
dba240f0d108
(case table): Do nothing special for i and I.
Richard M. Stallman <rms@gnu.org>
parents:
71399
diff
changeset
|
570 |
90669 | 571 ;; (set-downcase-syntax ?İ ?i tbl) |
572 ;; (set-upcase-syntax ?I ?ı tbl) | |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
573 |
88469
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
574 (set-case-syntax-pair ?DŽ ?dž tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
575 (set-case-syntax-pair ?Dž ?dž tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
576 (set-case-syntax-pair ?LJ ?lj tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
577 (set-case-syntax-pair ?Lj ?lj tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
578 (set-case-syntax-pair ?NJ ?nj tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
579 (set-case-syntax-pair ?Nj ?nj tbl) |
90792
e8573c9233d0
Add more cases/syntaxes from Latin
Kenichi Handa <handa@m17n.org>
parents:
90751
diff
changeset
|
580 |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
581 ;; 01F0; F; 006A 030C; # LATIN SMALL LETTER J WITH CARON |
88469
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
582 (set-case-syntax-pair ?DZ ?dz tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
583 (set-case-syntax-pair ?Dz ?dz tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
584 (set-case-syntax-pair ?Ƕ ?ƕ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
585 (set-case-syntax-pair ?Ƿ ?ƿ tbl) |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
586 |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
587 ;; Latin Extended Additional |
88612 | 588 (modify-category-entry '(#x1e00 . #x1ef9) ?l) |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
589 (setq c #x1e00) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
590 (while (<= c #x1ef9) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
591 (and (zerop (% c 2)) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
592 (or (<= c #x1e94) (>= c #x1ea0)) |
88612 | 593 (set-case-syntax-pair c (1+ c) tbl)) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
594 (setq c (1+ c))) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
595 |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
596 ;; Greek |
88612 | 597 (modify-category-entry '(#x0370 . #x03ff) ?g) |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
598 (setq c #x0370) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
599 (while (<= c #x03ff) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
600 (if (or (and (>= c #x0391) (<= c #x03a1)) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
601 (and (>= c #x03a3) (<= c #x03ab))) |
88612 | 602 (set-case-syntax-pair c (+ c 32) tbl)) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
603 (and (>= c #x03da) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
604 (<= c #x03ee) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
605 (zerop (% c 2)) |
88612 | 606 (set-case-syntax-pair c (1+ c) tbl)) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
607 (setq c (1+ c))) |
88469
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
608 (set-case-syntax-pair ?Ά ?ά tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
609 (set-case-syntax-pair ?Έ ?έ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
610 (set-case-syntax-pair ?Ή ?ή tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
611 (set-case-syntax-pair ?Ί ?ί tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
612 (set-case-syntax-pair ?Ό ?ό tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
613 (set-case-syntax-pair ?Ύ ?ύ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
614 (set-case-syntax-pair ?Ώ ?ώ tbl) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
615 |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
616 ;; Armenian |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
617 (setq c #x531) |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
618 (while (<= c #x556) |
88612 | 619 (set-case-syntax-pair c (+ c #x30) tbl) |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
620 (setq c (1+ c))) |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
621 |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
622 ;; Greek Extended |
88612 | 623 (modify-category-entry '(#x1f00 . #x1fff) ?g) |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
624 (setq c #x1f00) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
625 (while (<= c #x1fff) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
626 (and (<= (logand c #x000f) 7) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
627 (<= c #x1fa7) |
104052
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
628 (not (memq c '(#x1f16 #x1f17 #x1f56 #x1f57 |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
629 #x1f50 #x1f52 #x1f54 #x1f56))) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
630 (/= (logand c #x00f0) #x70) |
88612 | 631 (set-case-syntax-pair (+ c 8) c tbl)) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
632 (setq c (1+ c))) |
88469
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
633 (set-case-syntax-pair ?Ᾰ ?ᾰ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
634 (set-case-syntax-pair ?Ᾱ ?ᾱ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
635 (set-case-syntax-pair ?Ὰ ?ὰ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
636 (set-case-syntax-pair ?Ά ?ά tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
637 (set-case-syntax-pair ?ᾼ ?ᾳ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
638 (set-case-syntax-pair ?Ὲ ?ὲ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
639 (set-case-syntax-pair ?Έ ?έ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
640 (set-case-syntax-pair ?Ὴ ?ὴ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
641 (set-case-syntax-pair ?Ή ?ή tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
642 (set-case-syntax-pair ?ῌ ?ῃ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
643 (set-case-syntax-pair ?Ῐ ?ῐ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
644 (set-case-syntax-pair ?Ῑ ?ῑ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
645 (set-case-syntax-pair ?Ὶ ?ὶ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
646 (set-case-syntax-pair ?Ί ?ί tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
647 (set-case-syntax-pair ?Ῠ ?ῠ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
648 (set-case-syntax-pair ?Ῡ ?ῡ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
649 (set-case-syntax-pair ?Ὺ ?ὺ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
650 (set-case-syntax-pair ?Ύ ?ύ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
651 (set-case-syntax-pair ?Ῥ ?ῥ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
652 (set-case-syntax-pair ?Ὸ ?ὸ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
653 (set-case-syntax-pair ?Ό ?ό tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
654 (set-case-syntax-pair ?Ὼ ?ὼ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
655 (set-case-syntax-pair ?Ώ ?ώ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
656 (set-case-syntax-pair ?ῼ ?ῳ tbl) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
657 |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
658 ;; cyrillic |
88612 | 659 (modify-category-entry '(#x0400 . #x04FF) ?y) |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
660 (setq c #x0400) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
661 (while (<= c #x04ff) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
662 (and (>= c #x0400) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
663 (<= c #x040f) |
88612 | 664 (set-case-syntax-pair c (+ c 80) tbl)) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
665 (and (>= c #x0410) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
666 (<= c #x042f) |
88612 | 667 (set-case-syntax-pair c (+ c 32) tbl)) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
668 (and (zerop (% c 2)) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
669 (or (and (>= c #x0460) (<= c #x0480)) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
670 (and (>= c #x048c) (<= c #x04be)) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
671 (and (>= c #x04d0) (<= c #x04f4))) |
89483 | 672 (set-case-syntax-pair c (1+ c) tbl)) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
673 (setq c (1+ c))) |
88469
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
674 (set-case-syntax-pair ?Ӂ ?ӂ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
675 (set-case-syntax-pair ?Ӄ ?ӄ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
676 (set-case-syntax-pair ?Ӈ ?ӈ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
677 (set-case-syntax-pair ?Ӌ ?ӌ tbl) |
dad99fefc4b3
Change encoding to utf-8-emacs. Remove apparent duplicate codes.
Kenichi Handa <handa@m17n.org>
parents:
88425
diff
changeset
|
678 (set-case-syntax-pair ?Ӹ ?ӹ tbl) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
679 |
34507
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
680 ;; general punctuation |
ed8ea5cf198b
Fix cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
33902
diff
changeset
|
681 (setq c #x2000) |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
682 (while (<= c #x200b) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
683 (set-case-syntax c " " tbl) |
52950 | 684 (setq c (1+ c))) |
89119 | 685 (while (<= c #x200F) |
686 (set-case-syntax c "." tbl) | |
687 (setq c (1+ c))) | |
688 ;; Fixme: These aren't all right: | |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
689 (setq c #x2010) |
52950 | 690 (while (<= c #x2016) |
89909 | 691 (set-case-syntax c "_" tbl) |
52950 | 692 (setq c (1+ c))) |
693 ;; Punctuation syntax for quotation marks (like `) | |
694 (while (<= c #x201f) | |
89909 | 695 (set-case-syntax c "." tbl) |
52950 | 696 (setq c (1+ c))) |
89909 | 697 ;; Fixme: These aren't all right: |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
698 (while (<= c #x2027) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
699 (set-case-syntax c "_" tbl) |
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
700 (setq c (1+ c))) |
89119 | 701 (while (<= c #x206F) |
702 (set-case-syntax c "." tbl) | |
52950 | 703 (setq c (1+ c))) |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
704 |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
705 ;; Roman numerals |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
706 (setq c #x2160) |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
707 (while (<= c #x216f) |
88612 | 708 (set-case-syntax-pair c (+ c #x10) tbl) |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
709 (setq c (1+ c))) |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
710 |
89146 | 711 ;; Fixme: The following blocks might be better as symbol rather than |
712 ;; punctuation. | |
89119 | 713 ;; Arrows |
714 (setq c #x2190) | |
89121 | 715 (while (<= c #x21FF) |
716 (set-case-syntax c "." tbl) | |
89119 | 717 (setq c (1+ c))) |
718 ;; Mathematical Operators | |
719 (while (<= c #x22FF) | |
89121 | 720 (set-case-syntax c "." tbl) |
89119 | 721 (setq c (1+ c))) |
722 ;; Miscellaneous Technical | |
723 (while (<= c #x23FF) | |
89121 | 724 (set-case-syntax c "." tbl) |
89119 | 725 (setq c (1+ c))) |
726 ;; Control Pictures | |
727 (while (<= c #x243F) | |
89121 | 728 (set-case-syntax c "_" tbl) |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
729 (setq c (1+ c))) |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
730 |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
731 ;; Circled Latin |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
732 (setq c #x24b6) |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
733 (while (<= c #x24cf) |
88612 | 734 (set-case-syntax-pair c (+ c 26) tbl) |
735 (modify-category-entry c ?l) | |
736 (modify-category-entry (+ c 26) ?l) | |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
737 (setq c (1+ c))) |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
738 |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
739 ;; Fullwidth Latin |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
740 (setq c #xff21) |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
741 (while (<= c #xff3a) |
88612 | 742 (set-case-syntax-pair c (+ c #x20) tbl) |
743 (modify-category-entry c ?l) | |
744 (modify-category-entry (+ c #x20) ?l) | |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
745 (setq c (1+ c))) |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
746 |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
747 ;; Combining diacritics |
88612 | 748 (modify-category-entry '(#x300 . #x362) ?^) |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
749 ;; Combining marks |
88612 | 750 (modify-category-entry '(#x20d0 . #x20e3) ?^) |
41874
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
751 |
1b93abfcbd87
Don't set word syntax (the default)
Dave Love <fx@gnu.org>
parents:
41466
diff
changeset
|
752 ;; Fixme: syntax for symbols &c |
33902
aacccd8ad977
Specify cases and syntaxes for mule-unicode-0100-24ff.
Kenichi Handa <handa@m17n.org>
parents:
31664
diff
changeset
|
753 ) |
54510
99f05a0b48dd
Setup syntaxes for more parentheses Unicode characters.
Kenichi Handa <handa@m17n.org>
parents:
52950
diff
changeset
|
754 |
99f05a0b48dd
Setup syntaxes for more parentheses Unicode characters.
Kenichi Handa <handa@m17n.org>
parents:
52950
diff
changeset
|
755 (let ((pairs |
89914
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
756 '("⁅⁆" ; U+2045 U+2046 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
757 "⁽⁾" ; U+207D U+207E |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
758 "₍₎" ; U+208D U+208E |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
759 "〈〉" ; U+2329 U+232A |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
760 "⎴⎵" ; U+23B4 U+23B5 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
761 "❨❩" ; U+2768 U+2769 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
762 "❪❫" ; U+276A U+276B |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
763 "❬❭" ; U+276C U+276D |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
764 "❰❱" ; U+2770 U+2771 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
765 "❲❳" ; U+2772 U+2773 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
766 "❴❵" ; U+2774 U+2775 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
767 "⟦⟧" ; U+27E6 U+27E7 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
768 "⟨⟩" ; U+27E8 U+27E9 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
769 "⟪⟫" ; U+27EA U+27EB |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
770 "⦃⦄" ; U+2983 U+2984 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
771 "⦅⦆" ; U+2985 U+2986 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
772 "⦇⦈" ; U+2987 U+2988 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
773 "⦉⦊" ; U+2989 U+298A |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
774 "⦋⦌" ; U+298B U+298C |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
775 "⦍⦎" ; U+298D U+298E |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
776 "⦏⦐" ; U+298F U+2990 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
777 "⦑⦒" ; U+2991 U+2992 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
778 "⦓⦔" ; U+2993 U+2994 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
779 "⦕⦖" ; U+2995 U+2996 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
780 "⦗⦘" ; U+2997 U+2998 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
781 "⧼⧽" ; U+29FC U+29FD |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
782 "〈〉" ; U+3008 U+3009 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
783 "《》" ; U+300A U+300B |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
784 "「」" ; U+300C U+300D |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
785 "『』" ; U+300E U+300F |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
786 "【】" ; U+3010 U+3011 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
787 "〔〕" ; U+3014 U+3015 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
788 "〖〗" ; U+3016 U+3017 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
789 "〘〙" ; U+3018 U+3019 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
790 "〚〛" ; U+301A U+301B |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
791 "﴾﴿" ; U+FD3E U+FD3F |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
792 "︵︶" ; U+FE35 U+FE36 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
793 "︷︸" ; U+FE37 U+FE38 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
794 "︹︺" ; U+FE39 U+FE3A |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
795 "︻︼" ; U+FE3B U+FE3C |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
796 "︽︾" ; U+FE3D U+FE3E |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
797 "︿﹀" ; U+FE3F U+FE40 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
798 "﹁﹂" ; U+FE41 U+FE42 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
799 "﹃﹄" ; U+FE43 U+FE44 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
800 "﹙﹚" ; U+FE59 U+FE5A |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
801 "﹛﹜" ; U+FE5B U+FE5C |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
802 "﹝﹞" ; U+FE5D U+FE5E |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
803 "()" ; U+FF08 U+FF09 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
804 "[]" ; U+FF3B U+FF3D |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
805 "{}" ; U+FF5B U+FF5D |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
806 "⦅⦆" ; U+FF5F U+FF60 |
a3122a8fd4cb
Fix invalid encoding caused by the previous sync.
Kenichi Handa <handa@m17n.org>
parents:
89909
diff
changeset
|
807 "「」" ; U+FF62 U+FF63 |
54510
99f05a0b48dd
Setup syntaxes for more parentheses Unicode characters.
Kenichi Handa <handa@m17n.org>
parents:
52950
diff
changeset
|
808 ))) |
99f05a0b48dd
Setup syntaxes for more parentheses Unicode characters.
Kenichi Handa <handa@m17n.org>
parents:
52950
diff
changeset
|
809 (dolist (elt pairs) |
99f05a0b48dd
Setup syntaxes for more parentheses Unicode characters.
Kenichi Handa <handa@m17n.org>
parents:
52950
diff
changeset
|
810 (modify-syntax-entry (aref elt 0) (string ?\( (aref elt 1))) |
99f05a0b48dd
Setup syntaxes for more parentheses Unicode characters.
Kenichi Handa <handa@m17n.org>
parents:
52950
diff
changeset
|
811 (modify-syntax-entry (aref elt 1) (string ?\) (aref elt 0))))) |
99f05a0b48dd
Setup syntaxes for more parentheses Unicode characters.
Kenichi Handa <handa@m17n.org>
parents:
52950
diff
changeset
|
812 |
17052 | 813 |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
814 ;; For each character set, put the information of the most proper |
24782
8f65cd6729b5
Typo fixed; prefered->preferred.
Kenichi Handa <handa@m17n.org>
parents:
24256
diff
changeset
|
815 ;; coding system to encode it by `preferred-coding-system' property. |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
816 |
88612 | 817 ;; Fixme: should this be junked? |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
818 (let ((l '((latin-iso8859-1 . iso-latin-1) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
819 (latin-iso8859-2 . iso-latin-2) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
820 (latin-iso8859-3 . iso-latin-3) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
821 (latin-iso8859-4 . iso-latin-4) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
822 (thai-tis620 . thai-tis620) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
823 (greek-iso8859-7 . greek-iso-8bit) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
824 (arabic-iso8859-6 . iso-2022-7bit) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
825 (hebrew-iso8859-8 . hebrew-iso-8bit) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
826 (katakana-jisx0201 . japanese-shift-jis) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
827 (latin-jisx0201 . japanese-shift-jis) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
828 (cyrillic-iso8859-5 . cyrillic-iso-8bit) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
829 (latin-iso8859-9 . iso-latin-5) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
830 (japanese-jisx0208-1978 . iso-2022-jp) |
90685 | 831 (chinese-gb2312 . chinese-iso-8bit) |
832 (chinese-gbk . chinese-gbk) | |
833 (gb18030-2-byte . chinese-gb18030) | |
834 (gb18030-4-byte-bmp . chinese-gb18030) | |
835 (gb18030-4-byte-smp . chinese-gb18030) | |
836 (gb18030-4-byte-ext-1 . chinese-gb18030) | |
837 (gb18030-4-byte-ext-2 . chinese-gb18030) | |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
838 (japanese-jisx0208 . iso-2022-jp) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
839 (korean-ksc5601 . iso-2022-kr) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
840 (japanese-jisx0212 . iso-2022-jp) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
841 (chinese-big5-1 . chinese-big5) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
842 (chinese-big5-2 . chinese-big5) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
843 (chinese-sisheng . iso-2022-7bit) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
844 (ipa . iso-2022-7bit) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
845 (vietnamese-viscii-lower . vietnamese-viscii) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
846 (vietnamese-viscii-upper . vietnamese-viscii) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
847 (arabic-digit . iso-2022-7bit) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
848 (arabic-1-column . iso-2022-7bit) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
849 (lao . lao) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
850 (arabic-2-column . iso-2022-7bit) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
851 (indian-is13194 . devanagari) |
41466
b364f798b789
Adjusted for the change of indian-1-column -> indian-glyph.
Richard M. Stallman <rms@gnu.org>
parents:
38414
diff
changeset
|
852 (indian-glyph . devanagari) |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
853 (tibetan-1-column . tibetan) |
24256
47e6aa168a66
Let ethiopic use iso-2022-7bit.
Kenichi Handa <handa@m17n.org>
parents:
24208
diff
changeset
|
854 (ethiopic . iso-2022-7bit) |
90685 | 855 (chinese-cns11643-1 . iso-2022-cn) |
856 (chinese-cns11643-2 . iso-2022-cn) | |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
857 (chinese-cns11643-3 . iso-2022-cn) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
858 (chinese-cns11643-4 . iso-2022-cn) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
859 (chinese-cns11643-5 . iso-2022-cn) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
860 (chinese-cns11643-6 . iso-2022-cn) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
861 (chinese-cns11643-7 . iso-2022-cn) |
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
862 (indian-2-column . devanagari) |
26013 | 863 (tibetan . tibetan) |
864 (latin-iso8859-14 . iso-latin-8) | |
865 (latin-iso8859-15 . iso-latin-9)))) | |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
866 (while l |
24782
8f65cd6729b5
Typo fixed; prefered->preferred.
Kenichi Handa <handa@m17n.org>
parents:
24256
diff
changeset
|
867 (put-charset-property (car (car l)) 'preferred-coding-system (cdr (car l))) |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
868 (setq l (cdr l)))) |
23493 | 869 |
870 | |
23527
06e8c3b9deec
Setup charset property nospace-between-words.
Kenichi Handa <handa@m17n.org>
parents:
23493
diff
changeset
|
871 ;; Setup auto-fill-chars for charsets that should invoke auto-filling. |
90634
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
872 ;; SPACE and NEWLINE are already set. |
90258 | 873 |
874 (set-char-table-range auto-fill-chars '(#x3041 . #x30FF) t) | |
875 (set-char-table-range auto-fill-chars '(#x3400 . #x4DB5) t) | |
876 (set-char-table-range auto-fill-chars '(#x4e00 . #x9fbb) t) | |
877 (set-char-table-range auto-fill-chars '(#xF900 . #xFAFF) t) | |
878 (set-char-table-range auto-fill-chars '(#xFF00 . #xFF9F) t) | |
879 (set-char-table-range auto-fill-chars '(#x20000 . #x2FFFF) t) | |
880 | |
90634
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
881 |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
882 ;;; Setting char-width-table. The default is 1. |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
883 |
90634
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
884 ;; 0: non-spacing, enclosing combining, formatting, Hangul Jamo medial |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
885 ;; and final characters. |
94129
f8353eba8b8d
Don't make the width of U+00AD to 0.
Kenichi Handa <handa@m17n.org>
parents:
93517
diff
changeset
|
886 (let ((l '((#x0300 . #x036F) |
90634
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
887 (#x0483 . #x0489) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
888 (#x0591 . #x05BD) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
889 (#x05BF . #x05BF) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
890 (#x05C1 . #x05C2) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
891 (#x05C4 . #x05C5) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
892 (#x05C7 . #x05C7) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
893 (#x0600 . #x0603) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
894 (#x0610 . #x0615) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
895 (#x064B . #x065E) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
896 (#x0670 . #x0670) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
897 (#x06D6 . #x06E4) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
898 (#x06E7 . #x06E8) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
899 (#x06EA . #x06ED) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
900 (#x070F . #x070F) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
901 (#x0711 . #x0711) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
902 (#x0730 . #x074A) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
903 (#x07A6 . #x07B0) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
904 (#x07EB . #x07F3) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
905 (#x0901 . #x0902) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
906 (#x093C . #x093C) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
907 (#x0941 . #x0948) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
908 (#x094D . #x094D) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
909 (#x0951 . #x0954) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
910 (#x0962 . #x0963) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
911 (#x0981 . #x0981) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
912 (#x09BC . #x09BC) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
913 (#x09C1 . #x09C4) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
914 (#x09CD . #x09CD) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
915 (#x09E2 . #x09E3) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
916 (#x0A01 . #x0A02) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
917 (#x0A3C . #x0A3C) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
918 (#x0A41 . #x0A4D) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
919 (#x0A70 . #x0A71) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
920 (#x0A81 . #x0A82) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
921 (#x0ABC . #x0ABC) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
922 (#x0AC1 . #x0AC8) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
923 (#x0ACD . #x0ACD) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
924 (#x0AE2 . #x0AE3) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
925 (#x0B01 . #x0B01) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
926 (#x0B3C . #x0B3C) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
927 (#x0B3F . #x0B3F) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
928 (#x0B41 . #x0B43) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
929 (#x0B4D . #x0B56) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
930 (#x0B82 . #x0B82) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
931 (#x0BC0 . #x0BC0) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
932 (#x0BCD . #x0BCD) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
933 (#x0C3E . #x0C40) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
934 (#x0C46 . #x0C56) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
935 (#x0CBC . #x0CBC) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
936 (#x0CBF . #x0CBF) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
937 (#x0CC6 . #x0CC6) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
938 (#x0CCC . #x0CCD) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
939 (#x0CE2 . #x0CE3) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
940 (#x0D41 . #x0D43) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
941 (#x0D4D . #x0D4D) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
942 (#x0DCA . #x0DCA) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
943 (#x0DD2 . #x0DD6) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
944 (#x0E31 . #x0E31) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
945 (#x0E34 . #x0E3A) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
946 (#x0E47 . #x0E4E) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
947 (#x0EB1 . #x0EB1) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
948 (#x0EB4 . #x0EBC) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
949 (#x0EC8 . #x0ECD) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
950 (#x0F18 . #x0F19) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
951 (#x0F35 . #x0F35) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
952 (#x0F37 . #x0F37) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
953 (#x0F39 . #x0F39) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
954 (#x0F71 . #x0F7E) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
955 (#x0F80 . #x0F84) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
956 (#x0F86 . #x0F87) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
957 (#x0F90 . #x0FBC) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
958 (#x0FC6 . #x0FC6) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
959 (#x102D . #x1030) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
960 (#x1032 . #x1037) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
961 (#x1039 . #x1039) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
962 (#x1058 . #x1059) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
963 (#x1160 . #x11FF) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
964 (#x135F . #x135F) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
965 (#x1712 . #x1714) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
966 (#x1732 . #x1734) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
967 (#x1752 . #x1753) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
968 (#x1772 . #x1773) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
969 (#x17B4 . #x17B5) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
970 (#x17B7 . #x17BD) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
971 (#x17C6 . #x17C6) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
972 (#x17C9 . #x17D3) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
973 (#x17DD . #x17DD) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
974 (#x180B . #x180D) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
975 (#x18A9 . #x18A9) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
976 (#x1920 . #x1922) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
977 (#x1927 . #x1928) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
978 (#x1932 . #x1932) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
979 (#x1939 . #x193B) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
980 (#x1A17 . #x1A18) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
981 (#x1B00 . #x1B03) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
982 (#x1B34 . #x1B34) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
983 (#x1B36 . #x1B3A) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
984 (#x1B3C . #x1B3C) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
985 (#x1B42 . #x1B42) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
986 (#x1B6B . #x1B73) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
987 (#x1DC0 . #x1DFF) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
988 (#x200B . #x200F) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
989 (#x202A . #x202E) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
990 (#x2060 . #x206F) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
991 (#x20D0 . #x20EF) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
992 (#x302A . #x302F) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
993 (#x3099 . #x309A) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
994 (#xA806 . #xA806) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
995 (#xA80B . #xA80B) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
996 (#xA825 . #xA826) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
997 (#xFB1E . #xFB1E) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
998 (#xFE00 . #xFE0F) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
999 (#xFE20 . #xFE23) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1000 (#xFEFF . #xFEFF) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1001 (#xFFF9 . #xFFFB) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1002 (#x10A01 . #x10A0F) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1003 (#x10A38 . #x10A3F) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1004 (#x1D167 . #x1D169) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1005 (#x1D173 . #x1D182) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1006 (#x1D185 . #x1D18B) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1007 (#x1D1AA . #x1D1AD) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1008 (#x1D242 . #x1D244) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1009 (#xE0001 . #xE01EF)))) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1010 (dolist (elt l) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1011 (set-char-table-range char-width-table elt 0))) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1012 |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1013 ;; 2: East Asian Wide and Full-width characters. |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1014 (let ((l '((#x1100 . #x115F) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1015 (#x2329 . #x232A) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1016 (#x2E80 . #x303E) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1017 (#x3040 . #xA4CF) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1018 (#xAC00 . #xD7A3) |
88492
2ce720ffa865
Setup char-width-table for CJK characters.
Kenichi Handa <handa@m17n.org>
parents:
88469
diff
changeset
|
1019 (#xF900 . #xFAFF) |
90634
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1020 (#xFE30 . #xFE6F) |
90654 | 1021 (#xFF01 . #xFF60) |
90634
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1022 (#xFFE0 . #xFFE6) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1023 (#x20000 . #x2FFFF) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1024 (#x30000 . #x3FFFF)))) |
88492
2ce720ffa865
Setup char-width-table for CJK characters.
Kenichi Handa <handa@m17n.org>
parents:
88469
diff
changeset
|
1025 (dolist (elt l) |
90634
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1026 (set-char-table-range char-width-table elt 2))) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1027 |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1028 ;; Other double width |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1029 ;;(map-charset-chars |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1030 ;; (lambda (range ignore) (set-char-table-range char-width-table range 2)) |
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1031 ;; 'ethiopic) |
89117 | 1032 ;; (map-charset-chars |
1033 ;; (lambda (range ignore) (set-char-table-range char-width-table range 2)) | |
90634
d3f676f3e5cd
Delete codes for setting up charset
Kenichi Handa <handa@m17n.org>
parents:
90591
diff
changeset
|
1034 ;; 'tibetan) |
88642
3a7ca837e9b9
Additional double width specifications.
Dave Love <fx@gnu.org>
parents:
88612
diff
changeset
|
1035 (map-charset-chars |
3a7ca837e9b9
Additional double width specifications.
Dave Love <fx@gnu.org>
parents:
88612
diff
changeset
|
1036 (lambda (range ignore) (set-char-table-range char-width-table range 2)) |
3a7ca837e9b9
Additional double width specifications.
Dave Love <fx@gnu.org>
parents:
88612
diff
changeset
|
1037 'indian-2-column) |
3a7ca837e9b9
Additional double width specifications.
Dave Love <fx@gnu.org>
parents:
88612
diff
changeset
|
1038 (map-charset-chars |
3a7ca837e9b9
Additional double width specifications.
Dave Love <fx@gnu.org>
parents:
88612
diff
changeset
|
1039 (lambda (range ignore) (set-char-table-range char-width-table range 2)) |
3a7ca837e9b9
Additional double width specifications.
Dave Love <fx@gnu.org>
parents:
88612
diff
changeset
|
1040 'arabic-2-column) |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
1041 |
103629
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1042 ;; Internal use only. |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1043 ;; Alist of locale symbol vs charsets. In a language environment |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1044 ;; corresponding to the locale, width of characters in the charsets is |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1045 ;; set to 2. Each element has the form: |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1046 ;; (LOCALE TABLE (CHARSET (FROM-CODE . TO-CODE) ...) ...) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1047 ;; LOCALE: locale symbol |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1048 ;; TABLE: char-table used for char-width-table, initially nil. |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1049 ;; CAHRSET: character set |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1050 ;; FROM-CODE, TO-CODE: range of code-points in CHARSET |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1051 |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1052 (defvar cjk-char-width-table-list |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1053 '((ja_JP nil (japanese-jisx0208 (#x2121 . #x287E)) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1054 (cp932-2-byte (#x8140 . #x879F))) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1055 (zh_CN nil (chinese-gb2312 (#x2121 . #x297E))) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1056 (zh_HK nil (big5-hkscs (#xA140 . #xA3FE) (#xC6A0 . #xC8FE))) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1057 (zh_TW nil (big5 (#xA140 . #xA3FE)) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1058 (chinese-cns11643-1 (#x2121 . #x427E))) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1059 (ko_KR nil (korean-ksc5601 (#x2121 . #x2C7E))))) |
91933
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
1060 |
103629
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1061 ;; Internal use only. |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1062 ;; Setup char-width-table appropriate for a language environment |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1063 ;; corresponding to LOCALE-NAME (symbol). |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1064 |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1065 (defun use-cjk-char-width-table (locale-name) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1066 (while (char-table-parent char-width-table) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1067 (setq char-width-table (char-table-parent char-width-table))) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1068 (let ((slot (assq locale-name cjk-char-width-table-list)) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1069 table) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1070 (or slot (error "Unknown locale for CJK language environment: %s" |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1071 locale-name)) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1072 (unless (nth 1 slot) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1073 (let ((table (make-char-table nil))) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1074 (dolist (charset-info (nthcdr 2 slot)) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1075 (let ((charset (car charset-info))) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1076 (dolist (code-range (cdr charset-info)) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1077 (map-charset-chars #'(lambda (range arg) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1078 (set-char-table-range table range 2)) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1079 charset nil |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1080 (car code-range) (cdr code-range))))) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1081 (optimize-char-table table) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1082 (set-char-table-parent table char-width-table) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1083 (setcar (cdr slot) table))) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1084 (setq char-width-table (nth 1 slot)))) |
91933
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
1085 |
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
1086 (defun use-default-char-width-table () |
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
1087 "Internal use only. |
91936 | 1088 Setup char-width-table appropriate for non-CJK language environment." |
103629
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1089 (while (char-table-parent char-width-table) |
e9716d0e04ea
(cjk-char-width-table): Delete it.
Kenichi Handa <handa@m17n.org>
parents:
102617
diff
changeset
|
1090 (setq char-width-table (char-table-parent char-width-table)))) |
91933
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
1091 |
88723 | 1092 (optimize-char-table (standard-case-table)) |
1093 (optimize-char-table (standard-syntax-table)) | |
1094 | |
91933
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
1095 |
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
1096 ;; Setting char-script-table. |
1a3f22533482
Delete occurances of non-Unicode
Kenichi Handa <handa@m17n.org>
parents:
91357
diff
changeset
|
1097 |
89119 | 1098 ;; The Unicode blocks actually extend past some of these ranges with |
1099 ;; undefined codepoints. | |
88892 | 1100 (let ((script-list nil)) |
1101 (dolist | |
1102 (elt | |
89008
3e08629c1469
(script-list): Treat ascii characters as `latin' script.
Kenichi Handa <handa@m17n.org>
parents:
88976
diff
changeset
|
1103 '((#x0000 #x007F latin) |
93517
3d721e1337dd
(script-list): Add phonetic script, covering IPA (previously Latin),
Jason Rumney <jasonr@gnu.org>
parents:
91936
diff
changeset
|
1104 (#x00A0 #x024F latin) |
3d721e1337dd
(script-list): Add phonetic script, covering IPA (previously Latin),
Jason Rumney <jasonr@gnu.org>
parents:
91936
diff
changeset
|
1105 (#x0250 #x02AF phonetic) |
3d721e1337dd
(script-list): Add phonetic script, covering IPA (previously Latin),
Jason Rumney <jasonr@gnu.org>
parents:
91936
diff
changeset
|
1106 (#x02B0 #x036F latin) |
88892 | 1107 (#x0370 #x03E1 greek) |
1108 (#x03E2 #x03EF coptic) | |
1109 (#x03F0 #x03F3 greek) | |
1110 (#x0400 #x04FF cyrillic) | |
1111 (#x0530 #x058F armenian) | |
1112 (#x0590 #x05FF hebrew) | |
1113 (#x0600 #x06FF arabic) | |
1114 (#x0700 #x074F syriac) | |
90591 | 1115 (#x07C0 #x07FA nko) |
88892 | 1116 (#x0780 #x07BF thaana) |
1117 (#x0900 #x097F devanagari) | |
1118 (#x0980 #x09FF bengali) | |
1119 (#x0A00 #x0A7F gurmukhi) | |
1120 (#x0A80 #x0AFF gujarati) | |
1121 (#x0B00 #x0B7F oriya) | |
1122 (#x0B80 #x0BFF tamil) | |
1123 (#x0C00 #x0C7F telugu) | |
1124 (#x0C80 #x0CFF kannada) | |
1125 (#x0D00 #x0D7F malayalam) | |
1126 (#x0D80 #x0DFF sinhala) | |
1127 (#x0E00 #x0E5F thai) | |
1128 (#x0E80 #x0EDF lao) | |
1129 (#x0F00 #x0FFF tibetan) | |
107307
b1fd8a6d130f
Change "myanmar" to "burmese"
Kenichi Handa <handa@m17n.org>
parents:
107237
diff
changeset
|
1130 (#x1000 #x109F burmese) |
88892 | 1131 (#x10A0 #x10FF georgian) |
1132 (#x1100 #x11FF hangul) | |
90535 | 1133 (#x1200 #x139F ethiopic) |
88892 | 1134 (#x13A0 #x13FF cherokee) |
1135 (#x1400 #x167F canadian-aboriginal) | |
1136 (#x1680 #x169F ogham) | |
1137 (#x16A0 #x16FF runic) | |
1138 (#x1780 #x17FF khmer) | |
1139 (#x1800 #x18AF mongolian) | |
93517
3d721e1337dd
(script-list): Add phonetic script, covering IPA (previously Latin),
Jason Rumney <jasonr@gnu.org>
parents:
91936
diff
changeset
|
1140 (#x1D00 #x1DFF phonetic) |
88892 | 1141 (#x1E00 #x1EFF latin) |
1142 (#x1F00 #x1FFF greek) | |
89635
3d2f4775a302
(script-list): Include `currency' in `symbol'.
Kenichi Handa <handa@m17n.org>
parents:
89600
diff
changeset
|
1143 (#x2000 #x27FF symbol) |
88892 | 1144 (#x2800 #x28FF braille) |
90535 | 1145 (#x2D80 #x2DDF ethiopic) |
88892 | 1146 (#x2E80 #x2FDF han) |
1147 (#x2FF0 #x2FFF ideographic-description) | |
1148 (#x3000 #x303F cjk-misc) | |
1149 (#x3040 #x30FF kana) | |
1150 (#x3100 #x312F bopomofo) | |
1151 (#x3130 #x318F hangul) | |
1152 (#x3190 #x319F kanbun) | |
1153 (#x31A0 #x31BF bopomofo) | |
1154 (#x3400 #x9FAF han) | |
1155 (#xA000 #xA4CF yi) | |
91357 | 1156 (#xAA00 #xAA5F cham) |
107307
b1fd8a6d130f
Change "myanmar" to "burmese"
Kenichi Handa <handa@m17n.org>
parents:
107237
diff
changeset
|
1157 (#xAA60 #xAA7B burmese) |
90945
3046ffe96f58
Setup syntax/category table for Tai Viet.
Kenichi Handa <handa@m17n.org>
parents:
90792
diff
changeset
|
1158 (#xAA80 #xAADF tai-viet) |
88892 | 1159 (#xAC00 #xD7AF hangul) |
89798 | 1160 (#xF900 #xFAFF han) |
88892 | 1161 (#xFB1D #xFB4F hebrew) |
1162 (#xFB50 #xFDFF arabic) | |
1163 (#xFE70 #xFEFC arabic) | |
1164 (#xFF00 #xFF5F cjk-misc) | |
1165 (#xFF61 #xFF9F kana) | |
1166 (#xFFE0 #xFFE6 cjk-misc) | |
100493 | 1167 (#x10000 #x100FF linear-b) |
1168 (#x10100 #x1013F aegean-number) | |
1169 (#x10140 #x1018A ancient-greek-number) | |
1170 (#x10190 #x1019B ancient-symbol) | |
1171 (#x101D0 #x101FF phaistos-disc) | |
1172 (#x10280 #x1029F lycian) | |
1173 (#x102A0 #x102DF carian) | |
1174 (#x10300 #x1032F olt-italic) | |
1175 (#x10380 #x1039F ugaritic) | |
1176 (#x103A0 #x103DF old-persian) | |
1177 (#x10400 #x1044F deseret) | |
1178 (#x10450 #x1047F shavian) | |
1179 (#x10480 #x104AF osmanya) | |
1180 (#x10800 #x1083F cypriot-syllabary) | |
1181 (#x10900 #x1091F phoenician) | |
1182 (#x10920 #x1093F lydian) | |
1183 (#x10A00 #x10A5F kharoshthi) | |
1184 (#x12000 #x123FF cuneiform) | |
1185 (#x12400 #x1247F cuneiform-numbers-and-punctuation) | |
90591 | 1186 (#x1D000 #x1D0FF byzantine-musical-symbol) |
1187 (#x1D100 #x1D1FF musical-symbol) | |
100493 | 1188 (#x1D200 #x1D24F ancient-greek-musical-notation) |
1189 (#x1D300 #x1D35F tai-xuan-jing-symbol) | |
1190 (#x1D360 #x1D37F counting-rod-numeral) | |
90591 | 1191 (#x1D400 #x1D7FF mathematical) |
100493 | 1192 (#x1F000 #x1F02F mahjong-tile) |
1193 (#x1F030 #x1F09F domino-tile) | |
88971
651b64e6dce3
Call map-charset-chars on big5
Kenichi Handa <handa@m17n.org>
parents:
88892
diff
changeset
|
1194 (#x20000 #x2AFFF han) |
88892 | 1195 (#x2F800 #x2FFFF han))) |
1196 (set-char-table-range char-script-table | |
1197 (cons (car elt) (nth 1 elt)) (nth 2 elt)) | |
1198 (or (memq (nth 2 elt) script-list) | |
1199 (setq script-list (cons (nth 2 elt) script-list)))) | |
1200 (set-char-table-extra-slot char-script-table 0 (nreverse script-list))) | |
1201 | |
89483 | 1202 (map-charset-chars |
89291
b73d29dcc8c0
Make all chararacters in the charset tibetan to tibetan script.
Kenichi Handa <handa@m17n.org>
parents:
89188
diff
changeset
|
1203 #'(lambda (range ignore) |
b73d29dcc8c0
Make all chararacters in the charset tibetan to tibetan script.
Kenichi Handa <handa@m17n.org>
parents:
89188
diff
changeset
|
1204 (set-char-table-range char-script-table range 'tibetan)) |
b73d29dcc8c0
Make all chararacters in the charset tibetan to tibetan script.
Kenichi Handa <handa@m17n.org>
parents:
89188
diff
changeset
|
1205 'tibetan) |
b73d29dcc8c0
Make all chararacters in the charset tibetan to tibetan script.
Kenichi Handa <handa@m17n.org>
parents:
89188
diff
changeset
|
1206 |
88971
651b64e6dce3
Call map-charset-chars on big5
Kenichi Handa <handa@m17n.org>
parents:
88892
diff
changeset
|
1207 |
97842
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1208 ;;; Setting unicode-category-table. |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1209 |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1210 ;; This macro is to build unicode-category-table at compile time so |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1211 ;; that C code can access the table efficiently. |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1212 (defmacro build-unicode-category-table () |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1213 (let ((table (make-char-table 'unicode-category-table nil))) |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1214 (dotimes (i #x110000) |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1215 (if (or (< i #xD800) |
104052
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
1216 (and (>= i #xF900) (< i #x30000)) |
f317b7c46271
Fix setting of category ?C, ?|, ?K,
Kenichi Handa <handa@m17n.org>
parents:
103882
diff
changeset
|
1217 (and (>= i #xE0000) (< i #xE0200))) |
97842
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1218 (aset table i (get-char-code-property i 'general-category)))) |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1219 (set-char-table-range table '(#xE000 . #xF8FF) 'Co) |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1220 (set-char-table-range table '(#xF0000 . #xFFFFD) 'Co) |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1221 (set-char-table-range table '(#x100000 . #x10FFFD) 'Co) |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1222 (optimize-char-table table 'eq) |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1223 table)) |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1224 |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1225 (setq unicode-category-table (build-unicode-category-table)) |
101961
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
1226 (map-char-table #'(lambda (key val) |
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
1227 (if (and val |
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
1228 (or (and (/= (aref (symbol-name val) 0) ?M) |
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
1229 (/= (aref (symbol-name val) 0) ?C)) |
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
1230 (eq val 'Zs))) |
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
1231 (modify-category-entry key ?.))) |
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
1232 unicode-category-table) |
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
1233 |
35c1915c9f6b
(?.): New character category for
Kenichi Handa <handa@m17n.org>
parents:
100908
diff
changeset
|
1234 (optimize-char-table (standard-category-table)) |
97842
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1235 |
8dfd5f6c48e4
(unicode-category-table): Setup unicode-category-table.
Kenichi Handa <handa@m17n.org>
parents:
94664
diff
changeset
|
1236 |
111235
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1237 ;; Display of glyphless characters. |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1238 |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1239 (defvar char-acronym-table |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1240 (make-char-table 'char-acronym-table nil) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1241 "Char table of acronyms for non-graphic characters.") |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1242 |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1243 (let ((c0-acronyms '("NUL" "SOH" "STX" "ETX" "EOT" "ENQ" "ACK" "BEL" |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1244 "BS" nil nil "VT" "FF" "CR" "SO" "SI" |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1245 "DLE" "DC1" "DC2" "DC3" "DC4" "NAK" "SYN" "ETB" |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1246 "CAN" "EM" "SUB" "ESC" "FC" "GS" "RS" "US"))) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1247 (dotimes (i 32) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1248 (aset char-acronym-table i (car c0-acronyms)) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1249 (setq c0-acronyms (cdr c0-acronyms)))) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1250 |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1251 (let ((c1-acronyms '("XXX" "XXX" "BPH" "NBH" "IND" "NEL" "SSA" "ESA" |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1252 "HTS" "HTJ" "VTS" "PLD" "PLU" "R1" "SS2" "SS1" |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1253 "DCS" "PU1" "PU2" "STS" "CCH" "MW" "SPA" "EPA" |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1254 "SOS" "XXX" "SC1" "CSI" "ST" "OSC" "PM" "APC"))) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1255 (dotimes (i 32) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1256 (aset char-acronym-table (+ #x0080 i) (car c1-acronyms)) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1257 (setq c1-acronyms (cdr c1-acronyms)))) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1258 |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1259 (aset char-acronym-table #x17B4 "KIVAQ") ; KHMER VOWEL INHERENT AQ |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1260 (aset char-acronym-table #x17B5 "KIVAA") ; KHMER VOWEL INHERENT AA |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1261 (aset char-acronym-table #x200B "ZWSP") ; ZERO WIDTH SPACE |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1262 (aset char-acronym-table #x200C "ZWNJ") ; ZERO WIDTH NON-JOINER |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1263 (aset char-acronym-table #x200D "ZWJ") ; ZERO WIDTH JOINER |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1264 (aset char-acronym-table #x200E "LRM") ; LEFT-TO-RIGHT MARK |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1265 (aset char-acronym-table #x200F "RLM") ; RIGHT-TO-LEFT MARK |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1266 (aset char-acronym-table #x202A "LRE") ; LEFT-TO-RIGHT EMBEDDING |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1267 (aset char-acronym-table #x202B "RLE") ; RIGHT-TO-LEFT EMBEDDING |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1268 (aset char-acronym-table #x202C "PDF") ; POP DIRECTIONAL FORMATTING |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1269 (aset char-acronym-table #x202D "LRO") ; LEFT-TO-RIGHT OVERRIDE |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1270 (aset char-acronym-table #x202E "RLO") ; RIGHT-TO-LEFT OVERRIDE |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1271 (aset char-acronym-table #x2060 "WJ") ; WORD JOINER |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1272 (aset char-acronym-table #x206A "ISS") ; INHIBIT SYMMETRIC SWAPPING |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1273 (aset char-acronym-table #x206B "ASS") ; ACTIVATE SYMMETRIC SWAPPING |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1274 (aset char-acronym-table #x206C "IAFS") ; INHIBIT ARABIC FORM SHAPING |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1275 (aset char-acronym-table #x206D "AAFS") ; ACTIVATE ARABIC FORM SHAPING |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1276 (aset char-acronym-table #x206E "NADS") ; NATIONAL DIGIT SHAPES |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1277 (aset char-acronym-table #x206F "NODS") ; NOMINAL DIGIT SHAPES |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1278 (aset char-acronym-table #xFEFF "ZWNBSP") ; ZERO WIDTH NO-BREAK SPACE |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1279 (aset char-acronym-table #xFFF9 "IAA") ; INTERLINEAR ANNOTATION ANCHOR |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1280 (aset char-acronym-table #xFFFA "IAS") ; INTERLINEAR ANNOTATION SEPARATOR |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1281 (aset char-acronym-table #xFFFB "IAT") ; INTERLINEAR ANNOTATION TERMINATOR |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1282 (aset char-acronym-table #x1D173 "BEGBM") ; MUSICAL SYMBOL BEGIN BEAM |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1283 (aset char-acronym-table #x1D174 "ENDBM") ; MUSICAL SYMBOL END BEAM |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1284 (aset char-acronym-table #x1D175 "BEGTIE") ; MUSICAL SYMBOL BEGIN TIE |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1285 (aset char-acronym-table #x1D176 "END") ; MUSICAL SYMBOL END TIE |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1286 (aset char-acronym-table #x1D177 "BEGSLR") ; MUSICAL SYMBOL BEGIN SLUR |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1287 (aset char-acronym-table #x1D178 "ENDSLR") ; MUSICAL SYMBOL END SLUR |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1288 (aset char-acronym-table #x1D179 "BEGPHR") ; MUSICAL SYMBOL BEGIN PHRASE |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1289 (aset char-acronym-table #x1D17A "ENDPHR") ; MUSICAL SYMBOL END PHRASE |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1290 (aset char-acronym-table #xE0001 "|->TAG") ; LANGUAGE TAG |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1291 (aset char-acronym-table #xE0020 "SP TAG") ; TAG SPACE |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1292 (dotimes (i 94) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1293 (aset char-acronym-table (+ #xE0021 i) (format " %c TAG" (+ 33 i)))) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1294 (aset char-acronym-table #xE007F "->|TAG") ; CANCEL TAG |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1295 |
111649
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1296 (defun update-glyphless-char-display (&optional variable value) |
111526
5c986eef8f0d
Fix and document display of glyphless characters.
Eli Zaretskii <eliz@gnu.org>
parents:
111235
diff
changeset
|
1297 "Make the setting of `glyphless-char-display-control' take effect. |
111235
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1298 This function updates the char-table `glyphless-char-display'." |
111649
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1299 (when value |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1300 (set-default variable value)) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1301 (dolist (elt value) |
111235
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1302 (let ((target (car elt)) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1303 (method (cdr elt))) |
111526
5c986eef8f0d
Fix and document display of glyphless characters.
Eli Zaretskii <eliz@gnu.org>
parents:
111235
diff
changeset
|
1304 (or (memq method '(zero-width thin-space empty-box acronym hex-code)) |
5c986eef8f0d
Fix and document display of glyphless characters.
Eli Zaretskii <eliz@gnu.org>
parents:
111235
diff
changeset
|
1305 (error "Invalid glyphless character display method: %s" method)) |
111235
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1306 (cond ((eq target 'c0-control) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1307 (set-char-table-range glyphless-char-display '(#x00 . #x1F) |
111742
f026c8607795
Exclude NL and TAB from c0-control group for glyphless display.
Eli Zaretskii <eliz@gnu.org>
parents:
111649
diff
changeset
|
1308 method) |
f026c8607795
Exclude NL and TAB from c0-control group for glyphless display.
Eli Zaretskii <eliz@gnu.org>
parents:
111649
diff
changeset
|
1309 ;; Users will not expect their newlines and TABs be |
f026c8607795
Exclude NL and TAB from c0-control group for glyphless display.
Eli Zaretskii <eliz@gnu.org>
parents:
111649
diff
changeset
|
1310 ;; displayed as anything but themselves, so exempt those |
f026c8607795
Exclude NL and TAB from c0-control group for glyphless display.
Eli Zaretskii <eliz@gnu.org>
parents:
111649
diff
changeset
|
1311 ;; two characters from c0-control. |
f026c8607795
Exclude NL and TAB from c0-control group for glyphless display.
Eli Zaretskii <eliz@gnu.org>
parents:
111649
diff
changeset
|
1312 (set-char-table-range glyphless-char-display #x9 nil) |
f026c8607795
Exclude NL and TAB from c0-control group for glyphless display.
Eli Zaretskii <eliz@gnu.org>
parents:
111649
diff
changeset
|
1313 (set-char-table-range glyphless-char-display #xa nil)) |
111235
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1314 ((eq target 'c1-control) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1315 (set-char-table-range glyphless-char-display '(#x80 . #x9F) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1316 method)) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1317 ((eq target 'format-control) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1318 (map-char-table |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1319 #'(lambda (char category) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1320 (if (eq category 'Cf) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1321 (let ((this-method method) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1322 from to) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1323 (if (consp char) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1324 (setq from (car char) to (cdr char)) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1325 (setq from char to char)) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1326 (while (<= from to) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1327 (when (/= from #xAD) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1328 (if (eq method 'acronym) |
111526
5c986eef8f0d
Fix and document display of glyphless characters.
Eli Zaretskii <eliz@gnu.org>
parents:
111235
diff
changeset
|
1329 (setq this-method |
111235
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1330 (aref char-acronym-table from))) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1331 (set-char-table-range glyphless-char-display |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1332 from this-method)) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1333 (setq from (1+ from)))))) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1334 unicode-category-table)) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1335 ((eq target 'no-font) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1336 (set-char-table-extra-slot glyphless-char-display 0 method)) |
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1337 (t |
111526
5c986eef8f0d
Fix and document display of glyphless characters.
Eli Zaretskii <eliz@gnu.org>
parents:
111235
diff
changeset
|
1338 (error "Invalid glyphless character group: %s" target)))))) |
111235
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1339 |
111649
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1340 ;;; Control of displaying glyphless characters. |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1341 (defcustom glyphless-char-display-control |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1342 '((format-control . thin-space) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1343 (no-font . hex-code)) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1344 "List of directives to control display of glyphless characters. |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1345 |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1346 Each element has the form (GROUP . METHOD), where GROUP is a |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1347 symbol specifying the character group, and METHOD is a symbol |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1348 specifying the method of displaying characters belonging to that |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1349 group. |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1350 |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1351 GROUP must be one of these symbols: |
111742
f026c8607795
Exclude NL and TAB from c0-control group for glyphless display.
Eli Zaretskii <eliz@gnu.org>
parents:
111649
diff
changeset
|
1352 `c0-control': U+0000..U+001F, but excluding newline and TAB. |
111649
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1353 `c1-control': U+0080..U+009F. |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1354 `format-control': Characters of Unicode General Category `Cf', |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1355 such as U+200C (ZWNJ), U+200E (LRM), but |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1356 excluding characters that have graphic images, |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1357 such as U+00AD (SHY). |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1358 `no-font': characters for which no suitable font is found. |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1359 For character terminals, characters that cannot |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1360 be encoded by `terminal-coding-system'. |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1361 |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1362 METHOD must be one of these symbols: |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1363 `zero-width': don't display. |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1364 `thin-space': display a thin (1-pixel width) space. On character |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1365 terminals, display as 1-character space. |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1366 `empty-box': display an empty box. |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1367 `acronym': display an acronym of the character in a box. The |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1368 acronym is taken from `char-acronym-table', which see. |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1369 `hex-code': display the hexadecimal character code in a box." |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1370 |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1371 :type '(alist :key-type (symbol :tag "Character Group") |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1372 :value-type (symbol :tag "Display Method")) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1373 :options '((c0-control |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1374 (choice (const :tag "Don't display" zero-width) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1375 (const :tag "Display as thin space" thin-space) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1376 (const :tag "Display as empty box" empty-box) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1377 (const :tag "Display acronym" acronym) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1378 (const :tag "Display hex code in a box" hex-code))) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1379 (c1-control |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1380 (choice (const :tag "Don't display" zero-width) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1381 (const :tag "Display as thin space" thin-space) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1382 (const :tag "Display as empty box" empty-box) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1383 (const :tag "Display acronym" acronym) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1384 (const :tag "Display hex code in a box" hex-code))) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1385 (format-control |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1386 (choice (const :tag "Don't display" zero-width) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1387 (const :tag "Display as thin space" thin-space) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1388 (const :tag "Display as empty box" empty-box) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1389 (const :tag "Display acronym" acronym) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1390 (const :tag "Display hex code in a box" hex-code))) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1391 (no-font |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1392 (choice (const :tag "Don't display" zero-width) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1393 (const :tag "Display as thin space" thin-space) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1394 (const :tag "Display as empty box" empty-box) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1395 (const :tag "Display acronym" acronym) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1396 (const :tag "Display hex code in a box" hex-code)))) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1397 :set 'update-glyphless-char-display |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1398 :group 'display) |
342ca5475c01
Make glyphless-char-display-control a defcustom.
Eli Zaretskii <eliz@gnu.org>
parents:
111526
diff
changeset
|
1399 |
111235
24c75a5f002a
Implement various display methods for glyphless characters.
Kenichi Handa <handa@m17n.org>
parents:
111035
diff
changeset
|
1400 |
17052 | 1401 ;;; Setting word boundary. |
1402 | |
1403 (setq word-combining-categories | |
99017 | 1404 '((nil . ?^) |
1405 (?^ . nil) | |
71399
00a410533438
(word-combining-categories): Add entries for 2-byte Han characters.
Kenichi Handa <handa@m17n.org>
parents:
69803
diff
changeset
|
1406 (?C . ?H) |
00a410533438
(word-combining-categories): Add entries for 2-byte Han characters.
Kenichi Handa <handa@m17n.org>
parents:
69803
diff
changeset
|
1407 (?C . ?K))) |
17052 | 1408 |
1409 (setq word-separating-categories ; (2-byte character sets) | |
99017 | 1410 '((?H . ?K) ; Hiragana - Katakana |
17052 | 1411 )) |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
1412 |
84658
d1ea5efb14f2
Fix up comment style.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
78310
diff
changeset
|
1413 ;; Local Variables: |
91046 | 1414 ;; coding: utf-8 |
84658
d1ea5efb14f2
Fix up comment style.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
78310
diff
changeset
|
1415 ;; End: |
20734
179dbdbc3882
Put `prefered-coding-system'
Kenichi Handa <handa@m17n.org>
parents:
20247
diff
changeset
|
1416 |
84658
d1ea5efb14f2
Fix up comment style.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
78310
diff
changeset
|
1417 ;; arch-tag: 85889c35-9f4d-4912-9bf5-82de31b0d42d |
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
36688
diff
changeset
|
1418 ;;; characters.el ends here |