1 ;; quail/ethiopic.el --- Quail package for inputting Ethiopic characters
3 ;; Copyright (C) 1997, 1998 Electrotechnical Laboratory, JAPAN.
4 ;; Licensed to the Free Software Foundation.
6 ;; Keywords: multilingual, input method, ethiopic
8 ;; This file is part of GNU Emacs.
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
11 ;; it under the terms of the GNU General Public License as published by
12 ;; the Free Software Foundation; either version 2, or (at your option)
15 ;; GNU Emacs is distributed in the hope that it will be useful,
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 ;; GNU General Public License for more details.
20 ;; You should have received a copy of the GNU General Public License
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
23 ;; Boston, MA 02111-1307, USA.
25 ;; Author: TAKAHASHI Naoto <ntakahas@etl.go.jp>
33 ;; The package "ethiopic"
39 (ethio-prefer-ascii-space "_" "
\e$(3$h
\e(B")
40 (ethio-prefer-ascii-punctuation "." "
\e$(3$i
\e(B"))
41 t " QUAIL PACKAGE FOR ETHIOPIC (TIGRIGNA AND AMHARIC)
43 When you activate this package, Ethio minor mode is also turned on.
47 F2 or `M-x ethio-toggle-space'
48 Toggles space characters for keyboard input. The current mode is
49 indicated in mode-line, whether by `_' (ASCII space) or `
\e$(3$h
\e(B'
50 (Ethiopic colon-like word separator). Even in the `
\e$(3$h
\e(B' mode, an
51 ASCII space is inserted if the point is preceded by `an Ethiopic
52 punctuation followed by zero or more ASCII spaces'.
54 F3 or `M-x ethio-toggle-punctuation'
55 Toggles ASCII punctuations and Ethiopic punctuations for keyboard input.
56 The current mode is indicated by `.' (ASCII) or `
\e$(3$i
\e(B' (Ethiopic).
58 S-SPC or `M-x ethio-insert-ethio-space'
59 Always insert an Ethiopic word separator `
\e$(3$h
\e(B'. With a prefix number,
60 insert that many word separators.
62 C-' or `M-x ethio-gemination'
63 Compose the character before the point with the Ethiopic gemination mark.
64 If the characater is already composed, decompose it and remove the
67 ;; The following keys should work as defined in lisp/language/ethio-util,
68 ;; even during the translation.
69 '(([f2] . quail-execute-non-quail-command)
70 ([f3] . quail-execute-non-quail-command)
71 (" " . quail-execute-non-quail-command)
72 ([?\S- ] . quail-execute-non-quail-command)
73 ([?\C-'] . quail-execute-non-quail-command))
103 ("lWe" ["
\e$(3!.%n
\e(B"])
104 ("lWu" ["
\e$(3!.%r
\e(B"])
105 ("lWi" ["
\e$(3!.%o
\e(B"])
106 ("lWE" ["
\e$(3!.%q
\e(B"])
107 ("lW'" ["
\e$(3!.%r
\e(B"])
119 ("LWe" ["
\e$(3!.%n
\e(B"])
120 ("LWu" ["
\e$(3!.%r
\e(B"])
121 ("LWi" ["
\e$(3!.%o
\e(B"])
122 ("LWE" ["
\e$(3!.%q
\e(B"])
123 ("LW'" ["
\e$(3!.%r
\e(B"])
135 ("HWe" ["
\e$(3!6%n
\e(B"])
136 ("HWu" ["
\e$(3!6%r
\e(B"])
137 ("HWi" ["
\e$(3!6%o
\e(B"])
138 ("HWE" ["
\e$(3!6%q
\e(B"])
139 ("HW'" ["
\e$(3!6%r
\e(B"])
155 ("mWee" ?
\e$(3%Q
\e(B)
174 ("MWee" ?
\e$(3%Q
\e(B)
184 ("`see" ?
\e$(3!E
\e(B)
188 ("`sWa" ?
\e$(3!H
\e(B)
189 ("`sWe" ["
\e$(3!F%n
\e(B"])
190 ("`sWu" ["
\e$(3!F%r
\e(B"])
191 ("`sWi" ["
\e$(3!F%o
\e(B"])
192 ("`sWE" ["
\e$(3!F%q
\e(B"])
193 ("`sWee" ["
\e$(3!F%q
\e(B"])
194 ("`sW'" ["
\e$(3!F%r
\e(B"])
201 ("s2ee" ?
\e$(3!E
\e(B)
205 ("s2Wa" ?
\e$(3!H
\e(B)
206 ("s2We" ["
\e$(3!F%n
\e(B"])
207 ("s2Wu" ["
\e$(3!F%r
\e(B"])
208 ("s2Wi" ["
\e$(3!F%o
\e(B"])
209 ("s2WE" ["
\e$(3!F%q
\e(B"])
210 ("s2Wee" ["
\e$(3!F%q
\e(B"])
211 ("s2W'" ["
\e$(3!F%r
\e(B"])
218 ("ssee" ?
\e$(3!E
\e(B)
222 ("ssWa" ?
\e$(3!H
\e(B)
223 ("ssWe" ["
\e$(3!F%n
\e(B"])
224 ("ssWu" ["
\e$(3!F%r
\e(B"])
225 ("ssWi" ["
\e$(3!F%o
\e(B"])
226 ("ssWE" ["
\e$(3!F%q
\e(B"])
227 ("ssWee" ["
\e$(3!F%q
\e(B"])
228 ("ssW'" ["
\e$(3!F%r
\e(B"])
242 ("rWe" ["
\e$(3!N%n
\e(B"])
243 ("rWu" ["
\e$(3!N%r
\e(B"])
244 ("rWi" ["
\e$(3!N%o
\e(B"])
245 ("rWE" ["
\e$(3!N%q
\e(B"])
246 ("rWee" ["
\e$(3!N%q
\e(B"])
247 ("rW'" ["
\e$(3!N%r
\e(B"])
260 ("RWe" ["
\e$(3!N%n
\e(B"])
261 ("RWu" ["
\e$(3!N%r
\e(B"])
262 ("RWi" ["
\e$(3!N%o
\e(B"])
263 ("RWE" ["
\e$(3!N%q
\e(B"])
264 ("RWee" ["
\e$(3!N%q
\e(B"])
265 ("RW'" ["
\e$(3!N%r
\e(B"])
277 ("sWe" ["
\e$(3!V%n
\e(B"])
278 ("sWu" ["
\e$(3!V%r
\e(B"])
279 ("sWi" ["
\e$(3!V%o
\e(B"])
280 ("sWE" ["
\e$(3!V%q
\e(B"])
281 ("sWee" ["
\e$(3!V%q
\e(B"])
282 ("sW'" ["
\e$(3!V%r
\e(B"])
294 ("xWe" ["
\e$(3!^%n
\e(B"])
295 ("xWu" ["
\e$(3!^%r
\e(B"])
296 ("xWi" ["
\e$(3!^%o
\e(B"])
297 ("xWE" ["
\e$(3!^%q
\e(B"])
298 ("xWee" ["
\e$(3!^%q
\e(B"])
299 ("xW'" ["
\e$(3!^%r
\e(B"])
315 ("qWee" ?
\e$(3!m
\e(B)
323 ("`qee" ?
\e$(3%-
\e(B)
332 ("q2ee" ?
\e$(3%-
\e(B)
341 ("qqee" ?
\e$(3%-
\e(B)
359 ("QWee" ?
\e$(3!}
\e(B)
376 ("bWee" ?
\e$(3%R
\e(B)
393 ("BWee" ?
\e$(3%R
\e(B)
406 ("vWe" ["
\e$(3"0%n
\e(B"])
407 ("vWu" ["
\e$(3"0%r
\e(B"])
408 ("vWi" ["
\e$(3"0%o
\e(B"])
409 ("vWE" ["
\e$(3"0%q
\e(B"])
410 ("vWee" ["
\e$(3"0%q
\e(B"])
411 ("vW'" ["
\e$(3"0%r
\e(B"])
423 ("VWe" ["
\e$(3"0%n
\e(B"])
424 ("VWu" ["
\e$(3"0%r
\e(B"])
425 ("VWi" ["
\e$(3"0%o
\e(B"])
426 ("VWE" ["
\e$(3"0%q
\e(B"])
427 ("VWee" ["
\e$(3"0%q
\e(B"])
428 ("VW'" ["
\e$(3"0%r
\e(B"])
440 ("tWe" ["
\e$(3"8%n
\e(B"])
441 ("tWu" ["
\e$(3"8%r
\e(B"])
442 ("tWi" ["
\e$(3"8%o
\e(B"])
443 ("tWE" ["
\e$(3"8%q
\e(B"])
444 ("tWee" ["
\e$(3"8%q
\e(B"])
445 ("tW'" ["
\e$(3"8%r
\e(B"])
457 ("cWe" ["
\e$(3"@%n
\e(B"])
458 ("cWu" ["
\e$(3"@%r
\e(B"])
459 ("cWi" ["
\e$(3"@%o
\e(B"])
460 ("cWE" ["
\e$(3"@%q
\e(B"])
461 ("cWee" ["
\e$(3"@%q
\e(B"])
462 ("cW'" ["
\e$(3"@%r
\e(B"])
469 ("`hee" ?
\e$(3"G
\e(B)
472 ("`hWe" ?
\e$(3"K
\e(B)
473 ("`hWu" ?
\e$(3"P
\e(B)
474 ("`hWi" ?
\e$(3"M
\e(B)
476 ("`hWa" ?
\e$(3"N
\e(B)
477 ("`hWE" ?
\e$(3"O
\e(B)
478 ("`hWee" ?
\e$(3"O
\e(B)
479 ("`hW'" ?
\e$(3"P
\e(B)
486 ("h2ee" ?
\e$(3"G
\e(B)
489 ("h2We" ?
\e$(3"K
\e(B)
490 ("h2Wu" ?
\e$(3"P
\e(B)
491 ("h2Wi" ?
\e$(3"M
\e(B)
493 ("h2Wa" ?
\e$(3"N
\e(B)
494 ("h2WE" ?
\e$(3"O
\e(B)
495 ("h2Wee" ?
\e$(3"O
\e(B)
496 ("h2W'" ?
\e$(3"P
\e(B)
503 ("hhee" ?
\e$(3"G
\e(B)
506 ("hhWe" ?
\e$(3"K
\e(B)
507 ("hhWu" ?
\e$(3"P
\e(B)
508 ("hhWi" ?
\e$(3"M
\e(B)
510 ("hhWa" ?
\e$(3"N
\e(B)
511 ("hhWE" ?
\e$(3"O
\e(B)
512 ("hhWee" ?
\e$(3"O
\e(B)
513 ("hhW'" ?
\e$(3"P
\e(B)
525 ("nWe" ["
\e$(3"X%n
\e(B"])
526 ("nWu" ["
\e$(3"X%r
\e(B"])
527 ("nWi" ["
\e$(3"X%o
\e(B"])
528 ("nWE" ["
\e$(3"X%q
\e(B"])
529 ("nWee" ["
\e$(3"X%q
\e(B"])
530 ("nW'" ["
\e$(3"X%r
\e(B"])
542 ("NWe" ["
\e$(3"`%n
\e(B"])
543 ("NWu" ["
\e$(3"`%r
\e(B"])
544 ("NWi" ["
\e$(3"`%o
\e(B"])
545 ("NWE" ["
\e$(3"`%q
\e(B"])
546 ("NWee" ["
\e$(3"`%q
\e(B"])
547 ("NW'" ["
\e$(3"`%r
\e(B"])
549 ; ("e" ?
\e$(3"c
\e(B) ; old style
556 ; ("ee" ?
\e$(3"g
\e(B) ; Alef-E is rare vs Aynu-I, so ee = Aynu-I
558 ("e" ?
\e$(3"h
\e(B) ; This is the premise to "new style" for vowels
578 ("kWee" ?
\e$(3"w
\e(B)
586 ("`kee" ?
\e$(3%=
\e(B)
595 ("k2ee" ?
\e$(3%=
\e(B)
604 ("kkee" ?
\e$(3%=
\e(B)
622 ("KWee" ?
\e$(3#)
\e(B)
667 ; ("ee" ?
\e$(3#5
\e(B) ; old style
668 ("ae" ?
\e$(3#5
\e(B) ; new style
669 ("aaa" ?
\e$(3#5
\e(B) ; new style
677 ("ee" ?
\e$(3#:
\e(B) ; new style
691 ("zWe" ["
\e$(3#B%n
\e(B"])
692 ("zWu" ["
\e$(3#B%r
\e(B"])
693 ("zWi" ["
\e$(3#B%o
\e(B"])
694 ("zWE" ["
\e$(3#B%q
\e(B"])
695 ("zWee" ["
\e$(3#B%q
\e(B"])
696 ("zW'" ["
\e$(3#B%r
\e(B"])
708 ("ZWe" ["
\e$(3#J%n
\e(B"])
709 ("ZWu" ["
\e$(3#J%r
\e(B"])
710 ("ZWi" ["
\e$(3#J%o
\e(B"])
711 ("ZWE" ["
\e$(3#J%q
\e(B"])
712 ("ZWee" ["
\e$(3#J%q
\e(B"])
713 ("ZW'" ["
\e$(3#J%r
\e(B"])
725 ("yWe" ["
\e$(3#R%n
\e(B"])
726 ("yWu" ["
\e$(3#R%r
\e(B"])
727 ("yWi" ["
\e$(3#R%o
\e(B"])
728 ("yWE" ["
\e$(3#R%q
\e(B"])
729 ("yWee" ["
\e$(3#R%q
\e(B"])
730 ("yW'" ["
\e$(3#R%r
\e(B"])
742 ("YWe" ["
\e$(3#R%n
\e(B"])
743 ("YWu" ["
\e$(3#R%r
\e(B"])
744 ("YWi" ["
\e$(3#R%o
\e(B"])
745 ("YWE" ["
\e$(3#R%q
\e(B"])
746 ("YWee" ["
\e$(3#R%q
\e(B"])
747 ("YW'" ["
\e$(3#R%r
\e(B"])
759 ("dWe" ["
\e$(3#Z%n
\e(B"])
760 ("dWu" ["
\e$(3#Z%r
\e(B"])
761 ("dWi" ["
\e$(3#Z%o
\e(B"])
762 ("dWE" ["
\e$(3#Z%q
\e(B"])
763 ("dWee" ["
\e$(3#Z%q
\e(B"])
764 ("dW'" ["
\e$(3#Z%r
\e(B"])
776 ("DWe" ["
\e$(3#b%n
\e(B"])
777 ("DWu" ["
\e$(3#b%r
\e(B"])
778 ("DWi" ["
\e$(3#b%o
\e(B"])
779 ("DWE" ["
\e$(3#b%q
\e(B"])
780 ("DWee" ["
\e$(3#b%q
\e(B"])
781 ("DW'" ["
\e$(3#b%r
\e(B"])
793 ("jWe" ["
\e$(3#j%n
\e(B"])
794 ("jWu" ["
\e$(3#j%r
\e(B"])
795 ("jWi" ["
\e$(3#j%o
\e(B"])
796 ("jWE" ["
\e$(3#j%q
\e(B"])
797 ("jWee" ["
\e$(3#j%q
\e(B"])
798 ("jW'" ["
\e$(3#j%r
\e(B"])
810 ("JWe" ["
\e$(3#j%n
\e(B"])
811 ("JWu" ["
\e$(3#j%r
\e(B"])
812 ("JWi" ["
\e$(3#j%o
\e(B"])
813 ("JWE" ["
\e$(3#j%q
\e(B"])
814 ("JWee" ["
\e$(3#j%q
\e(B"])
815 ("JW'" ["
\e$(3#j%r
\e(B"])
831 ("gWee" ?
\e$(3#y
\e(B)
839 ("`gee" ?
\e$(3%]
\e(B)
848 ("g2ee" ?
\e$(3%]
\e(B)
857 ("ggee" ?
\e$(3%]
\e(B)
875 ("GWee" ?
\e$(3%S
\e(B)
888 ("TWe" ["
\e$(3$,%n
\e(B"])
889 ("TWu" ["
\e$(3$,%r
\e(B"])
890 ("TWi" ["
\e$(3$,%o
\e(B"])
891 ("TWE" ["
\e$(3$,%q
\e(B"])
892 ("TWee" ["
\e$(3$,%q
\e(B"])
893 ("TW'" ["
\e$(3$,%r
\e(B"])
905 ("CWe" ["
\e$(3$4%n
\e(B"])
906 ("CWu" ["
\e$(3$4%r
\e(B"])
907 ("CWi" ["
\e$(3$4%o
\e(B"])
908 ("CWE" ["
\e$(3$4%q
\e(B"])
909 ("CWee" ["
\e$(3$4%q
\e(B"])
910 ("CW'" ["
\e$(3$4%r
\e(B"])
922 ("PWe" ["
\e$(3$<%n
\e(B"])
923 ("PWu" ["
\e$(3$<%r
\e(B"])
924 ("PWi" ["
\e$(3$<%o
\e(B"])
925 ("PWE" ["
\e$(3$<%q
\e(B"])
926 ("PWee" ["
\e$(3$<%q
\e(B"])
927 ("PW'" ["
\e$(3$<%r
\e(B"])
939 ("SWe" ["
\e$(3$D%n
\e(B"])
940 ("SWu" ["
\e$(3$D%r
\e(B"])
941 ("SWi" ["
\e$(3$D%o
\e(B"])
942 ("SWE" ["
\e$(3$D%q
\e(B"])
943 ("SWee" ["
\e$(3$D%q
\e(B"])
944 ("SW'" ["
\e$(3$D%r
\e(B"])
951 ("`See" ?
\e$(3$K
\e(B)
955 ("`SWa" ?
\e$(3$F
\e(B)
956 ("`SWe" ["
\e$(3$L%n
\e(B"])
957 ("`SWu" ["
\e$(3$L%r
\e(B"])
958 ("`SWi" ["
\e$(3$L%o
\e(B"])
959 ("`SWE" ["
\e$(3$L%q
\e(B"])
960 ("`SWee" ["
\e$(3$L%q
\e(B"])
961 ("`SW'" ["
\e$(3$L%r
\e(B"])
968 ("S2ee" ?
\e$(3$K
\e(B)
972 ("S2Wa" ?
\e$(3$F
\e(B)
973 ("S2We" ["
\e$(3$L%n
\e(B"])
974 ("S2Wu" ["
\e$(3$L%r
\e(B"])
975 ("S2Wi" ["
\e$(3$L%o
\e(B"])
976 ("S2WE" ["
\e$(3$L%q
\e(B"])
977 ("S2Wee" ["
\e$(3$L%q
\e(B"])
978 ("S2W'" ["
\e$(3$L%r
\e(B"])
985 ("SSee" ?
\e$(3$K
\e(B)
989 ("SSWa" ?
\e$(3$F
\e(B)
990 ("SSWe" ["
\e$(3$L%n
\e(B"])
991 ("SSWu" ["
\e$(3$L%r
\e(B"])
992 ("SSWi" ["
\e$(3$L%o
\e(B"])
993 ("SSWE" ["
\e$(3$L%q
\e(B"])
994 ("SSWee" ["
\e$(3$L%q
\e(B"])
995 ("SW'" ["
\e$(3$L%r
\e(B"])
1002 ("fee" ?
\e$(3$S
\e(B)
1005 ("fWe" ?
\e$(3%4
\e(B)
1006 ("fWu" ?
\e$(3%d
\e(B)
1007 ("fWi" ?
\e$(3%D
\e(B)
1009 ("fWa" ?
\e$(3$V
\e(B)
1010 ("fWE" ?
\e$(3%T
\e(B)
1011 ("fWee" ?
\e$(3%T
\e(B)
1012 ("fW'" ?
\e$(3%d
\e(B)
1014 ("fYa" ?
\e$(3$a
\e(B)
1021 ("Fee" ?
\e$(3$S
\e(B)
1024 ("FWe" ?
\e$(3%4
\e(B)
1025 ("FWu" ?
\e$(3%d
\e(B)
1026 ("FWi" ?
\e$(3%D
\e(B)
1028 ("FWa" ?
\e$(3$V
\e(B)
1029 ("FWE" ?
\e$(3%T
\e(B)
1030 ("FWee" ?
\e$(3%T
\e(B)
1031 ("FW'" ?
\e$(3%d
\e(B)
1033 ("FYa" ?
\e$(3$a
\e(B)
1040 ("pee" ?
\e$(3$[
\e(B)
1043 ("pWe" ?
\e$(3%5
\e(B)
1044 ("pWu" ?
\e$(3%e
\e(B)
1045 ("pWi" ?
\e$(3%E
\e(B)
1047 ("pWa" ?
\e$(3$^
\e(B)
1048 ("pWE" ?
\e$(3%U
\e(B)
1049 ("pWee" ?
\e$(3%U
\e(B)
1050 ("pW'" ?
\e$(3%e
\e(B)
1068 (":|:" ?
\e$(3$o
\e(B)
1076 ("wWe" ?
\e$(3%n
\e(B)
1077 ("wWu" ?
\e$(3%r
\e(B)
1078 ("wWi" ?
\e$(3%o
\e(B)
1080 ("wWa" ?
\e$(3%p
\e(B)
1081 ("wWE" ?
\e$(3%q
\e(B)
1082 ("wWee" ?
\e$(3%q
\e(B)
1083 ("wW'" ?
\e$(3%r
\e(B)
1090 ("Wee" ?
\e$(3%q
\e(B)
1101 ("`10" ?
\e$(3$y
\e(B)
1102 ("`20" ?
\e$(3$z
\e(B)
1103 ("`30" ?
\e$(3${
\e(B)
1104 ("`40" ?
\e$(3$|
\e(B)
1105 ("`50" ?
\e$(3$}
\e(B)
1106 ("`60" ?
\e$(3$~
\e(B)
1107 ("`70" ?
\e$(3%!
\e(B)
1108 ("`80" ?
\e$(3%"
\e(B)
1109 ("`90" ?
\e$(3%#
\e(B)
1110 ("`100" ?
\e$(3%$
\e(B)
1111 ("`1000" ["
\e$(3$y%$
\e(B"])
1112 ("`2000" ["
\e$(3$z%$
\e(B"])
1113 ("`3000" ["
\e$(3${%$
\e(B"])
1114 ("`4000" ["
\e$(3$|%$
\e(B"])
1115 ("`5000" ["
\e$(3$}%$
\e(B"])
1116 ("`6000" ["
\e$(3$~%$
\e(B"])
1117 ("`7000" ["
\e$(3%!%$
\e(B"])
1118 ("`8000" ["
\e$(3%"%$
\e(B"])
1119 ("`9000" ["
\e$(3%#%$
\e(B"])
1120 ("`10000" ?
\e$(3%%
\e(B)
1121 ("`20000" ["
\e$(3$q%%
\e(B"])
1122 ("`30000" ["
\e$(3$r%%
\e(B"])
1123 ("`40000" ["
\e$(3$s%%
\e(B"])
1124 ("`50000" ["
\e$(3$t%%
\e(B"])
1125 ("`60000" ["
\e$(3$u%%
\e(B"])
1126 ("`70000" ["
\e$(3$v%%
\e(B"])
1127 ("`80000" ["
\e$(3$w%%
\e(B"])
1128 ("`90000" ["
\e$(3$x%%
\e(B"])
1129 ("`100000" ["
\e$(3$y%%
\e(B"])
1130 ("`200000" ["
\e$(3$z%%
\e(B"])
1131 ("`300000" ["
\e$(3${%%
\e(B"])
1132 ("`400000" ["
\e$(3$|%%
\e(B"])
1133 ("`500000" ["
\e$(3$}%%
\e(B"])
1134 ("`600000" ["
\e$(3$~%%
\e(B"])
1135 ("`700000" ["
\e$(3%!%%
\e(B"])
1136 ("`800000" ["
\e$(3%"%%
\e(B"])
1137 ("`900000" ["
\e$(3%#%%
\e(B"])
1138 ("`1000000" ["
\e$(3%$%%
\e(B"])
1141 (defun ethio-select-a-translation ()
1142 ;; The translation of `a' depends on the language
1143 ;; (either Tigrigna or Amharic).
1145 (if (ethio-prefer-amharic-p) ?
\e$(3"c
\e(B ?
\e$(3"f
\e(B)
1148 ;;; quail/ethiopic.el ends here