annotate leim/quail/lao.el @ 58795:ee4b3f047a97

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