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