annotate leim/quail/lao.el @ 78275:2904684117d6

Switch license to GPLv3 or later.
author Glenn Morris <rgm@gnu.org>
date Wed, 25 Jul 2007 06:58:19 +0000
parents f5f322eb227f
children 43baea8f514b 95d0cdf160ea
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
40710
890f548046c1 Add coding tag.
Dave Love <fx@gnu.org>
parents: 38453
diff changeset
1 ;;; lao.el --- Quail package for inputting Lao characters -*-coding: iso-2022-7bit;-*-
18673
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
2
75253
f5f322eb227f Update copyright for years from Emacs 21 to present.
Glenn Morris <rgm@gnu.org>
parents: 74605
diff changeset
3 ;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
f5f322eb227f Update copyright for years from Emacs 21 to present.
Glenn Morris <rgm@gnu.org>
parents: 74605
diff changeset
4 ;; 2006, 2007
58756
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
5 ;; National Institute of Advanced Industrial Science and Technology (AIST)
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
6 ;; Registration Number H14PRO021
18673
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
7
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
8 ;; Keywords: multilingual, input method, Lao
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
9
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
10 ;; This file is part of GNU Emacs.
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
11
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
12 ;; GNU Emacs is free software; you can redistribute it and/or modify
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
13 ;; it under the terms of the GNU General Public License as published by
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
14 ;; the Free Software Foundation; either version 2, or (at your option)
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
15 ;; any later version.
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
16
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
17 ;; GNU Emacs is distributed in the hope that it will be useful,
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
20 ;; GNU General Public License for more details.
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
21
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
22 ;; You should have received a copy of the GNU General Public License
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
23 ;; along with GNU Emacs; see the file COPYING. If not, write to the
64083
23a17af379b1 Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 58756
diff changeset
24 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
23a17af379b1 Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 58756
diff changeset
25 ;; Boston, MA 02110-1301, USA.
18673
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
26
38453
519983161a46 Some fixes to follow lisp coding conventions and typo fixes.
Pavel Janík <Pavel@Janik.cz>
parents: 26881
diff changeset
27 ;;; Commentary:
519983161a46 Some fixes to follow lisp coding conventions and typo fixes.
Pavel Janík <Pavel@Janik.cz>
parents: 26881
diff changeset
28
18673
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
29 ;;; Code:
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
30
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
31 (require 'quail)
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
32 (require 'lao-util)
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
33
26881
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
34 (defun quail-lao-update-translation (control-flag)
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
35 (if (integerp control-flag)
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
36 ;; Non-composable character typed.
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
37 (setq quail-current-str
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
38 (buffer-substring (overlay-start quail-overlay)
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
39 (overlay-end quail-overlay))
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
40 unread-command-events
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
41 (string-to-list
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
42 (substring quail-current-key control-flag)))
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
43 (setq quail-current-str
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
44 (compose-string (quail-lookup-map-and-concat quail-current-key))))
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
45 control-flag)
18673
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
46
58756
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
47 (defvar lao-key-alist
26881
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
48 '(("!" . "1")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
49 ("\"" . "=")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
50 ("#" . "3")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
51 ("$" . "4")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
52 ("&" . "5")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
53 ("%" . "(1l(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
54 ("'" . "(1'(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
55 ("(" . "7")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
56 (")" . "8")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
57 ("*" . "6")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
58 ("+" . ["(1mh(B"])
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
59 ("," . "(1A(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
60 ("-" . "(1*(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
61 ("." . "(1c(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
62 ("/" . "(1=(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
63 ("0" . "(1"(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
64 ("1" . "(1B(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
65 ("2" . "(1?(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
66 ("3" . "(1b(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
67 ("4" . "(16(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
68 ("5" . "(1X(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
69 ("6" . "(1Y(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
70 ("7" . "(1$(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
71 ("8" . "(15(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
72 ("9" . "(1((B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
73 (":" . "%")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
74 (";" . "(1G(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
75 ("<" . "(1}(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
76 ("=" . "(1m(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
77 (">" . "$")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
78 ("?" . ")")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
79 ("@" . "2")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
80 ("A" . ["(1Qi(B"])
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
81 ("B" . ["(1Vi(B"])
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
82 ("C" . "(1O(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
83 ("D" . ".")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
84 ("E" . ["(1Si(B"])
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
85 ("F" . ",")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
86 ("G" . ":")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
87 ("H" . "(1j(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
88 ("I" . "(1N(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
89 ("J" . "(1k(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
90 ("K" . "!")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
91 ("L" . "?")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
92 ("M" . "(1f(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
93 ("N" . ["(1Wi(B"])
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
94 ("O" . "(1|(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
95 ("P" . "(1](B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
96 ("Q" . ["(1[i(B"])
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
97 ("R" . "_")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
98 ("S" . ";")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
99 ("T" . "+")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
100 ("U" . ["(1Ui(B"])
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
101 ("V" . "x")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
102 ("W" . "0")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
103 ("X" . "(")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
104 ("Y" . ["(1Ti(B"])
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
105 ("Z" . "\"")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
106 ("[" . "(1:(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
107 ("]" . "(1E(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
108 ("^" . "(1\(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
109 ("_" . "9")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
110 ("`" . "(1'(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
111 ("a" . "(1Q(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
112 ("b" . "(1V(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
113 ("c" . "(1a(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
114 ("d" . "(1!(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
115 ("e" . "(1S(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
116 ("f" . "(14(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
117 ("g" . "(1`(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
118 ("h" . "(1i(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
119 ("i" . "(1C(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
120 ("j" . "(1h(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
121 ("k" . "(1R(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
122 ("l" . "(1J(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
123 ("m" . "(17(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
124 ("n" . "(1W(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
125 ("o" . "(19(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
126 ("p" . "(1-(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
127 ("q" . "(1[(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
128 ("r" . "(1>(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
129 ("s" . "(1K(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
130 ("t" . "(1P(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
131 ("u" . "(1U(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
132 ("v" . "(1M(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
133 ("w" . "(1d(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
134 ("x" . "(1;(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
135 ("y" . "(1T(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
136 ("z" . "(1<(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
137 ("{" . "-")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
138 ("|" . ["(1K\(B"])
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
139 ("}" . "/")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
140 ("~" . "(1l(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
141 ("\\0" . "(1p(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
142 ("\\1" . "(1q(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
143 ("\\2" . "(1r(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
144 ("\\3" . "(1s(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
145 ("\\4" . "(1t(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
146 ("\\5" . "(1u(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
147 ("\\6" . "(1v(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
148 ("\\7" . "(1w(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
149 ("\\8" . "(1x(B")
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
150 ("\\9" . "(1y(B")
58756
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
151 )
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
152 "Alist of key sequences vs the corresponding Lao string to input.
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
153 This variable is for the input method \"lao\".
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
154 If you change the value of this variable while quail/lao is already loaded,
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
155 you need to re-load it to properly re-initialize related alists.")
18673
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
156
58756
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
157 ;; Temporary variable to initialize lao-consonant-key-alist, etc.
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
158 (defconst lao-key-alist-vector
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
159 (let ((tail lao-key-alist)
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
160 consonant-key-alist semivowel-key-alist vowel-key-alist
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
161 voweltone-key-alist tone-key-alist other-key-alist
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
162 elt phonetic-type)
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
163 (while tail
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
164 (setq elt (car tail) tail (cdr tail))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
165 (if (stringp (cdr elt))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
166 (setq phonetic-type (get-char-code-property (aref (cdr elt) 0)
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
167 'phonetic-type))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
168 (setq phonetic-type (get-char-code-property (aref (aref (cdr elt) 0) 0)
26881
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
169 'phonetic-type))
58756
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
170 (aset (cdr elt) 0 (compose-string (aref (cdr elt) 0))))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
171 (cond ((eq phonetic-type 'consonant)
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
172 (setq consonant-key-alist (cons elt consonant-key-alist)))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
173 ((memq phonetic-type '(vowel-upper vowel-lower))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
174 (if (stringp (cdr elt))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
175 (setq vowel-key-alist (cons elt vowel-key-alist))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
176 (setq voweltone-key-alist (cons elt voweltone-key-alist))))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
177 ((eq phonetic-type 'tone)
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
178 (setq tone-key-alist (cons elt tone-key-alist)))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
179 ((eq phonetic-type 'semivowel-lower)
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
180 (setq semivowel-key-alist (cons elt semivowel-key-alist)))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
181 (t
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
182 (setq other-key-alist (cons elt other-key-alist)))))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
183 (vector consonant-key-alist semivowel-key-alist vowel-key-alist
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
184 voweltone-key-alist tone-key-alist other-key-alist)))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
185
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
186 (defconst lao-consonant-key-alist (aref lao-key-alist-vector 0))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
187 (defconst lao-semivowel-key-alist (aref lao-key-alist-vector 1))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
188 (defconst lao-vowel-key-alist (aref lao-key-alist-vector 2))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
189 (defconst lao-voweltone-key-alist (aref lao-key-alist-vector 3))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
190 (defconst lao-tone-key-alist (aref lao-key-alist-vector 4))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
191 (defconst lao-other-key-alist (aref lao-key-alist-vector 5))
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
192
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
193 ;; Done with it.
592861b6d3c5 (lao-key-alist): Declare it by defvar.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
194 (makunbound 'lao-key-alist-vector)
18673
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
195
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
196 (quail-define-package
19261
84a9af170661 Change title string of input method "Lao".
Kenichi Handa <handa@m17n.org>
parents: 18673
diff changeset
197 "lao" "Lao" "(1E(B" t
18673
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
198 "Lao input method simulating Lao keyboard layout based on Thai TIS620"
26881
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
199 nil t t t t nil nil nil 'quail-lao-update-translation nil t)
18673
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
200
26881
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
201 (quail-install-map
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
202 (quail-map-from-table
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
203 '((base-state (lao-consonant-key-alist . svt-state)
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
204 lao-vowel-key-alist
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
205 lao-voweltone-key-alist
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
206 lao-tone-key-alist
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
207 lao-other-key-alist)
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
208 (svt-state (lao-semivowel-key-alist . v-state)
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
209 (lao-vowel-key-alist . t-state)
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
210 lao-voweltone-key-alist)
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
211 (v-state (lao-vowel-key-alist . t-state))
cd1cb9bf30e1 Rewritten for new composition.
Kenichi Handa <handa@m17n.org>
parents: 19722
diff changeset
212 (t-state lao-tone-key-alist))))
18673
751941736224 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
213
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 40710
diff changeset
214 ;;; arch-tag: 23863a30-a8bf-402c-b7ce-c517a7aa8570
38453
519983161a46 Some fixes to follow lisp coding conventions and typo fixes.
Pavel Janík <Pavel@Janik.cz>
parents: 26881
diff changeset
215 ;;; lao.el ends here