Mercurial > emacs
annotate leim/quail/tibetan.el @ 64475:4a9aba73cb6e
*** empty log message ***
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 18 Jul 2005 20:24:28 +0000 |
parents | e055d02d8b97 |
children | b94a4bf1aca6 f9a65d7ebd29 |
rev | line source |
---|---|
38453
519983161a46
Some fixes to follow lisp coding conventions and typo fixes.
Pavel Janík <Pavel@Janik.cz>
parents:
29594
diff
changeset
|
1 ;;; tibetan.el --- Quail package for inputting Tibetan characters |
18968 | 2 |
3 ;; Copyright (C) 1995 Free Software Foundation, Inc. | |
4 ;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. | |
5 | |
6 ;; Keywords: multilingual, input method, Tibetan | |
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 | |
64092 | 22 ;; the Free Software Foundation, 51 Franklin Street, Fifth Floor, |
23 ;; Boston, MA 02110-1301, USA. | |
18968 | 24 |
25 ;; Author: Toru TOMABECHI, <Toru.Tomabechi@orient.unil.ch> | |
26 | |
27 ;; Created: Feb. 17. 1997 | |
28 | |
29 ;; History: | |
30 ;; 1997.03.13 Support for inputting special signs and punctuations added. | |
31 ;; (Only Ext. Wylie input) | |
32 | |
38453
519983161a46
Some fixes to follow lisp coding conventions and typo fixes.
Pavel Janík <Pavel@Janik.cz>
parents:
29594
diff
changeset
|
33 ;;; Commentary: |
519983161a46
Some fixes to follow lisp coding conventions and typo fixes.
Pavel Janík <Pavel@Janik.cz>
parents:
29594
diff
changeset
|
34 |
18968 | 35 ;;; Code: |
36 | |
37 (require 'quail) | |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
38 (require 'tibet-util) |
18968 | 39 |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
40 ;; Now quail-current-key is set to Tibetan-Roman transcription. We |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
41 ;; set quail-current-str to the corresponding Tibetan string (composed |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
42 ;; if necessary). Both Wylie and TibKey input methods use this |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
43 ;; function. |
18968 | 44 |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
45 (defun quail-tibetan-update-translation (control-flag) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
46 (if (numberp control-flag) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
47 ;; Non-composable-character typed. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
48 (setq quail-current-str |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
49 (buffer-substring (overlay-start quail-overlay) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
50 (overlay-end quail-overlay)) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
51 unread-command-events |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
52 (string-to-list |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
53 (substring quail-current-key control-flag))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
54 ;; Special treatment of "-d..." and "-y...". |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
55 (if (string-match "^-[dy]" quail-current-key) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
56 (setq quail-current-key (substring quail-current-key 1))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
57 (let ((str (tibetan-transcription-to-tibetan quail-current-key))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
58 ;; If quail-current-key is for punctuations, it can't be |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
59 ;; transcribed by tibetan-transcription-to-tibetan, thus STR |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
60 ;; contains ASCII string now. In that case, use the current |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
61 ;; characters set in quail-current-str. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
62 (if (> (aref str 0) 255) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
63 (setq quail-current-str (tibetan-compose-string str)) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
64 (or quail-current-str |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
65 (setq quail-current-str quail-current-key))))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
66 control-flag) |
18968 | 67 |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
68 ;;; Wylie transcription based input methods. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
69 |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
70 ;; Special alist for `$(7"A(B'. It must be treated as a subjoined |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
71 ;; consonant if it follows a consonant. |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
72 ;; * Removed by Tomabechi 2000/06/10 * |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
73 ;; 'a chung must be explicitly typed as a vowel ("fa") |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
74 ;; $(7"A(B is now treated as normal base consonants |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
75 ;; (defconst tibetan-wylie-quote-alist '(("'" . ?$(7"A(B))) |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
76 |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
77 ;; Special alist to avoid default stacking. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
78 (defconst tibetan-wylie-non-stacking-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
79 '(("-d" . "$(7"2(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
80 ("-y" . "$(7"B(B"))) |
18968 | 81 |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
82 ;; Punctuations are not transcribed. |
18968 | 83 |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
84 (defconst tibetan-wylie-punctuation-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
85 '(("." . " ") |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
86 (":" . "$(7"`(B") |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
87 (" " . "$(7!;(B") |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
88 ("/" . "$(7!=(B") |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
89 ("//" . "$(7!>(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
90 ("////" . ["$(7!>(B $(7!>(B"]) |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
91 ("$" . "$(7!?(B") |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
92 ("/\"" . "$(7!@(B") ; Not defined in Ext. Wylie. |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
93 ("&" . "$(7!@(B") |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
94 (";" . "$(7!A(B") |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
95 ("%" . "$(7!D(B") |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
96 ("!" . "$(7!8(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
97 ("<" . "$(7!l(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
98 (">" . "$(7!m(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
99 ("@" . "$(7"f(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
100 ("*" . ["$(7!4!5(B"]) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
101 ("#" . ["$(7!4!5!5(B"]) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
102 ("^" . "$(7!6(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
103 ("0" . "$(7!P(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
104 ("1" . "$(7!Q(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
105 ("2" . "$(7!R(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
106 ("3" . "$(7!S(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
107 ("4" . "$(7!T(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
108 ("5" . "$(7!U(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
109 ("6" . "$(7!V(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
110 ("7" . "$(7!W(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
111 ("8" . "$(7!X(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
112 ("9" . "$(7!Y(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
113 ("-0" . "$(7!c(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
114 ("-1" . "$(7!Z(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
115 ("-2" . "$(7![(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
116 ("-3" . "$(7!\(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
117 ("-4" . "$(7!](B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
118 ("-5" . "$(7!^(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
119 ("-6" . "$(7!_(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
120 ("-7" . "$(7!`(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
121 ("-8" . "$(7!a(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
122 ("-9" . "$(7!b(B") |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
123 ("|" . "$(7!0!1!2!3!7!9!:!B!C!E!F!G!H!I!J!K!L!M!N!O!d!f!h!j!k!n!o#O#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#`(B"))) |
18968 | 124 |
125 (quail-define-package "tibetan-wylie" "Tibetan" "TIBw" t | |
126 "Tibetan character input by Extended Wylie key assignment. | |
127 | |
128 +-------------------------------------+ | |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
129 |$(7"!!;(B k |$(7""!;(B kh |$(7"#!;(B g |$(7"$!;(B gh |$(7"%!;(B ng| $(7"S(B i $(7!=(B / |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
130 |$(7"&!;(B c |$(7"'!;(B ch |$(7"(!;(B j | |$(7"*!;(B ny| $(7"U(B u $(7!>(B // |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
131 |$(7"+!;(B T |$(7",!;(B TH |$(7"-!;(B D |$(7".!;(B DH |$(7"/!;(B N | $(7"[(B e $(7!>(B $(7!>(B //// |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
132 |$(7"0!;(B t |$(7"1!;(B th |$(7"2!;(B d |$(7"3!;(B dh |$(7"4!;(B n | $(7"](B o $(7!A(B ; |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
133 |$(7"5!;(B p |$(7"6!;(B ph |$(7"7!;(B b |$(7"8!;(B bh |$(7"9!;(B m | $(7"\(B ai (ee, E) $(7!?(B $ |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
134 |$(7":!;(B ts|$(7";!;(B tsh|$(7"<!;(B dz |$(7"=!;(B dzh|$(7">!;(B w | $(7"^(B au (oo, O) $(7!@(B & |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
135 |$(7"?!;(B zh|$(7"@!;(B z |$(7"A!;(B ' | |$(7"B!;(B y | $(7"a(B I $(7!4!5(B * |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
136 |$(7"C!;(B r |$(7"D!;(B l |$(7"E!;(B sh |$(7"F!;(B SH |$(7"G!;(B s | $(7"`(B : $(7!4!5!5(B # |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
137 |$(7"H!;(B h |$(7"I!;(B A |$(7"J!;(B kSH| | | $(7"_(B M $(7!l(B $(7!m(B < > |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
138 +-------------------------------------+ $(7!D(B % |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
139 (The consonant $(7"I!;(B must be typed explicitly.) |
18968 | 140 |
141 NOT SPECIFIED IN EXT. WYLIE: | |
142 +--------------------------------------------------------+ | |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
143 |$(7"c(B = ~ |$(7"d(B = ` |$(7"e(B = , |$(7"f(B = @ |$(7!g(B = _o|$(7!e(B = _O|$(7!6(B = ^| |
18968 | 144 +--------------------------------------------------------+ |
145 |$(7"i(B = x |$(7"j(B = X |$(7"g(B = v |$(7"h(B = V |$(7"k(B = q |$(7"l(B = Q | | |
146 +-----------------------------------------------+ | |
147 | |
148 SPECIAL KEYS | |
149 + : Consonant Stacking | |
150 \(Consonant stacking for ordinary Tibetan is done automatically) | |
151 - : No Consonant Stacking | |
152 \(To suppress automatic stacking for \"g-y\", | |
153 and to get da-drag in -r-d, -l-d .) | |
154 | : Special signs. | |
155 | |
156 Tsheg is assigned to SPC. Space is assigned to period '.'. | |
157 " | |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
158 nil nil nil nil nil nil nil nil |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
159 'quail-tibetan-update-translation) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
160 |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
161 ;; Here we build up a Quail map for a Tibtan sequence the whole of |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
162 ;; which can be one composition. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
163 ;; |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
164 ;; A Tibetan syllable is typically structured as follows: |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
165 ;; [P] C [c+] V [M] [S [s]] |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
166 ;; ^^^^^^^^^^^^ |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
167 ;; where P:prefix, C:base consonant, c:subjoined consonant, |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
168 ;; V:vowel, M:vowel modifier, S:suffix, s:post suffix. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
169 ;; In this pattern, the part indicated by "^^^" can be one composition. |
18968 | 170 |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
171 ;;; modified by Tomabechi 1999/12/10 |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
172 ;;; modified by Tomabechi 2000/06/08 |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
173 ;;; Allows infinite addition of vowels/modifiers |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
174 ;;; as specified in Unicode v.3 |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
175 (quail-install-map |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
176 (quail-map-from-table |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
177 '((base-state (tibetan-consonant-transcription-alist . svm-state) |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
178 (tibetan-precomposed-transcription-alist . svm-state) |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
179 (tibetan-wylie-non-stacking-alist . svm-state) |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
180 tibetan-subjoined-transcription-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
181 tibetan-vowel-transcription-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
182 tibetan-modifier-transcription-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
183 tibetan-wylie-punctuation-alist) |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
184 (svm-state ;;(tibetan-wylie-quote-alist . vm-state) |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
185 (tibetan-vowel-transcription-alist . vm-state) |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
186 (tibetan-subjoined-transcription-alist . svm-state) |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
187 (tibetan-modifier-transcription-alist . m-state)) |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
188 (vm-state (tibetan-vowel-transcription-alist . vm-state) |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
189 (tibetan-modifier-transcription-alist . m-state)) |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
190 (m-state (tibetan-modifier-transcription-alist . m-state))))) |
18968 | 191 |
192 ;;; | |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
193 ;;; TibKey key alignment based input method |
18968 | 194 ;;; |
195 | |
196 (defconst tibetan-tibkey-to-transcription-alist | |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
197 '(;; consonant |
18968 | 198 ("`" . "`") ; sna ldan |
199 ("~" . "~") ; sna ldan + nada | |
200 ("q" . "k") ; ka | |
201 ("Q" ."kSH") ; kSHa | |
202 ("w" . "kh") ; kha | |
203 ("e" . "g") ; ga | |
204 ("r" . "ng") ; nga | |
205 ("t" . "c") ; ca | |
206 ("T" . "I") ; gi gu log | |
207 ("y" . "ch") ; cha | |
208 ("u" . "j") ; ja | |
209 ("i" . "ny") ; nya | |
210 ("o" . "t") ; ta | |
211 ("O" . "T") ; Ta | |
212 ("p" . "th") ; tha | |
213 ("P" . "TH") ; THa | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
38453
diff
changeset
|
214 ("[" . "d") ; da |
18968 | 215 ("{" . "D") ; Da |
216 ("]" . "n") ; na | |
217 ("}" . "N") ; Na | |
218 ("a" . "p") ; pa | |
219 ("A" . "a") ; Vowel a (not used in original TibKey) | |
220 ("s" . "ph") ; pha | |
221 ("d" . "b") ; ba | |
222 ("f" . "m") ; ma | |
223 ("F" . "M") ; anusvara | |
224 ("g" . "u") ; zhabs kyu | |
225 ("G" . "i") ; gi gu | |
226 ("H" . ",") ; viraama | |
227 ("j" . "o") ; naro | |
228 ("J" . "e") ; 'greng bu | |
229 ("k" . "ts") ; tsa | |
230 ("l" . "tsh") ; tsha | |
231 (";" . "dz") ; dza | |
232 ("'" . "w") ; wa | |
233 ("\"" . "+w") ; wa zur | |
234 ("z" . "zh") ; zha | |
235 ("x" . "z") ; za | |
236 ("c" . "'") ; 'a | |
237 ("C" . "+'") ; 'a chung | |
238 ("v" . "y") ; ya | |
239 ("V" . "+y") ; ya btags | |
240 ("b" . "r") ; ra | |
241 ("B" . "+r") ; ra btags | |
242 ("n" . "l") ; la | |
243 ("N" . "+l") ; la btags | |
244 ("m" . "sh") ; sha | |
245 ("M" . "SH") ; SHa | |
246 ("," . "s") ; sa | |
247 ("." . "h") ; ha | |
248 ("/" . "A") ; Aa | |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
249 ;; subjoined |
18968 | 250 ("hq" . "+k") ; ka |
251 ("hQ" ."+kSH") ; kSHa | |
252 ("hw" . "+kh") ; kha | |
253 ("he" . "+g") ; ga | |
254 ("hr" . "+ng") ; nga | |
255 ("ht" . "+c") ; ca | |
256 ("hy" . "+ch") ; cha | |
257 ("hu" . "+j") ; ja | |
258 ("hi" . "+ny") ; nya | |
259 ("ho" . "+t") ; ta | |
260 ("hO" . "+T") ; Ta | |
261 ("hp" . "+th") ; tha | |
262 ("hP" . "+TH") ; THa | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
38453
diff
changeset
|
263 ("h[" . "+d") ; da |
18968 | 264 ("h{" . "+D") ; Da |
265 ("h]" . "+n") ; na | |
266 ("h}" . "+N") ; Na | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
38453
diff
changeset
|
267 ("ha" . "+p") ; pa |
18968 | 268 ("hs" . "+ph") ; pha |
269 ("hd" . "+b") ; ba | |
270 ("hf" . "+m") ; ma | |
271 ("hk" . "+ts") ; tsa | |
272 ("hl" . "+tsh") ; tsha | |
273 ("h;" . "+dz") ; dza | |
274 ("h'" . "+w") ; wa | |
275 ("hz" . "+zh") ; zha | |
276 ("hx" . "+z") ; za | |
277 ("hc" . "+'") ; 'a | |
278 ("hv" . "+y") ; ya | |
279 ("hb" . "+r") ; ra | |
280 ("hn" . "+l") ; la | |
281 ("hm" . "+sh") ; sha | |
282 ("hM" . "+SH") ; SHa | |
283 ("h," . "+s") ; sa | |
284 ("h." . "+h") ; ha | |
285 ("h/" . "+A") ; Aa | |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
286 ;; Special rule for `$(7"B(B' to avoid stacking. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
287 ("E" . "-y") |
18968 | 288 )) |
289 | |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
290 (defconst tibetan-consonant-tibkey-alist nil) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
291 (defconst tibetan-subjoined-tibkey-alist nil) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
292 (defconst tibetan-vowel-tibkey-alist nil) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
293 (defconst tibetan-modifier-tibkey-alist nil) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
294 (defconst tibetan-non-stacking-tibkey-alist nil) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
295 |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
296 (let ((type-list '("consonant" "subjoined" "vowel" "modifier" "non-stacking")) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
297 (tail tibetan-tibkey-to-transcription-alist) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
298 elt) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
299 (while tail |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
300 (setq elt (car tail) tail (cdr tail)) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
301 (let ((types type-list) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
302 type transcription trans-alist tibkey-alist) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
303 (while types |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
304 (setq type (car types) types (cdr types)) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
305 (setq trans-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
306 (if (string= type "non-stacking") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
307 'tibetan-wylie-non-stacking-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
308 (intern (format "tibetan-%s-transcription-alist" type))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
309 transcription |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
310 (cdr (assoc (cdr elt) (symbol-value trans-alist)))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
311 (when transcription |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
312 (setq tibkey-alist (intern (format "tibetan-%s-tibkey-alist" type))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
313 (set tibkey-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
314 (cons (cons (car elt) transcription) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
315 (symbol-value tibkey-alist))))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
316 (or tibkey-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
317 (error "No Tibetan transcription for %s" (cdr elt)))))) |
18968 | 318 |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
319 (defconst tibetan-punctuation-tibkey-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
320 '(("1" . "$(7!Q(B") |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
321 ("!" . "$(7!4(B") ; nyi zla long |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
322 ("2" . "$(7!R(B") |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
323 ("@" . "$(7!5(B") ; nyi zla simple |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
324 ("3" . "$(7!S(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
325 ;;; ("#" ) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
326 ("4" . "$(7!T(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
327 ;;; ("$" ) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
328 ("5" . "$(7!U(B") |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
329 ("%" . "$(7!D(B") |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
330 ("6" . "$(7!V(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
331 ("^" . "$(7!1(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
332 ("7" . "$(7!W(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
333 ("8" . "$(7!X(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
334 ;;; ("*" ) ; avagraha, not supported yet |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
335 ("9" . "$(7!Y(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
336 ("(" . "$(7!l(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
337 ("0" . "$(7!P(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
338 (")" . "$(7!m(B") |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
38453
diff
changeset
|
339 ;;; ("-" ) ; enphatic, not yet supported |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
340 ;;; ("_" ) ; id. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
341 ;;; ("=" ) ; special sign, not yet supported |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
342 ("+" . "$(7!A(B") |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
343 ("\\" . "$(7!?(B") |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
344 ("|" . "$(7!8(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
345 ("I" . "$(7"f(B") ; avagraha |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
346 (":" . "$(7"`(B") |
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
347 ;;; (">" ?$(7!;(B) ; to be assigned to SPC |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
348 (">" . " ") |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
349 ("?" . "$(7!=(B") |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
350 ("??" . "$(7!>(B") |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
351 ("????" . ["$(7!>(B $(7!>(B"]) |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
352 (" " . "$(7!;(B") |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
353 )) |
18968 | 354 |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
355 ;; Convert TibKey string to Tibetan-Roman transcription string. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
356 ;; If there's no proper conversion, return nil. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
357 (defun quail-tibkey-to-transcription (tibkey) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
358 (let ((len (length tibkey)) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
359 (i 0) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
360 (trans-list nil)) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
361 (while (< i len) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
362 (let ((last len) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
363 trans) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
364 (while (and (not trans) (> last i)) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
365 (or (setq trans (cdr (assoc (substring tibkey i last) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
366 tibetan-tibkey-to-transcription-alist))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
367 (setq last (1- last)))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
368 (if trans |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
369 (setq trans-list (cons trans trans-list) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
370 i last) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
371 (setq trans-list nil i len)))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
372 (apply 'concat (nreverse trans-list)))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
373 |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
374 (defvar quail-tibkey-characters nil) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
375 |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
376 (defun quail-tibkey-update-translation (control-flag) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
377 (if (integerp control-flag) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
378 ;; Non-composable-character typed. |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
379 (setq quail-current-str |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
380 (buffer-substring (overlay-start quail-overlay) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
381 (overlay-end quail-overlay)) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
382 unread-command-events |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
383 (string-to-list |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
384 (substring quail-current-key control-flag))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
385 (let ((transcription (quail-tibkey-to-transcription quail-current-key))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
386 (if (> (length transcription) 0) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
387 (let ((quail-current-key transcription)) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
388 (setq control-flag |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
389 (quail-tibetan-update-translation control-flag))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
390 (or quail-current-str |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
391 (setq quail-current-str quail-current-key))))) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
392 control-flag) |
18968 | 393 |
394 (quail-define-package "tibetan-tibkey" "Tibetan" "TIBt" t | |
395 "Tibetan character input by TibKey key assignment. | |
396 | |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
397 \(This implementation is still incomplete. |
18968 | 398 Therefore, the following key assignment is a provisional one.) |
399 | |
400 [NOT SHIFTED] | |
401 | |
402 +-------------------------------------------------------+ | |
403 |`$(7"d(B|1$(7!Q(B|2$(7!R(B|3$(7!S(B|4$(7!T(B|5$(7!U(B|6$(7!V(B|7$(7!W(B|8$(7!X(B|9$(7!Y(B|0$(7!P(B|- |= |\\$(7!8(B| | |
404 +-------------------------------------------------------+ | |
405 |q$(7"!(B|w$(7""(B|e$(7"#(B|r$(7"%(B|t$(7"&(B|y$(7"'(B|u$(7"((B|i$(7"*(B|o$(7"0(B|p$(7"1(B|[$(7"2(B|]$(7"4(B| | |
406 +-----------------------------------------------+ | |
407 |a$(7"5(B| s$(7"6(B| d$(7"7(B|f$(7"9(B|g$(7"U(B|h |j$(7"](B|k$(7":(B|l$(7";(B|;$(7"<(B|'$(7">(B| | |
408 +---------------------------------------------+ | |
409 |z$(7"?(B|x$(7"@(B|c$(7"A(B|v$(7"B(B|b$(7"C(B|n$(7"D(B|m$(7"E(B|,$(7"G(B|.$(7"H(B|/$(7"I(B| | |
410 +---------------------------------------+ | |
411 The key 'h' is used for consonant stacking. | |
412 | |
413 [SHIFTED] | |
414 | |
415 +----------------------------------------------------------+ | |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
416 |~$(7"c(B|!$(7!4(B|@$(7!5(B|# |$ |%$(7!D(B |^$(7!1(B|& |* |($(7!l(B|)$(7!m(B|_ |+$(7!A(B| |$(7!8(B| |
18968 | 417 +----------------------------------------------------------+ |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
418 |Q$(7"J(B|W |E |R |T$(7"a(B|Y |U |I$(7"f(B|O$(7"+(B|P$(7",(B|{$(7"-(B|}$(7"/(B| |
18968 | 419 +-----------------------------------------------+ |
420 |A |S |D |F$(7"_(B|G$(7"S(B|H$(7"e(B|J$(7"[(B|K |L |:$(7"`(B|\"$(7#>(B| | |
421 +-------------------------------------------+ | |
29594
a03c00e0dc04
(tibetan-wylie-quote-alist): This variable deleted.
Kenichi Handa <handa@m17n.org>
parents:
26881
diff
changeset
|
422 |Z |X |C$(7"R(B|V$(7#B(B|B$(7#C(B|N$(7#D(B|M$(7"F(B|< |> |?$(7!=(B | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
38453
diff
changeset
|
423 +---------------------------------------+ |
18968 | 424 |
425 DIFFERENCE FROM THE ORIGINAL TIBKEY: | |
426 | |
427 1. Vowel 'a' should be typed explicitly by the key 'A'. | |
428 This is really inconvenient. But to make the coding | |
429 scheme clear, it is desirable to have an explicite | |
430 vowel sign for 'a'. | |
431 2. Tsheg is assigned to SPC key. You can input a space | |
432 by typing '>'. | |
433 4. To avoid the default stacking $(7$B(B and to obtain $(7"#"B(B, | |
434 type 'E' instead of 'v' (=$(7"B(B). | |
435 3. There are many characters that are not supported in the | |
436 current implementation (especially special signs). I hope | |
437 I'll complete in a future revision. | |
438 " | |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
439 nil nil nil nil nil nil nil nil |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
440 'quail-tibkey-update-translation) |
18968 | 441 |
26881
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
442 (quail-install-map |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
443 (quail-map-from-table |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
444 '((base-state (tibetan-consonant-tibkey-alist . s-state) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
445 (tibetan-non-stacking-tibkey-alist . s-state) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
446 tibetan-subjoined-tibkey-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
447 tibetan-vowel-tibkey-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
448 tibetan-modifier-tibkey-alist |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
449 tibetan-punctuation-tibkey-alist) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
450 (s-state (tibetan-subjoined-tibkey-alist . s-state) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
451 (tibetan-vowel-tibkey-alist . m-state)) |
cd1cb9bf30e1
Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents:
23170
diff
changeset
|
452 (m-state tibetan-modifier-tibkey-alist)))) |
38453
519983161a46
Some fixes to follow lisp coding conventions and typo fixes.
Pavel Janík <Pavel@Janik.cz>
parents:
29594
diff
changeset
|
453 |
52401 | 454 ;;; arch-tag: 828fdb1a-733f-4c7b-b882-a19d2449ac99 |
38453
519983161a46
Some fixes to follow lisp coding conventions and typo fixes.
Pavel Janík <Pavel@Janik.cz>
parents:
29594
diff
changeset
|
455 ;;; tibetan.el ends here |