1 ;;; ethiopic.el --- Quail package for inputting Ethiopic characters -*-coding: iso-2022-7bit;-*-
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>
35 ;; The package "ethiopic"
41 (ethio-prefer-ascii-space "_" "\e$(3$h\e(B")
42 (ethio-prefer-ascii-punctuation "." "\e$(3$i\e(B"))
43 t
" Quail package for Ethiopic (Tigrigna and Amharic)
45 When you are in Ethiopic language environment, the following special
48 C-F9 or `M-x ethio-toggle-space'
49 Toggles space characters for keyboard input. The current mode is
50 indicated in mode-line, whether by `_' (ASCII space) or `\e$(3$h\e(B'
51 (Ethiopic colon-like word separator). Even in the `\e$(3$h\e(B' mode, an
52 ASCII space is inserted if the point is preceded by `an Ethiopic
53 punctuation followed by zero or more ASCII spaces'.
55 S-F5 or `M-x ethio-toggle-punctuation'
56 Toggles ASCII punctuations and Ethiopic punctuations for keyboard input.
57 The current mode is indicated by `.' (ASCII) or `\e$(3$i\e(B' (Ethiopic).
59 S-SPC or `M-x ethio-insert-ethio-space'
60 Always insert an Ethiopic word separator `\e$(3$h\e(B'. With a prefix number,
61 insert that many word separators.
63 C-' or `M-x ethio-gemination'
64 Compose the character before the point with the Ethiopic gemination mark.
65 If the characater is already composed, decompose it and remove the
68 ;; The following keys should work as defined in lisp/language/ethio-util,
69 ;; even during the translation.
70 '(([C-f9
] . quail-execute-non-quail-command
)
71 ([S-f5
] . quail-execute-non-quail-command
)
72 (" " . quail-execute-non-quail-command
)
73 ([?\S-
] . quail-execute-non-quail-command
)
74 ([?\C-
'] . quail-execute-non-quail-command
))
104 ("lWe" ["\e$(3!.%n\e(B"])
105 ("lWu" ["\e$(3!.%r\e(B"])
106 ("lWi" ["\e$(3!.%o\e(B"])
107 ("lWE" ["\e$(3!.%q\e(B"])
108 ("lW'" ["\e$(3!.%r\e(B"])
120 ("LWe" ["\e$(3!.%n\e(B"])
121 ("LWu" ["\e$(3!.%r\e(B"])
122 ("LWi" ["\e$(3!.%o\e(B"])
123 ("LWE" ["\e$(3!.%q\e(B"])
124 ("LW'" ["\e$(3!.%r\e(B"])
136 ("HWe" ["\e$(3!6%n\e(B"])
137 ("HWu" ["\e$(3!6%r\e(B"])
138 ("HWi" ["\e$(3!6%o\e(B"])
139 ("HWE" ["\e$(3!6%q\e(B"])
140 ("HW'" ["\e$(3!6%r\e(B"])
156 ("mWee" ?
\e$
(3%Q
\e(B)
175 ("MWee" ?
\e$
(3%Q
\e(B)
185 ("`see" ?
\e$
(3!E
\e(B)
189 ("`sWa" ?
\e$
(3!H
\e(B)
190 ("`sWe" ["\e$(3!F%n\e(B"])
191 ("`sWu" ["\e$(3!F%r\e(B"])
192 ("`sWi" ["\e$(3!F%o\e(B"])
193 ("`sWE" ["\e$(3!F%q\e(B"])
194 ("`sWee" ["\e$(3!F%q\e(B"])
195 ("`sW'" ["\e$(3!F%r\e(B"])
202 ("s2ee" ?
\e$
(3!E
\e(B)
206 ("s2Wa" ?
\e$
(3!H
\e(B)
207 ("s2We" ["\e$(3!F%n\e(B"])
208 ("s2Wu" ["\e$(3!F%r\e(B"])
209 ("s2Wi" ["\e$(3!F%o\e(B"])
210 ("s2WE" ["\e$(3!F%q\e(B"])
211 ("s2Wee" ["\e$(3!F%q\e(B"])
212 ("s2W'" ["\e$(3!F%r\e(B"])
219 ("ssee" ?
\e$
(3!E
\e(B)
223 ("ssWa" ?
\e$
(3!H
\e(B)
224 ("ssWe" ["\e$(3!F%n\e(B"])
225 ("ssWu" ["\e$(3!F%r\e(B"])
226 ("ssWi" ["\e$(3!F%o\e(B"])
227 ("ssWE" ["\e$(3!F%q\e(B"])
228 ("ssWee" ["\e$(3!F%q\e(B"])
229 ("ssW'" ["\e$(3!F%r\e(B"])
243 ("rWe" ["\e$(3!N%n\e(B"])
244 ("rWu" ["\e$(3!N%r\e(B"])
245 ("rWi" ["\e$(3!N%o\e(B"])
246 ("rWE" ["\e$(3!N%q\e(B"])
247 ("rWee" ["\e$(3!N%q\e(B"])
248 ("rW'" ["\e$(3!N%r\e(B"])
261 ("RWe" ["\e$(3!N%n\e(B"])
262 ("RWu" ["\e$(3!N%r\e(B"])
263 ("RWi" ["\e$(3!N%o\e(B"])
264 ("RWE" ["\e$(3!N%q\e(B"])
265 ("RWee" ["\e$(3!N%q\e(B"])
266 ("RW'" ["\e$(3!N%r\e(B"])
278 ("sWe" ["\e$(3!V%n\e(B"])
279 ("sWu" ["\e$(3!V%r\e(B"])
280 ("sWi" ["\e$(3!V%o\e(B"])
281 ("sWE" ["\e$(3!V%q\e(B"])
282 ("sWee" ["\e$(3!V%q\e(B"])
283 ("sW'" ["\e$(3!V%r\e(B"])
295 ("xWe" ["\e$(3!^%n\e(B"])
296 ("xWu" ["\e$(3!^%r\e(B"])
297 ("xWi" ["\e$(3!^%o\e(B"])
298 ("xWE" ["\e$(3!^%q\e(B"])
299 ("xWee" ["\e$(3!^%q\e(B"])
300 ("xW'" ["\e$(3!^%r\e(B"])
316 ("qWee" ?
\e$
(3!m
\e(B)
324 ("`qee" ?
\e$
(3%-
\e(B)
333 ("q2ee" ?
\e$
(3%-
\e(B)
342 ("qqee" ?
\e$
(3%-
\e(B)
360 ("QWee" ?
\e$
(3!}\e(B)
377 ("bWee" ?
\e$
(3%R
\e(B)
394 ("BWee" ?
\e$
(3%R
\e(B)
407 ("vWe" ["\e$(3"0%n
\e(B"])
408 ("vWu
" ["\e$
(3"0%r\e(B"])
409 ("vWi" ["\e$(3"0%o
\e(B"])
410 ("vWE
" ["\e$
(3"0%q\e(B"])
411 ("vWee" ["\e$(3"0%q
\e(B"])
412 ("vW
'" ["\e$
(3"0%r\e(B"])
424 ("VWe" ["\e$(3"0%n
\e(B"])
425 ("VWu
" ["\e$
(3"0%r\e(B"])
426 ("VWi" ["\e$(3"0%o
\e(B"])
427 ("VWE
" ["\e$
(3"0%q\e(B"])
428 ("VWee" ["\e$(3"0%q
\e(B"])
429 ("VW
'" ["\e$
(3"0%r\e(B"])
441 ("tWe" ["\e$(3"8%n
\e(B"])
442 ("tWu
" ["\e$
(3"8%r\e(B"])
443 ("tWi" ["\e$(3"8%o
\e(B"])
444 ("tWE
" ["\e$
(3"8%q\e(B"])
445 ("tWee" ["\e$(3"8%q
\e(B"])
446 ("tW
'" ["\e$
(3"8%r\e(B"])
458 ("cWe" ["\e$(3"@%n
\e(B"])
459 ("cWu
" ["\e$
(3"@%r\e(B"])
460 ("cWi" ["\e$(3"@%o
\e(B"])
461 ("cWE
" ["\e$
(3"@%q\e(B"])
462 ("cWee" ["\e$(3"@%q
\e(B"])
463 ("cW
'" ["\e$
(3"@%r\e(B"])
470 ("`hee
" ?\e$(3"G
\e(B)
473 ("`hWe" ?
\e$
(3"K\e(B)
474 ("`hWu
" ?\e$(3"P
\e(B)
475 ("`hWi" ?
\e$
(3"M\e(B)
477 ("`hWa" ?
\e$
(3"N\e(B)
478 ("`hWE
" ?\e$(3"O
\e(B)
479 ("`hWee" ?
\e$
(3"O\e(B)
480 ("`hW
'" ?\e$(3"P
\e(B)
487 ("h2ee
" ?\e$(3"G
\e(B)
490 ("h2We" ?
\e$
(3"K\e(B)
491 ("h2Wu
" ?\e$(3"P
\e(B)
492 ("h2Wi" ?
\e$
(3"M\e(B)
494 ("h2Wa" ?
\e$
(3"N\e(B)
495 ("h2WE
" ?\e$(3"O
\e(B)
496 ("h2Wee" ?
\e$
(3"O\e(B)
497 ("h2W
'" ?\e$(3"P
\e(B)
504 ("hhee
" ?\e$(3"G
\e(B)
507 ("hhWe" ?
\e$
(3"K\e(B)
508 ("hhWu
" ?\e$(3"P
\e(B)
509 ("hhWi" ?
\e$
(3"M\e(B)
511 ("hhWa" ?
\e$
(3"N\e(B)
512 ("hhWE
" ?\e$(3"O
\e(B)
513 ("hhWee" ?
\e$
(3"O\e(B)
514 ("hhW
'" ?\e$(3"P
\e(B)
526 ("nWe" ["\e$(3"X%n
\e(B"])
527 ("nWu
" ["\e$
(3"X%r\e(B"])
528 ("nWi" ["\e$(3"X%o
\e(B"])
529 ("nWE
" ["\e$
(3"X%q\e(B"])
530 ("nWee" ["\e$(3"X%q
\e(B"])
531 ("nW
'" ["\e$
(3"X%r\e(B"])
543 ("NWe" ["\e$(3"`%n
\e(B"])
544 ("NWu
" ["\e$
(3"`%r\e(B"])
545 ("NWi" ["\e$(3"`%o
\e(B"])
546 ("NWE
" ["\e$
(3"`%q\e(B"])
547 ("NWee" ["\e$(3"`%q
\e(B"])
548 ("NW
'" ["\e$
(3"`%r\e(B"])
550 ; ("e" ?\e$(3"c\e(B) ; old style
557 ; ("ee" ?\e$(3"g\e(B) ; Alef-E is rare vs Aynu-I, so ee = Aynu-I
559 ("e
" ?\e$(3"h
\e(B) ; This is the premise to "new style" for vowels
579 ("kWee
" ?\e$(3"w
\e(B)
587 ("`kee
" ?\e$(3%=\e(B)
596 ("k2ee
" ?\e$(3%=\e(B)
605 ("kkee
" ?\e$(3%=\e(B)
623 ("KWee" ?
\e$
(3#)\e(B)
668 ; ("ee" ?\e$(3#5\e(B) ; old style
669 ("ae" ?
\e$
(3#5\e(B) ; new style
670 ("aaa" ?
\e$
(3#5\e(B) ; new style
678 ("ee" ?
\e$
(3#:\e(B) ; new style
692 ("zWe" ["\e$(3#B%n\e(B"])
693 ("zWu" ["\e$(3#B%r\e(B"])
694 ("zWi" ["\e$(3#B%o\e(B"])
695 ("zWE" ["\e$(3#B%q\e(B"])
696 ("zWee" ["\e$(3#B%q\e(B"])
697 ("zW'" ["\e$(3#B%r\e(B"])
709 ("ZWe" ["\e$(3#J%n\e(B"])
710 ("ZWu" ["\e$(3#J%r\e(B"])
711 ("ZWi" ["\e$(3#J%o\e(B"])
712 ("ZWE" ["\e$(3#J%q\e(B"])
713 ("ZWee" ["\e$(3#J%q\e(B"])
714 ("ZW'" ["\e$(3#J%r\e(B"])
726 ("yWe" ["\e$(3#R%n\e(B"])
727 ("yWu" ["\e$(3#R%r\e(B"])
728 ("yWi" ["\e$(3#R%o\e(B"])
729 ("yWE" ["\e$(3#R%q\e(B"])
730 ("yWee" ["\e$(3#R%q\e(B"])
731 ("yW'" ["\e$(3#R%r\e(B"])
743 ("YWe" ["\e$(3#R%n\e(B"])
744 ("YWu" ["\e$(3#R%r\e(B"])
745 ("YWi" ["\e$(3#R%o\e(B"])
746 ("YWE" ["\e$(3#R%q\e(B"])
747 ("YWee" ["\e$(3#R%q\e(B"])
748 ("YW'" ["\e$(3#R%r\e(B"])
760 ("dWe" ["\e$(3#Z%n\e(B"])
761 ("dWu" ["\e$(3#Z%r\e(B"])
762 ("dWi" ["\e$(3#Z%o\e(B"])
763 ("dWE" ["\e$(3#Z%q\e(B"])
764 ("dWee" ["\e$(3#Z%q\e(B"])
765 ("dW'" ["\e$(3#Z%r\e(B"])
777 ("DWe" ["\e$(3#b%n\e(B"])
778 ("DWu" ["\e$(3#b%r\e(B"])
779 ("DWi" ["\e$(3#b%o\e(B"])
780 ("DWE" ["\e$(3#b%q\e(B"])
781 ("DWee" ["\e$(3#b%q\e(B"])
782 ("DW'" ["\e$(3#b%r\e(B"])
794 ("jWe" ["\e$(3#j%n\e(B"])
795 ("jWu" ["\e$(3#j%r\e(B"])
796 ("jWi" ["\e$(3#j%o\e(B"])
797 ("jWE" ["\e$(3#j%q\e(B"])
798 ("jWee" ["\e$(3#j%q\e(B"])
799 ("jW'" ["\e$(3#j%r\e(B"])
811 ("JWe" ["\e$(3#j%n\e(B"])
812 ("JWu" ["\e$(3#j%r\e(B"])
813 ("JWi" ["\e$(3#j%o\e(B"])
814 ("JWE" ["\e$(3#j%q\e(B"])
815 ("JWee" ["\e$(3#j%q\e(B"])
816 ("JW'" ["\e$(3#j%r\e(B"])
832 ("gWee" ?
\e$
(3#y
\e(B)
840 ("`gee" ?
\e$
(3%
]\e(B)
849 ("g2ee" ?
\e$
(3%
]\e(B)
858 ("ggee" ?
\e$
(3%
]\e(B)
876 ("GWee
" ?\e$(3%S\e(B)
889 ("TWe
" ["\e$
(3$
,%n
\e(B"])
890 ("TWu
" ["\e$
(3$
,%r
\e(B"])
891 ("TWi
" ["\e$
(3$
,%o
\e(B"])
892 ("TWE
" ["\e$
(3$
,%q
\e(B"])
893 ("TWee
" ["\e$
(3$
,%q
\e(B"])
894 ("TW
'" ["\e$
(3$
,%r
\e(B"])
906 ("CWe
" ["\e$
(3$
4%n
\e(B"])
907 ("CWu
" ["\e$
(3$
4%r
\e(B"])
908 ("CWi
" ["\e$
(3$
4%o
\e(B"])
909 ("CWE
" ["\e$
(3$
4%q
\e(B"])
910 ("CWee
" ["\e$
(3$
4%q
\e(B"])
911 ("CW
'" ["\e$
(3$
4%r
\e(B"])
923 ("PWe
" ["\e$
(3$
<%n
\e(B"])
924 ("PWu
" ["\e$
(3$
<%r
\e(B"])
925 ("PWi
" ["\e$
(3$
<%o
\e(B"])
926 ("PWE
" ["\e$
(3$
<%q
\e(B"])
927 ("PWee
" ["\e$
(3$
<%q
\e(B"])
928 ("PW
'" ["\e$
(3$
<%r
\e(B"])
940 ("SWe
" ["\e$
(3$D%n
\e(B"])
941 ("SWu
" ["\e$
(3$D%r
\e(B"])
942 ("SWi
" ["\e$
(3$D%o
\e(B"])
943 ("SWE
" ["\e$
(3$D%q
\e(B"])
944 ("SWee
" ["\e$
(3$D%q
\e(B"])
945 ("SW
'" ["\e$
(3$D%r
\e(B"])
952 ("`See
" ?\e$(3$K\e(B)
956 ("`SWa
" ?\e$(3$F\e(B)
957 ("`SWe
" ["\e$
(3$L%n
\e(B"])
958 ("`SWu
" ["\e$
(3$L%r
\e(B"])
959 ("`SWi
" ["\e$
(3$L%o
\e(B"])
960 ("`SWE
" ["\e$
(3$L%q
\e(B"])
961 ("`SWee
" ["\e$
(3$L%q
\e(B"])
962 ("`SW
'" ["\e$
(3$L%r
\e(B"])
969 ("S2ee
" ?\e$(3$K\e(B)
973 ("S2Wa
" ?\e$(3$F\e(B)
974 ("S2We
" ["\e$
(3$L%n
\e(B"])
975 ("S2Wu
" ["\e$
(3$L%r
\e(B"])
976 ("S2Wi
" ["\e$
(3$L%o
\e(B"])
977 ("S2WE
" ["\e$
(3$L%q
\e(B"])
978 ("S2Wee
" ["\e$
(3$L%q
\e(B"])
979 ("S2W
'" ["\e$
(3$L%r
\e(B"])
986 ("SSee
" ?\e$(3$K\e(B)
990 ("SSWa
" ?\e$(3$F\e(B)
991 ("SSWe
" ["\e$
(3$L%n
\e(B"])
992 ("SSWu
" ["\e$
(3$L%r
\e(B"])
993 ("SSWi
" ["\e$
(3$L%o
\e(B"])
994 ("SSWE
" ["\e$
(3$L%q
\e(B"])
995 ("SSWee
" ["\e$
(3$L%q
\e(B"])
996 ("SW
'" ["\e$
(3$L%r
\e(B"])
1003 ("fee
" ?\e$(3$S\e(B)
1006 ("fWe
" ?\e$(3%4\e(B)
1007 ("fWu
" ?\e$(3%d\e(B)
1008 ("fWi
" ?\e$(3%D\e(B)
1010 ("fWa
" ?\e$(3$V\e(B)
1011 ("fWE
" ?\e$(3%T\e(B)
1012 ("fWee
" ?\e$(3%T\e(B)
1013 ("fW
'" ?\e$(3%d\e(B)
1015 ("fYa
" ?\e$(3$a\e(B)
1022 ("Fee
" ?\e$(3$S\e(B)
1025 ("FWe
" ?\e$(3%4\e(B)
1026 ("FWu
" ?\e$(3%d\e(B)
1027 ("FWi
" ?\e$(3%D\e(B)
1029 ("FWa
" ?\e$(3$V\e(B)
1030 ("FWE
" ?\e$(3%T\e(B)
1031 ("FWee
" ?\e$(3%T\e(B)
1032 ("FW
'" ?\e$(3%d\e(B)
1034 ("FYa
" ?\e$(3$a\e(B)
1041 ("pee
" ?\e$(3$[\e(B)
1044 ("pWe
" ?\e$(3%5\e(B)
1045 ("pWu
" ?\e$(3%e\e(B)
1046 ("pWi
" ?\e$(3%E\e(B)
1048 ("pWa
" ?\e$(3$^\e(B)
1049 ("pWE
" ?\e$(3%U\e(B)
1050 ("pWee
" ?\e$(3%U\e(B)
1051 ("pW
'" ?\e$(3%e\e(B)
1069 (":|:" ?
\e$
(3$o
\e(B)
1077 ("wWe" ?
\e$
(3%n
\e(B)
1078 ("wWu" ?
\e$
(3%r
\e(B)
1079 ("wWi" ?
\e$
(3%o
\e(B)
1081 ("wWa" ?
\e$
(3%p
\e(B)
1082 ("wWE" ?
\e$
(3%q
\e(B)
1083 ("wWee" ?
\e$
(3%q
\e(B)
1084 ("wW'" ?
\e$
(3%r
\e(B)
1091 ("Wee" ?
\e$
(3%q
\e(B)
1102 ("`10" ?
\e$
(3$y
\e(B)
1103 ("`20" ?
\e$
(3$z
\e(B)
1104 ("`30" ?
\e$
(3$
{\e(B)
1105 ("`40" ?
\e$
(3$|
\e(B)
1106 ("`50" ?
\e$
(3$
}\e(B)
1107 ("`60" ?
\e$
(3$~
\e(B)
1108 ("`70" ?
\e$
(3%
!\e(B)
1109 ("`80" ?
\e$
(3%
"\e(B)
1110 ("`90" ?\e$(3%#\e(B)
1111 ("`100" ?\e$(3%$\e(B)
1112 ("`1000" ["\e$
(3$y%$
\e(B"])
1113 ("`2000" ["\e$
(3$z%$
\e(B"])
1114 ("`3000" ["\e$
(3$
{%$
\e(B"])
1115 ("`4000" ["\e$
(3$|%$
\e(B"])
1116 ("`5000" ["\e$
(3$
}%$
\e(B"])
1117 ("`6000" ["\e$
(3$~%$
\e(B"])
1118 ("`7000" ["\e$
(3%
!%$
\e(B"])
1119 ("`8000" ["\e$
(3%
"%$\e(B"])
1120 ("`9000" ["\e$(3%#%$\e(B"])
1121 ("`10000" ?
\e$
(3%%
\e(B)
1122 ("`20000" ["\e$(3$q%%\e(B"])
1123 ("`30000" ["\e$(3$r%%\e(B"])
1124 ("`40000" ["\e$(3$s%%\e(B"])
1125 ("`50000" ["\e$(3$t%%\e(B"])
1126 ("`60000" ["\e$(3$u%%\e(B"])
1127 ("`70000" ["\e$(3$v%%\e(B"])
1128 ("`80000" ["\e$(3$w%%\e(B"])
1129 ("`90000" ["\e$(3$x%%\e(B"])
1130 ("`100000" ["\e$(3$y%%\e(B"])
1131 ("`200000" ["\e$(3$z%%\e(B"])
1132 ("`300000" ["\e$(3${%%\e(B"])
1133 ("`400000" ["\e$(3$|%%\e(B"])
1134 ("`500000" ["\e$(3$}%%\e(B"])
1135 ("`600000" ["\e$(3$~%%\e(B"])
1136 ("`700000" ["\e$(3%!%%\e(B"])
1137 ("`800000" ["\e$(3%"%%
\e(B"])
1138 ("`900000" ["\e$
(3%
#%%
\e(B"])
1139 ("`1000000" ["\e$
(3%$%%
\e(B"])
1142 (defun ethio-select-a-translation ()
1143 ;; The translation of `a' depends on the language
1144 ;; (either Tigrigna or Amharic).
1146 (if (ethio-prefer-amharic-p) ?\e$(3"c
\e(B ?
\e$
(3"f\e(B)
1149 ;;; ethiopic.el ends here