Mercurial > emacs
annotate lisp/language/ind-util.el @ 89178:1959fdc1c405
(quoted-printable-encode-region): Go to start of range
before searching.
(quoted-printable-encode-region): Use multibyte-char-to-unibyte.
author | Dave Love <fx@gnu.org> |
---|---|
date | Mon, 07 Oct 2002 17:39:34 +0000 |
parents | baa9de960667 |
children | 17709000b5f0 |
rev | line source |
---|---|
41470 | 1 ;;; ind-util.el --- Transliteration and Misc. Tools for Indian Languages -*- coding: iso-2022-7bit; -*- |
2 | |
3 ;; Copyright (C) 2001 Free Software Foundation, Inc. | |
4 | |
5 ;; Maintainer: KAWABATA, Taichi <batta@beige.ocn.ne.jp> | |
6 ;; Keywords: multilingual, Indian, Devanagari | |
7 | |
8 ;; This file is part of GNU Emacs. | |
9 | |
10 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
11 ;; it under the terms of the GNU General Public License as published by | |
12 ;; the Free Software Foundation; either version 2, or (at your option) | |
13 ;; any later version. | |
14 | |
15 ;; GNU Emacs is distributed in the hope that it will be useful, | |
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
18 ;; GNU General Public License for more details. | |
19 | |
20 ;; You should have received a copy of the GNU General Public License | |
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the | |
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
23 ;; Boston, MA 02111-1307, USA. | |
24 | |
25 ;;; Commentary: | |
26 | |
27 ;; This file provides conversion between UCS and various | |
28 ;; transliteration schemes, such as ITRANS, kyoto-harvard and aiba | |
29 ;; methods. It also provides conversion between IS 13194 and UCS. | |
30 ;; Finally, this program provides the compatibility support with | |
31 ;; old implementation of Devanagari script. | |
32 | |
33 ;;; Code: | |
34 | |
35 ;;; Transliteration | |
36 | |
37 ;; The followings provide the various transliteration schemes (such as | |
38 ;; ITRANS, kyoto-harvard, and Aiba) of Indian scripts. They are also | |
39 ;; used in quail/indian.el for typing Indian script in Emacs. | |
40 | |
41 (eval-and-compile | |
42 | |
42060
f3b460667d31
(range): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
42056
diff
changeset
|
43 (defun indian-regexp-of-hashtbl-keys (hashtbl) |
41470 | 44 "Returns the regular expression of hashtable keys." |
45 (let ((max-specpdl-size 1000)) | |
46 (regexp-opt | |
89094 | 47 (sort |
41470 | 48 (let (dummy) |
42056 | 49 (maphash (function (lambda (key val) (setq dummy (cons key dummy)))) |
50 hashtbl) | |
41470 | 51 dummy) |
52 (function (lambda (x y) (> (length x) (length y)))))))) | |
53 | |
54 (defvar indian-dev-base-table | |
55 '( | |
56 (;; VOWELS (18) | |
57 (?$,15E(B nil) (?$,15F(B ?$,15~(B) (?$,15G(B ?$,15(B) (?$,15H(B ?$,16 (B) (?$,15I(B ?$,16!(B) (?$,15J(B ?$,16"(B) | |
58 (?$,15K(B ?$,16#(B) (?$,15L(B ?$,16$(B) (?$,15M(B ?$,16%(B) (?$,15N(B ?$,16&(B) (?$,15O(B ?$,16'(B) (?$,15P(B ?$,16((B) | |
59 (?$,15Q(B ?$,16)(B) (?$,15R(B ?$,16*(B) (?$,15S(B ?$,16+(B) (?$,15T(B ?$,16,(B) (?$,16@(B ?$,16B(B) (?$,16A(B ?$,16C(B)) | |
60 (;; CONSONANTS (currently 42, including special cases) | |
61 ?$,15U(B ?$,15V(B ?$,15W(B ?$,15X(B ?$,15Y(B ;; GUTTRULS | |
89094 | 62 ?$,15Z(B ?$,15[(B ?$,15\(B ?$,15](B ?$,15^(B ;; PALATALS |
63 ?$,15_(B ?$,15`(B ?$,15a(B ?$,15b(B ?$,15c(B ;; CEREBRALS | |
64 ?$,15d(B ?$,15e(B ?$,15f(B ?$,15g(B ?$,15h(B ?$,15i(B ;; DENTALS | |
65 ?$,15j(B ?$,15k(B ?$,15l(B ?$,15m(B ?$,15n(B ;; LABIALS | |
41470 | 66 ?$,15o(B ?$,15p(B ?$,15q(B ?$,15r(B ?$,15s(B ?$,15t(B ?$,15u(B ;; SEMIVOWELS |
89094 | 67 ?$,15v(B ?$,15w(B ?$,15x(B ?$,15y(B ;; SIBILANTS |
68 ?$,168(B ?$,169(B ?$,16:(B ?$,16;(B ?$,16<(B ?$,16=(B ?$,16>(B ?$,16?(B ;; NUKTAS | |
41470 | 69 "$,15\6-5^(B" "$,15U6-5w(B") |
89094 | 70 (;; Misc Symbols (7) |
41470 | 71 ?$,15A(B ?$,15B(B ?$,15C(B ?$,15}(B ?$,16-(B ?$,160(B ?$,16D(B) |
72 (;; Digits (10) | |
73 ?$,16F(B ?$,16G(B ?$,16H(B ?$,16I(B ?$,16J(B ?$,16K(B ?$,16L(B ?$,16M(B ?$,16N(B ?$,16O(B) | |
74 (;; Inscript-extra (4) (#, $, ^, *, ]) | |
75 "$,16-5p(B" "$,15p6-(B" "$,15d6-5p(B" "$,15v6-5p(B" "$,15|(B"))) | |
76 | |
77 (defvar indian-pnj-base-table nil) | |
78 (defvar indian-ori-base-table nil) | |
79 (defvar indian-bng-base-table nil) | |
80 (defvar indian-asm-base-table nil) | |
81 (defvar indian-tlg-base-table nil) | |
82 (defvar indian-knd-base-table nil) | |
83 (defvar indian-mlm-base-table nil) | |
84 (defvar indian-tml-base-table nil) | |
85 | |
86 (defvar indian-base-table-to-language-alist | |
87 '((indian-dev-base-table . "Devanagari") | |
89094 | 88 (indian-pnj-base-table . "Punjabi") |
41470 | 89 (indian-ori-base-table . "Oriya") |
90 (indian-bng-base-table . "Bengali") | |
91 (indian-asm-base-table . "Assamese") | |
92 (indian-tlg-base-table . "Telugu") | |
93 (indian-knd-base-table . "Kannada") | |
94 (indian-mlm-base-table . "Malayalam") | |
95 (indian-tml-base-table . "Tamil"))) | |
96 | |
97 (defvar indian-itrans-v5-table | |
98 '(;; for encode/decode | |
99 (;; vowels -- 18 | |
100 "a" ("aa" "A") "i" ("ii" "I") "u" ("uu" "U") | |
101 ("RRi" "R^i") ("LLi" "L^i") (".c" "e.c") nil "e" "ai" | |
102 "o.c" nil "o" "au" ("RRI" "R^I") ("LLI" "L^I")) | |
89094 | 103 (;; consonants -- 40 |
41470 | 104 "k" "kh" "g" "gh" ("~N" "N^") |
105 "ch" ("Ch" "chh") "j" "jh" ("~n" "JN") | |
106 "T" "Th" "D" "Dh" "N" | |
89094 | 107 "t" "th" "d" "dh" "n" "nh" |
41470 | 108 "p" "ph" "b" "bh" "m" |
109 "y" "r" "rh" "l" ("L" "ld") nil ("v" "w") | |
110 "sh" ("Sh" "shh") "s" "h" | |
111 "q" "K" "G" ("J" "z") ".D" ".Dh" "f" ("Y" "yh") | |
112 ("GY" "dny") "x") | |
113 (;; misc -- 7 | |
114 ".N" (".n" "M") "H" ".a" ".h" ("AUM" "OM") ".."))) | |
115 | |
116 (defvar indian-kyoto-harvard-table | |
117 '(;; for encode/decode | |
118 (;; vowel | |
119 "a" ("A" "aa") "i" ("I" "ii") "u" ("U" "uu") | |
120 "R" ("L" "lR") nil nil "e" "ai" | |
121 nil nil "o" "au" ("q" "RR" "Q") ("E" "LL" "lRR")) | |
122 (;; consonant | |
123 "k" "kh" "g" "gh" "G" | |
124 "c" "ch" "j" "jh" "J" | |
125 "T" "Th" "D" "Dh" "N" | |
126 "t" "th" "d" "dh" "n" nil | |
127 "p" "ph" "b" "bh" "m" | |
128 "y" "r" nil "l" "L" nil "v" | |
129 ("z" "Z") "S" "s" "h" | |
130 nil nil nil nil nil nil nil nil | |
131 nil nil) | |
132 (;; misc | |
133 nil "M" "H" "'" nil "." nil))) | |
134 | |
135 (defvar indian-harvard-table | |
136 '(;; for encode/decode | |
137 (;; vowel | |
138 "a" ("A" "aa") "i" ("I" "ii") "u" ("U" "uu") | |
139 "R" ("L" "lR") nil nil "e" "ai" | |
140 nil nil "o" "au" ("RR" "q" "Q") ("LL" "E" "lRR")) | |
141 (;; consonant | |
142 "k" "kh" "g" "gh" "G" | |
143 "c" "ch" "j" "jh" "J" | |
144 "T" "Th" "D" "Dh" "N" | |
145 "t" "th" "d" "dh" "n" nil | |
146 "p" "ph" "b" "bh" "m" | |
147 "y" "r" nil "l" "L" nil "v" | |
148 ("z" "Z") "S" "s" "h" | |
149 nil nil nil nil nil nil nil nil | |
150 nil nil) | |
151 (;; misc | |
152 nil "M" "H" "'" nil "." nil))) | |
153 | |
154 (defvar indian-tokyo-table | |
155 '(;; for encode/decode | |
156 (;; vowel | |
157 "a" ("A" "aa") "i" ("I" "ii") "u" ("U" "uu") | |
158 "R" ("L" "lR") nil nil "e" "ai" | |
159 nil nil "o" "au" ("Q" "RR" "q") ("E" "LL" "lRR")) | |
160 (;; consonant | |
161 "k" "kh" "g" "gh" "G" | |
162 "c" "ch" "j" "jh" "J" | |
163 "T" "Th" "D" "Dh" "N" | |
164 "t" "th" "d" "dh" "n" nil | |
165 "p" "ph" "b" "bh" "m" | |
166 "y" "r" nil "l" "L" nil "v" | |
167 ("Z" "z") "S" "s" "h" | |
168 nil nil nil nil nil nil nil nil | |
169 nil nil) | |
170 (;; misc | |
171 nil "M" "H" "'" nil "." nil))) | |
172 | |
173 (defvar indian-aiba-table | |
174 '(;; for encode/decode | |
175 (;; vowel | |
176 "a" "aa" "i" "ii" "u" "uu" | |
177 ".r" ".l" nil nil "e" "ai" | |
178 nil nil "o" "au" "~r" "~l") | |
179 (;; consonant | |
180 "k" "kh" "g" "gh" "^n" | |
181 "c" "ch" "j" "jh" "~n" | |
182 ".t" ".th" ".d" ".dh" ".n" | |
183 "t" "th" "d" "dh" "n" nil | |
184 "p" "ph" "b" "bh" "m" | |
185 "y" "r" nil "l" nil nil "v" | |
186 "^s" ".s" "s" "h" | |
187 nil nil nil nil nil nil nil nil | |
188 nil nil) | |
189 (;; misc | |
190 nil ".m" ".h" "'" nil "." nil))) | |
191 | |
192 (defun mapthread (function seq1 &rest seqrest) | |
193 "Apply FUNCTION to each element of SEQ1 and return result list. | |
194 If there are several SEQRESTs, FUNCTION is called with that many | |
195 arguments, with all possible combinations of these multiple SEQUENCES. | |
196 Thus, if SEQ1 contains 3 elements and SEQ2 contains 5 elements, then | |
197 FUNCTION will be called 15 times." | |
198 (if seqrest | |
89094 | 199 (mapcar |
41470 | 200 (lambda (x) |
89094 | 201 (apply |
202 'mapthread | |
203 `(lambda (&rest y) (apply ',function x y)) | |
204 seqrest)) | |
41470 | 205 seq1) |
206 (mapcar function seq1))) | |
207 | |
208 (defun indian--puthash-char (char trans-char hashtbls) | |
209 (let ((encode-hash (car hashtbls)) ;; char -> trans | |
210 (decode-hash (cdr hashtbls)) ;; trans -> char | |
211 ) | |
212 ;; char -- nil / char / string (/ list of vowel & matra) | |
213 ;; trans-char -- nil / string / list of strings | |
214 (when (and char trans-char) | |
215 (if (stringp trans-char) (setq trans-char (list trans-char))) | |
88620 | 216 (if (characterp char) (setq char (char-to-string char))) |
41470 | 217 (puthash char (car trans-char) encode-hash) |
218 (mapc | |
42056 | 219 (lambda (trans) |
220 (puthash trans char decode-hash)) | |
41470 | 221 trans-char)))) |
222 | |
42056 | 223 (defun indian--map (f l1 l2) |
224 (while l1 | |
225 (funcall f (pop l1) (pop l2)))) | |
226 | |
41470 | 227 (defun indian--puthash-v (v trans-v hashtbls) |
89094 | 228 (indian--map |
42056 | 229 (lambda (v trans-v) |
230 (indian--puthash-char (car v) trans-v hashtbls)) | |
41470 | 231 v trans-v)) |
232 | |
233 (defun indian--puthash-c (c trans-c halant hashtbls) | |
42056 | 234 (indian--map |
235 (lambda (c trans-c) | |
88620 | 236 (if (characterp c) (setq c (char-to-string c))) |
42056 | 237 (indian--puthash-char (concat c halant) trans-c hashtbls)) |
41470 | 238 c trans-c)) |
239 | |
240 (defun indian--puthash-m (m trans-m hashtbls) | |
42056 | 241 (indian--map |
242 (lambda (m trans-m) | |
243 (indian--puthash-char m trans-m hashtbls)) | |
41470 | 244 m trans-m)) |
245 | |
246 (defun indian--puthash-cv (c trans-c v trans-v hashtbls) | |
42056 | 247 (indian--map |
248 (lambda (c trans-c) | |
249 (indian--map | |
250 (lambda (v trans-v) | |
251 (when (and c trans-c v trans-v) | |
88620 | 252 (if (characterp c) (setq c (char-to-string c))) |
253 (setq v (if (characterp (cadr v)) (char-to-string (cadr v)) "")) | |
42056 | 254 (if (stringp trans-c) (setq trans-c (list trans-c))) |
255 (if (stringp trans-v) (setq trans-v (list trans-v))) | |
89094 | 256 (indian--puthash-char |
42056 | 257 (concat c v) |
258 (apply 'append | |
259 (mapthread 'concat trans-c trans-v)) | |
260 hashtbls))) | |
261 v trans-v)) | |
41470 | 262 c trans-c)) |
263 | |
264 (defun indian-make-hash (table trans-table) | |
265 "Indian Transliteration Hash for decode/encode" | |
266 (let* ((encode-hash (makehash 'equal)) | |
267 (decode-hash (makehash 'equal)) | |
268 (hashtbls (cons encode-hash decode-hash)) | |
269 (vowels (elt table 0)) | |
270 (consonants (elt table 1)) | |
271 (misc (elt table 2)) | |
272 (digits (elt table 3)) | |
273 (halant (char-to-string (elt misc 4))) | |
274 (trans-vowels (elt trans-table 0)) | |
275 (trans-consonants (elt trans-table 1)) | |
276 (trans-misc (elt trans-table 2)) | |
277 (trans-digits '("0" "1" "2" "3" "4" "5" "6" "7" "8" "9"))) | |
278 (indian--puthash-v vowels trans-vowels hashtbls) | |
279 (indian--puthash-c consonants trans-consonants halant hashtbls) | |
89094 | 280 (indian--puthash-cv consonants trans-consonants |
41470 | 281 vowels trans-vowels hashtbls) |
282 (indian--puthash-m misc trans-misc hashtbls) | |
283 (indian--puthash-m digits trans-digits hashtbls) | |
284 hashtbls)) | |
285 | |
286 (defvar indian-dev-itrans-v5-hash | |
287 (indian-make-hash indian-dev-base-table | |
288 indian-itrans-v5-table)) | |
289 (defvar indian-dev-kyoto-harvard-hash | |
290 (indian-make-hash indian-dev-base-table | |
291 indian-kyoto-harvard-table)) | |
292 (defvar indian-dev-aiba-hash | |
293 (indian-make-hash indian-dev-base-table | |
294 indian-aiba-table)) | |
295 | |
296 ) | |
297 | |
298 (defmacro indian-translate-region (from to hashtable encode-p) | |
299 `(save-excursion | |
300 (save-restriction | |
89094 | 301 (let ((regexp ,(indian-regexp-of-hashtbl-keys |
302 (if encode-p (car (eval hashtable)) | |
41470 | 303 (cdr (eval hashtable)))))) |
304 (narrow-to-region from to) | |
305 (goto-char (point-min)) | |
306 (while (re-search-forward regexp nil t) | |
89094 | 307 (let ((matchstr (gethash (match-string 0) |
42056 | 308 (if ,encode-p |
309 (car ,hashtable) | |
310 (cdr ,hashtable))))) | |
41470 | 311 (if matchstr (replace-match matchstr)))))))) |
312 | |
313 ;;; | |
314 | |
315 (defun indian-dev-itrans-v5-encode-region (from to) | |
316 (interactive "r") | |
89094 | 317 (indian-translate-region |
41470 | 318 from to indian-dev-itrans-v5-hash t)) |
319 | |
320 (defun indian-dev-itrans-v5-decode-region (from to) | |
321 (interactive "r") | |
322 (indian-translate-region | |
323 from to indian-dev-itrans-v5-hash nil)) | |
324 | |
325 (defun indian-dev-kyoto-harvard-encode-region (from to) | |
326 (interactive "r") | |
89094 | 327 (indian-translate-region |
41470 | 328 from to indian-dev-kyoto-harvard-hash t)) |
329 | |
330 (defun indian-dev-kyoto-harvard-decode-region (from to) | |
331 (interactive "r") | |
332 (indian-translate-region | |
333 from to indian-dev-kyoto-harvard-hash nil)) | |
334 | |
335 (defun indian-dev-aiba-encode-region (from to) | |
336 (interactive "r") | |
89094 | 337 (indian-translate-region |
41470 | 338 from to indian-dev-aiba-hash t)) |
339 | |
340 (defun indian-dev-aiba-decode-region (from to) | |
341 (interactive "r") | |
342 (indian-translate-region | |
343 from to indian-dev-aiba-hash nil)) | |
344 | |
345 | |
346 | |
347 | |
348 ;;; IS 13194 utilities | |
349 | |
89094 | 350 ;; The following provide conversion between IS 13194 (ISCII) and UCS. |
41470 | 351 |
89094 | 352 (defvar is13194-default-repertory 'devanagari) |
41470 | 353 |
354 (defvar is13194-repertory-to-ucs-script | |
89094 | 355 `((DEF ?\x40 ,is13194-default-repertory) |
356 (RMN ?\x41 ,is13194-default-repertory) | |
41470 | 357 (DEV ?\x42 devanagari) |
358 (BNG ?\x43 bengali) | |
359 (TML ?\x44 tamil) | |
360 (TLG ?\x45 telugu) | |
361 (ASM ?\x46 bengali) | |
362 (ORI ?\x47 oriya) | |
363 (KND ?\x48 kannada) | |
364 (MLM ?\x49 malayalam) | |
365 (GJR ?\x4a gujarati) | |
366 (PNJ ?\x4b gurmukhi))) | |
367 | |
368 ;; for guiding find-variable function. | |
369 (defvar is13194-to-ucs-devanagari-hashtbl nil) | |
370 (defvar is13194-to-ucs-devanagari-regexp nil) | |
371 (defvar is13194-to-ucs-bengali-hashtbl nil) | |
372 (defvar is13194-to-ucs-bengali-regexp nil) | |
373 (defvar is13194-to-ucs-assamese-hashtbl nil) | |
374 (defvar is13194-to-ucs-assamese-regexp nil) | |
375 (defvar is13194-to-ucs-gurmukhi-hashtbl nil) | |
376 (defvar is13194-to-ucs-gurmukhi-regexp nil) | |
377 (defvar is13194-to-ucs-gujarati-hashtbl nil) | |
378 (defvar is13194-to-ucs-gujarati-regexp nil) | |
379 (defvar is13194-to-ucs-oriya-hashtbl nil) | |
380 (defvar is13194-to-ucs-oriya-regexp nil) | |
381 (defvar is13194-to-ucs-tamil-hashtbl nil) | |
382 (defvar is13194-to-ucs-tamil-regexp nil) | |
383 (defvar is13194-to-ucs-telugu-hashtbl nil) | |
384 (defvar is13194-to-ucs-telugu-regexp nil) | |
385 (defvar is13194-to-ucs-malayalam-hashtbl nil) | |
386 (defvar is13194-to-ucs-malayalam-regexp nil) | |
387 | |
89110
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
388 (let |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
389 ;;Unicode vs IS13194. Only Devanagari is supported currently. |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
390 ((ucs-devanagari-to-is13194-alist |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
391 '((?\x0900 . "[U+0900]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
392 (?\x0901 . "(5!(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
393 (?\x0902 . "(5"(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
394 (?\x0903 . "(5#(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
395 (?\x0904 . "[U+0904]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
396 (?\x0905 . "(5$(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
397 (?\x0906 . "(5%(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
398 (?\x0907 . "(5&(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
399 (?\x0908 . "(5'(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
400 (?\x0909 . "(5((B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
401 (?\x090a . "(5)(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
402 (?\x090b . "(5*(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
403 (?\x090c . "(5&i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
404 (?\x090d . "(5.(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
405 (?\x090e . "(5+(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
406 (?\x090f . "(5,(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
407 (?\x0910 . "(5-(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
408 (?\x0911 . "(52(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
409 (?\x0912 . "(5/(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
410 (?\x0913 . "(50(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
411 (?\x0914 . "(51(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
412 (?\x0915 . "(53(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
413 (?\x0916 . "(54(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
414 (?\x0917 . "(55(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
415 (?\x0918 . "(56(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
416 (?\x0919 . "(57(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
417 (?\x091a . "(58(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
418 (?\x091b . "(59(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
419 (?\x091c . "(5:(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
420 (?\x091d . "(5;(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
421 (?\x091e . "(5<(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
422 (?\x091f . "(5=(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
423 (?\x0920 . "(5>(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
424 (?\x0921 . "(5?(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
425 (?\x0922 . "(5@(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
426 (?\x0923 . "(5A(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
427 (?\x0924 . "(5B(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
428 (?\x0925 . "(5C(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
429 (?\x0926 . "(5D(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
430 (?\x0927 . "(5E(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
431 (?\x0928 . "(5F(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
432 (?\x0929 . "(5G(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
433 (?\x092a . "(5H(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
434 (?\x092b . "(5I(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
435 (?\x092c . "(5J(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
436 (?\x092d . "(5K(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
437 (?\x092e . "(5L(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
438 (?\x092f . "(5M(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
439 (?\x0930 . "(5O(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
440 (?\x0931 . "(5P(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
441 (?\x0932 . "(5Q(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
442 (?\x0933 . "(5R(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
443 (?\x0934 . "(5S(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
444 (?\x0935 . "(5T(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
445 (?\x0936 . "(5U(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
446 (?\x0937 . "(5V(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
447 (?\x0938 . "(5W(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
448 (?\x0939 . "(5X(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
449 (?\x093a . "[U+093a]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
450 (?\x093b . "[U+093b]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
451 (?\x093c . "(5i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
452 (?\x093d . "(5ji(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
453 (?\x093e . "(5Z(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
454 (?\x093f . "(5[(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
455 (?\x0940 . "(5\(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
456 (?\x0941 . "(5](B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
457 (?\x0942 . "(5^(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
458 (?\x0943 . "(5_(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
459 (?\x0944 . "(5_i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
460 (?\x0945 . "(5c(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
461 (?\x0946 . "(5`(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
462 (?\x0947 . "(5a(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
463 (?\x0948 . "(5b(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
464 (?\x0949 . "(5g(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
465 (?\x094a . "(5d(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
466 (?\x094b . "(5e(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
467 (?\x094c . "(5f(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
468 (?\x094d . "(5h(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
469 (?\x094e . "[U+094e]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
470 (?\x094f . "[U+094f]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
471 (?\x0950 . "(5!i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
472 (?\x0951 . "(5p5(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
473 (?\x0952 . "(5p8(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
474 (?\x0953 . "[DEVANAGARI GRAVE ACCENT]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
475 (?\x0954 . "[DEVANAGARI ACUTE ACCENT]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
476 (?\x0955 . "[U+0955]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
477 (?\x0956 . "[U+0956]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
478 (?\x0957 . "[U+0957]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
479 (?\x0958 . "(53i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
480 (?\x0959 . "(54i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
481 (?\x095a . "(55i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
482 (?\x095b . "(5:i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
483 (?\x095c . "(5?i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
484 (?\x095d . "(5@i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
485 (?\x095e . "(5Ii(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
486 (?\x095f . "(5N(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
487 (?\x0960 . "(5*i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
488 (?\x0961 . "(5'i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
489 (?\x0962 . "(5[i(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
490 (?\x0963 . "(5ei(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
491 (?\x0964 . "(5j(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
492 (?\x0965 . "(5jj(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
493 (?\x0966 . "(5q(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
494 (?\x0967 . "(5r(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
495 (?\x0968 . "(5s(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
496 (?\x0969 . "(5t(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
497 (?\x096a . "(5u(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
498 (?\x096b . "(5v(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
499 (?\x096c . "(5w(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
500 (?\x096d . "(5x(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
501 (?\x096e . "(5y(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
502 (?\x096f . "(5z(B") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
503 (?\x0970 . "[U+0970]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
504 (?\x0971 . "[U+0971]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
505 (?\x0972 . "[U+0972]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
506 (?\x0973 . "[U+0973]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
507 (?\x0974 . "[U+0974]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
508 (?\x0975 . "[U+0975]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
509 (?\x0976 . "[U+0976]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
510 (?\x0977 . "[U+0977]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
511 (?\x0978 . "[U+0978]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
512 (?\x0979 . "[U+0979]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
513 (?\x097a . "[U+097a]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
514 (?\x097b . "[U+097b]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
515 (?\x097c . "[U+097c]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
516 (?\x097d . "[U+097d]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
517 (?\x097e . "[U+097e]") |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
518 (?\x097f . "[U+097f]"))) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
519 (ucs-bengali-to-is13194-alist nil) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
520 (ucs-assamese-to-is13194-alist nil) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
521 (ucs-gurmukhi-to-is13194-alist nil) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
522 (ucs-gujarati-to-is13194-alist nil) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
523 (ucs-oriya-to-is13194-alist nil) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
524 (ucs-tamil-to-is13194-alist nil) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
525 (ucs-telugu-to-is13194-alist nil) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
526 (ucs-malayalam-to-is13194-alist nil)) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
527 (dolist (script '(devanagari bengali assamese gurmukhi gujarati |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
528 oriya tamil telugu malayalam)) |
89094 | 529 (let ((hashtable (intern (concat "is13194-to-ucs-" |
530 (symbol-name script) "-hashtbl" ))) | |
531 (regexp (intern (concat "is13194-to-ucs-" | |
532 (symbol-name script) "-regexp")))) | |
41470 | 533 (set hashtable (make-hash-table :test 'equal :size 128)) |
89110
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
534 (dolist (x (eval (intern (concat "ucs-" (symbol-name script) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
535 "-to-is13194-alist")))) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
536 (put-char-code-property (car x) 'script script) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
537 (put-char-code-property (car x) 'iscii (cdr x)) |
baa9de960667
(ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist)
Dave Love <fx@gnu.org>
parents:
89106
diff
changeset
|
538 (puthash (cdr x) (char-to-string (car x)) (eval hashtable))) |
42060
f3b460667d31
(range): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
42056
diff
changeset
|
539 (set regexp (indian-regexp-of-hashtbl-keys (eval hashtable)))))) |
41470 | 540 |
541 (defvar ucs-to-is13194-regexp | |
542 ;; only Devanagari is supported now. | |
88620 | 543 (concat "[" (char-to-string #x0900) |
89094 | 544 "-" (char-to-string #x097f) "]") |
41470 | 545 "Regexp that matches to conversion") |
546 | |
547 (defun ucs-to-iscii-region (from to) | |
89094 | 548 "Converts the indian UCS characters in the region to ISCII. |
41470 | 549 Returns new end position." |
550 (interactive "r") | |
551 ;; only Devanagari is supported now. | |
552 (save-excursion | |
553 (save-restriction | |
554 (narrow-to-region from to) | |
555 (goto-char (point-min)) | |
89094 | 556 (let* ((current-repertory is13194-default-repertory)) |
557 (while (re-search-forward ucs-to-is13194-regexp nil t) | |
558 (replace-match | |
559 (get-char-code-property (string-to-char (match-string 0)) | |
560 'iscii)))) | |
41470 | 561 (point-max)))) |
562 | |
563 (defun iscii-to-ucs-region (from to) | |
89094 | 564 "Converts the ISCII characters in the region to UCS. |
41470 | 565 Returns new end position." |
566 (interactive "r") | |
567 ;; only Devanagari is supported now. | |
568 (save-excursion | |
569 (save-restriction | |
570 (narrow-to-region from to) | |
571 (goto-char (point-min)) | |
89094 | 572 (let* ((current-repertory is13194-default-repertory) |
573 (current-hashtable | |
574 (intern (concat "is13194-to-ucs-" | |
575 (symbol-name current-repertory) "-hashtbl"))) | |
576 (current-regexp | |
577 (intern (concat "is13194-to-ucs-" | |
578 (symbol-name current-repertory) "-regexp"))) | |
579 (re (eval current-regexp)) | |
89106 | 580 (hash (eval current-hashtable))) |
89094 | 581 (while (re-search-forward re nil t) |
582 (replace-match (gethash (match-string 0) hash "")))) | |
41470 | 583 (point-max)))) |
584 | |
585 ;;;###autoload | |
586 (defun indian-compose-region (from to) | |
587 "Compose the region according to `composition-function-table'. " | |
588 (interactive "r") | |
589 (save-excursion | |
590 (save-restriction | |
591 (let ((pos from) chars (max to)) | |
89094 | 592 (narrow-to-region from to) |
593 (while (< pos max) | |
594 (setq chars (compose-chars-after pos)) | |
595 (if chars (setq pos (+ pos chars)) (setq pos (1+ pos)))))))) | |
41470 | 596 |
597 ;;;###autoload | |
598 (defun indian-compose-string (string) | |
89094 | 599 (with-temp-buffer |
41470 | 600 (insert string) |
601 (indian-compose-region (point-min) (point-max)) | |
602 (buffer-string))) | |
603 | |
604 ;;;###autoload | |
605 (defun in-is13194-post-read-conversion (len) | |
606 (let ((pos (point)) endpos) | |
607 (setq endpos (iscii-to-ucs-region pos (+ pos len))) | |
608 (indian-compose-region pos endpos) | |
609 (- endpos pos))) | |
610 | |
611 ;;;###autoload | |
612 (defun in-is13194-pre-write-conversion (from to) | |
613 (let ((buf (current-buffer))) | |
614 (set-buffer (generate-new-buffer " *temp*")) | |
615 (if (stringp from) | |
616 (insert from) | |
617 (insert-buffer-substring buf from to)) | |
618 (ucs-to-iscii-region (point-min) (point-max)) | |
619 nil)) | |
620 | |
621 | |
622 | |
623 | |
624 ;;; Backward Compatibility support programs | |
625 | |
89094 | 626 ;; The following provides the conversion from old-implementation of |
41470 | 627 ;; Emacs Devanagari script to UCS. |
628 | |
629 (defconst indian-2-colum-to-ucs | |
630 '( | |
631 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
632 ;;2120 $(5!!!"!#!$!%!&!'!(!)!*!+!,!-!.!/(B | |
633 ("$(5!!(B" . "$,15A(B") | |
634 ("$(5!"(B" . "$,15B(B") | |
635 ("$(5!#(B" . "$,15C(B") | |
636 ("$(5!$(B" . "$,15E(B") | |
637 ("$(5!%(B" . "$,15F(B") | |
638 ("$(5!&(B" . "$,15G(B") | |
639 ("$(5!'(B" . "$,15H(B") | |
640 ("$(5!((B" . "$,15I(B") | |
641 ("$(5!)(B" . "$,15J(B") | |
642 ("$(5!*(B" . "$,15K(B") | |
643 ("$(5!*"p(B" . "$,15p6#(B") | |
644 ("$(5!+(B" . "$,15N(B") | |
645 ("$(5!,(B" . "$,15O(B") | |
646 ("$(5!-(B" . "$,15P(B") | |
647 ("$(5!.(B" . "$,15M(B") | |
648 ("$(5!/(B" . "$,15R(B") | |
649 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
650 ;;2130 $(5!0!1!2!3!4!5!6!7!8!9!:!;!<!=!>!?(B | |
651 ("$(5!0(B" . "$,15S(B") | |
652 ("$(5!1(B" . "$,15T(B") | |
653 ("$(5!2(B" . "$,15Q(B") | |
654 ("$(5!3(B" . "$,15U(B") | |
655 ("$(5!4(B" . "$,15V(B") | |
656 ("$(5!5(B" . "$,15W(B") | |
657 ("$(5!6(B" . "$,15X(B") | |
658 ("$(5!7(B" . "$,15Y(B") | |
659 ("$(5!8(B" . "$,15Z(B") | |
660 ("$(5!9(B" . "$,15[(B") | |
661 ("$(5!:(B" . "$,15\(B") | |
662 ("$(5!;(B" . "$,15](B") | |
663 ("$(5!<(B" . "$,15^(B") | |
664 ("$(5!=(B" . "$,15_(B") | |
665 ("$(5!>(B" . "$,15`(B") | |
666 ("$(5!?(B" . "$,15a(B") | |
667 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
668 ;;2140 $(5!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O(B | |
669 ("$(5!@(B" . "$,15b(B") | |
670 ("$(5!A(B" . "$,15c(B") | |
671 ("$(5!B(B" . "$,15d(B") | |
672 ("$(5!C(B" . "$,15e(B") | |
673 ("$(5!D(B" . "$,15f(B") | |
674 ("$(5!E(B" . "$,15g(B") | |
675 ("$(5!F(B" . "$,15h(B") | |
676 ("$(5!G(B" . "$,15i(B") | |
677 ("$(5!H(B" . "$,15j(B") | |
678 ("$(5!I(B" . "$,15k(B") | |
679 ("$(5!J(B" . "$,15l(B") | |
680 ("$(5!K(B" . "$,15m(B") | |
681 ("$(5!L(B" . "$,15n(B") | |
682 ("$(5!M(B" . "$,15o(B") | |
683 ("$(5!N(B" . "$,16?(B") | |
684 ("$(5!O(B" . "$,15p(B") | |
685 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
686 ;;2150 $(5!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_(B | |
687 ("$(5!P(B" . "$,15q(B") | |
688 ("$(5!Q(B" . "$,15r(B") | |
689 ("$(5!R(B" . "$,15s(B") | |
690 ("$(5!S(B" . "$,15t(B") | |
691 ("$(5!T(B" . "$,15u(B") | |
692 ("$(5!U(B" . "$,15v(B") | |
693 ("$(5!V(B" . "$,15w(B") | |
694 ("$(5!W(B" . "$,15x(B") | |
695 ("$(5!X(B" . "$,15y(B") | |
696 ("$(5!Z(B" . "$,15~(B") | |
697 ("$(5![(B" . "$,15(B") | |
698 ("$(5!\(B" . "$,16 (B") | |
699 ("$(5!](B" . "$,16!(B") | |
700 ("$(5!^(B" . "$,16"(B") | |
701 ("$(5!_(B" . "$,16#(B") | |
702 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
703 ;;2160 $(5!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o(B | |
704 ("$(5!`(B" . "$,16&(B") | |
705 ("$(5!a(B" . "$,16'(B") | |
706 ("$(5!b(B" . "$,16((B") | |
707 ("$(5!c(B" . "$,16%(B") | |
708 ("$(5!d(B" . "$,16*(B") | |
709 ("$(5!e(B" . "$,16+(B") | |
710 ("$(5!f(B" . "$,16,(B") | |
711 ("$(5!g(B" . "$,16)(B") | |
712 ("$(5!h(B" . "$,16-(B") | |
713 ("$(5!i(B" . "$,15|(B") | |
714 ("$(5!j(B" . "$,16D(B") | |
715 ("$(5!j!j(B" . "$,16E(B") | |
716 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
717 ;;2170 $(5!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~(B | |
718 ("$(5!q(B" . "$,16F(B") | |
719 ("$(5!r(B" . "$,16G(B") | |
720 ("$(5!s(B" . "$,16H(B") | |
721 ("$(5!t(B" . "$,16I(B") | |
722 ("$(5!u(B" . "$,16J(B") | |
723 ("$(5!v(B" . "$,16K(B") | |
724 ("$(5!w(B" . "$,16L(B") | |
725 ("$(5!x(B" . "$,16M(B") | |
726 ("$(5!y(B" . "$,16N(B") | |
727 ("$(5!z(B" . "$,16O(B") | |
728 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
729 ;;2220 $(5"!"""#"$"%"&"'"(")"*"+","-"."/(B | |
730 ("$(5"!(B" . "$,16;6-5p(B") | |
731 ("$(5""(B" . "$,16>6-5p(B") | |
732 ("$(5"#(B" . "$,15U6-5p(B") | |
733 ("$(5"$(B" . "$,15W6-5p(B") | |
734 ("$(5"%(B" . "$,15d6-5p(B") | |
735 ("$(5"&(B" . "$,15j6-5p(B") | |
736 ("$(5"'(B" . "$,15k6-5p(B") | |
737 ("$(5")(B" . "$,15v6-5p(B") | |
738 ("$(5",(B" . "$,15p6!(B") | |
739 ("$(5"-(B" . "$,15p6"(B") | |
740 ("$(5".(B" . "$,15q6!(B") | |
741 ("$(5"/(B" . "$,15q6"(B") | |
742 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
743 ;;2230 $(5"0"1"2"3"4"5"6"7"8"9":";"<"=">"?(B | |
744 ("$(5"3(B" . "$,15U6-(B") | |
745 ("$(5"4(B" . "$,15V6-(B") | |
746 ("$(5"5(B" . "$,15W6-(B") | |
747 ("$(5"6(B" . "$,15X6-(B") | |
748 ("$(5"8(B" . "$,15Z6-(B") | |
749 ("$(5"8"q(B" . "$,15Z6-5p6-(B") | |
750 ("$(5":(B" . "$,15\6-(B") | |
751 ("$(5";(B" . "$,15]6-(B") | |
752 ("$(5"<(B" . "$,15^6-(B") | |
753 ("$(5"<(B" . "$,15^6-(B") | |
754 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
755 ;;2240 $(5"@"A"B"C"D"E"F"G"H"I"J"K"L"M"N"O(B | |
756 ("$(5"A(B" . "$,15c6-(B") | |
757 ("$(5"B(B" . "$,15d6-(B") | |
758 ("$(5"C(B" . "$,15e6-(B") | |
759 ("$(5"E(B" . "$,15g6-(B") | |
760 ("$(5"F(B" . "$,15h6-(B") | |
761 ("$(5"G(B" . "$,15i6-(B") | |
762 ("$(5"H(B" . "$,15j6-(B") | |
763 ("$(5"I(B" . "$,15k6-(B") | |
764 ("$(5"J(B" . "$,15l6-(B") | |
765 ("$(5"J(B" . "$,15l6-(B") | |
766 ("$(5"K(B" . "$,15m6-(B") | |
767 ("$(5"L(B" . "$,15n6-(B") | |
768 ("$(5"M(B" . "$,15o6-(B") | |
769 ("$(5"N(B" . "$,16?6-(B") | |
770 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
771 ;;2250 $(5"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_(B | |
772 ("$(5"Q(B" . "$,15r6-(B") | |
773 ("$(5"R(B" . "$,15s6-(B") | |
774 ("$(5"S(B" . "$,15t6-(B") | |
775 ("$(5"T(B" . "$,15u6-(B") | |
776 ("$(5"U(B" . "$,15v6-(B") | |
777 ("$(5"V(B" . "$,15w6-(B") | |
778 ("$(5"W(B" . "$,15x6-(B") | |
779 ("$(5"](B" . "$,16-5o(B") | |
780 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
781 ;;2260 $(5"`"a"b"c"d"e"f"g"h"i"j"k"l"m"n"o(B | |
782 ("$(5"`(B" . "$,15W6-5p6-(B") | |
783 ("$(5"a(B" . "$,15X6-5h6-(B") | |
784 ("$(5"c(B" . "$,15d6-5d6-(B") | |
785 ("$(5"d(B" . "$,15d6-5p6-(B") | |
786 ("$(5"e(B" . "$,15g6-5h6-(B") | |
787 ("$(5"f(B" . "$,15g6-5p6-(B") | |
788 ("$(5"g(B" . "$,15j6-5d6-(B") | |
789 ("$(5"h(B" . "$,15v6-5Z6-(B") | |
790 ("$(5"i(B" . "$,15v6-5p6-(B") | |
791 ("$(5"j(B" . "$,15v6-5u6-(B") | |
792 ("$(5"k(B" . "$,15h6-5h6-(B") | |
793 ("$(5"l(B" . "$,15U6-5w6-(B") | |
794 ("$(5"m(B" . "$,15\6-5^6-(B") | |
795 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
796 ;;2270 $(5"p"q"r"s"t"u"v"w"x"y"z"{"|"}"~(B | |
797 ("$(5"p(B" . "$,15p6-(B") | |
798 ("$(5"q(B" . "$,16-5p(B") | |
799 ("$(5"r(B" . "$,16-5p(B") | |
800 ("$(5"s(B" . "$,1686-(B") | |
801 ("$(5"t(B" . "$,1696-(B") | |
802 ("$(5"u(B" . "$,16:6-(B") | |
803 ("$(5"y(B" . "$,16>6-(B") | |
804 ("$(5"z(B" . "$,16;6-(B") | |
805 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
806 ;;2320 $(5#!#"###$#%#&#'#(#)#*#+#,#-#.#/(B | |
807 ("$(5#!(B" . "$,160(B") | |
808 ("$(5#&(B" . "$,15L(B") | |
809 ("$(5#&"p(B" . "$,15p6$(B") | |
810 ("$(5#'(B" . "$,16A(B") | |
811 ("$(5#'"p(B" . "$,15p6C(B") | |
812 ("$(5#*(B" . "$,16@(B") | |
813 ("$(5#*"p(B" . "$,15p6B(B") | |
814 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
815 ;;2330 $(5#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?(B | |
816 ("$(5#3(B" . "$,168(B") | |
817 ("$(5#4(B" . "$,169(B") | |
818 ("$(5#5(B" . "$,16:(B") | |
819 ("$(5#:(B" . "$,16;(B") | |
820 ("$(5#?(B" . "$,16<(B") | |
821 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
822 ;;2340 $(5#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O(B | |
823 ("$(5#@(B" . "$,16=(B") | |
824 ("$(5#I(B" . "$,16>(B") | |
825 ("$(5#J(B" . "$,15}(B") | |
826 ("$(5#K(B" . "$,16$(B") | |
827 ("$(5#L(B" . "$,16B(B") | |
828 ("$(5#M(B" . "$,16C(B") | |
829 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
830 ;;2350 $(5#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_(B | |
831 ("$(5#P(B" . "$,15n6-5h(B") | |
832 ("$(5#Q(B" . "$,15n6-5r(B") | |
833 ("$(5#R(B" . "$,15y6#(B") | |
834 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
835 ;;2360 $(5#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o(B | |
836 ("$(5#`(B" . "$,15r6-5r(B") | |
837 ("$(5#a(B" . "$,15u6-5h(B") | |
838 ("$(5#b(B" . "$,15u6-5u(B") | |
839 ("$(5#c(B" . "$,15v6-5Z(B") | |
840 ("$(5#d(B" . "$,15v6-5h(B") | |
841 ("$(5#e(B" . "$,15v6-5l(B") | |
842 ("$(5#f(B" . "$,15v6-5r(B") | |
843 ("$(5#g(B" . "$,15v6-5u(B") | |
844 ("$(5#h(B" . "$,15w6-5_6-5p6-5o(B") | |
845 ("$(5#i(B" . "$,15w6-5_6-5o(B") | |
846 ("$(5#j(B" . "$,15w6-5_6-5u(B") | |
847 ("$(5#k(B" . "$,15w6-5_(B") | |
848 ("$(5#l(B" . "$,15w6-5`(B") | |
849 ("$(5#m(B" . "$,15x6-5h(B") | |
850 ("$(5#n(B" . "$,15x6-5p(B") | |
851 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
852 ;;2370 $(5#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~(B | |
853 ("$(5#p(B" . "$,15y6-5c(B") | |
854 ("$(5#q(B" . "$,15y6-5h(B") | |
855 ("$(5#r(B" . "$,15y6-5n(B") | |
856 ("$(5#s(B" . "$,15y6-5o(B") | |
857 ("$(5#t(B" . "$,15y6-5p(B") | |
858 ("$(5#u(B" . "$,15y6-5r(B") | |
859 ("$(5#v(B" . "$,15y6-5u(B") | |
860 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
861 ;;2420 $(5$!$"$#$$$%$&$'$($)$*$+$,$-$.$/(B | |
862 ("$(5$!(B" . "$,15U6-5d6-5p6-5o(B") | |
863 ("$(5$"(B" . "$,15U6-5d6-5u(B") | |
864 ("$(5$#(B" . "$,15U6-5d6-5o(B") | |
865 ("$(5$$(B" . "$,15U6-5h6-5o(B") | |
866 ("$(5$%(B" . "$,15U6-5p6-5o(B") | |
867 ("$(5$&(B" . "$,15U6-5u6-5o(B") | |
868 ("$(5$'(B" . "$,15U6-5U(B") | |
869 ("$(5$((B" . "$,15U6-5d(B") | |
870 ("$(5$)(B" . "$,15U6-5h(B") | |
871 ("$(5$*(B" . "$,15U6-5n(B") | |
872 ("$(5$+(B" . "$,15U6-5o(B") | |
873 ("$(5$,(B" . "$,15U6-5r(B") | |
874 ("$(5$-(B" . "$,15U6-5u(B") | |
875 ("$(5$.(B" . "$,15U6-5w(B") | |
876 ("$(5$/(B" . "$,15X6-5h(B") | |
877 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
878 ;;2430 $(5$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?(B | |
879 ("$(5$0(B" . "$,15Y6-5U6-5d6-5o(B") | |
880 ("$(5$1(B" . "$,15Y6-5U6-5w6-5u(B") | |
881 ("$(5$2(B" . "$,15Y6-5U6-5d(B") | |
882 ("$(5$3(B" . "$,15Y6-5U6-5w(B") | |
883 ("$(5$4(B" . "$,15Y6-5X6-5p(B") | |
884 ("$(5$5(B" . "$,15Y6-5U6-5o(B") | |
885 ("$(5$6(B" . "$,15Y6-5V6-5o(B") | |
886 ("$(5$7(B" . "$,15Y6-5W6-5o(B") | |
887 ("$(5$8(B" . "$,15Y6-5X6-5o(B") | |
888 ("$(5$9(B" . "$,15Y6-5U(B") | |
889 ("$(5$:(B" . "$,15Y6-5V(B") | |
890 ("$(5$;(B" . "$,15Y6-5W(B") | |
891 ("$(5$<(B" . "$,15Y6-5X(B") | |
892 ("$(5$=(B" . "$,15Y6-5Y(B") | |
893 ("$(5$>(B" . "$,15Y6-5h(B") | |
894 ("$(5$?(B" . "$,15Y6-5n(B") | |
895 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
896 ;;2440 $(5$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B | |
897 ("$(5$@(B" . "$,15Y6-5o(B") | |
898 ("$(5$A(B" . "$,15Z6-5Z(B") | |
899 ("$(5$B(B" . "$,15Z6-5^(B") | |
900 ("$(5$C(B" . "$,15[6-5o(B") | |
901 ("$(5$D(B" . "$,15\6-5p(B") | |
902 ("$(5$E(B" . "$,15\6-5^(B") | |
903 ("$(5$F(B" . "$,15^6-5Z(B") | |
904 ("$(5$G(B" . "$,15^6-5\(B") | |
905 ("$(5$H(B" . "$,15_6-5U(B") | |
906 ("$(5$I(B" . "$,15_6-5_(B") | |
907 ("$(5$J(B" . "$,15_6-5`(B") | |
908 ("$(5$K(B" . "$,15_6-5o(B") | |
909 ("$(5$L(B" . "$,15`6-5o(B") | |
910 ("$(5$M(B" . "$,15a6-5W6-5o(B") | |
911 ("$(5$N(B" . "$,15a6-5X6-5p(B") | |
912 ("$(5$O(B" . "$,15a6-5p6-5o(B") | |
913 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
914 ;;2450 $(5$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_(B | |
915 ("$(5$P(B" . "$,15a6-5W(B") | |
916 ("$(5$Q(B" . "$,15a6-5X(B") | |
917 ("$(5$R(B" . "$,15a6-5a(B") | |
918 ("$(5$S(B" . "$,15a6-5n(B") | |
919 ("$(5$T(B" . "$,15a6-5o(B") | |
920 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
921 ;;2460 $(5$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o(B | |
922 ("$(5$`(B" . "$,15b6-5o(B") | |
923 ("$(5$a(B" . "$,15d6-5d(B") | |
924 ("$(5$b(B" . "$,15d6-5h(B") | |
925 ("$(5$c(B" . "$,15f6-5f6-5o(B") | |
926 ("$(5$d(B" . "$,15f6-5g6-5o(B") | |
927 ("$(5$e(B" . "$,15f6-5m6-5o(B") | |
928 ("$(5$f(B" . "$,15f6-5p6-5o(B") | |
929 ("$(5$g(B" . "$,15f6-5u6-5o(B") | |
930 ("$(5$h(B" . "$,15f6-5W6-5p(B") | |
931 ("$(5$i(B" . "$,15f6-5X6-5p(B") | |
932 ("$(5$j(B" . "$,15f6-5f6-5u(B") | |
933 ("$(5$k(B" . "$,15f6-5g6-5u(B") | |
934 ("$(5$l(B" . "$,15f6-5W(B") | |
935 ("$(5$m(B" . "$,15f6-5X(B") | |
936 ("$(5$n(B" . "$,15f6-5f(B") | |
937 ("$(5$o(B" . "$,15f6-5g(B") | |
938 ;; 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
939 ;;2470 $(5$p$q$r$s$t$u$v$w$x$y$z${$|$}$~(B | |
940 ("$(5$p(B" . "$,15f6-5h(B") | |
941 ("$(5$q(B" . "$,15f6-5l(B") | |
942 ("$(5$r(B" . "$,15f6-5m(B") | |
943 ("$(5$s(B" . "$,15f6-5n(B") | |
944 ("$(5$t(B" . "$,15f6-5o(B") | |
945 ("$(5$u(B" . "$,15f6-5u(B") | |
946 ("$(5$v(B" . "$,15g6-5h(B") | |
947 ("$(5$w(B" . "$,15h6-5h(B") | |
948 ("$(5$x(B" . "$,15j6-5d(B") | |
949 ("$(5$y(B" . "$,15j6-5h(B") | |
950 ("$(5$z(B" . "$,15j6-5r(B") | |
951 ("$(5${(B" . "$,15l6-5h(B") | |
952 ("$(5$|(B" . "$,15l6-5l(B") | |
953 ("$(5$}(B" . "$,15l6-5u(B") | |
954 ("$(5$~(B" . "$,15m6-5h(B"))) | |
955 | |
956 (defconst indian-2-column-to-ucs-regexp | |
957 "$(5!j!j(B\\|$(5"8"q(B\\|[$(5#&#'!*#*(B]$(5"p(B\\|[$(5!!(B-$(5$~(B]") | |
958 | |
959 (put 'indian-2-column-to-ucs-chartable 'char-table-extra-slots 1) | |
960 (defconst indian-2-column-to-ucs-chartable | |
961 (let ((table (make-char-table 'indian-2-column-to-ucs-chartable)) | |
89094 | 962 (alist nil)) |
41470 | 963 (dolist (elt indian-2-colum-to-ucs) |
964 (if (= (length (car elt)) 1) | |
89094 | 965 (aset table (aref (car elt) 0) (cdr elt)) |
966 (setq alist (cons elt alist)))) | |
41470 | 967 (set-char-table-extra-slot table 0 alist) |
968 table)) | |
969 | |
970 (defun indian-2-column-to-ucs-region (from to) | |
971 "Convert old Emacs Devanagari characters to UCS." | |
972 (interactive "r") | |
973 (save-excursion | |
974 (save-restriction | |
975 (let ((pos from) | |
89094 | 976 (alist (char-table-extra-slot indian-2-column-to-ucs-chartable 0))) |
977 (narrow-to-region from to) | |
978 (decompose-region from to) | |
979 (goto-char (point-min)) | |
980 (while (re-search-forward indian-2-column-to-ucs-regexp nil t) | |
981 (let ((len (- (match-end 0) (match-beginning 0))) | |
982 subst) | |
983 (if (= len 1) | |
984 (setq subst (aref indian-2-column-to-ucs-chartable | |
42056 | 985 (char-after (match-beginning 0)))) |
89094 | 986 (setq subst (assoc (match-string 0) alist))) |
987 (replace-match (if subst subst "?")))) | |
988 (indian-compose-region (point-min) (point-max)))))) | |
42056 | 989 |
89094 | 990 (provide 'ind-util) |
42056 | 991 |
41470 | 992 ;;; ind-util.el ends here |