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