]> code.delx.au - gnu-emacs/blob - leim/quail/cyrillic.el
Reinstate some commented-out redundancies.
[gnu-emacs] / leim / quail / cyrillic.el
1 ;;; cyrillic.el --- Quail package for inputting Cyrillic characters
2
3 ;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
4 ;; Licensed to the Free Software Foundation.
5 ;; Copyright (C) 2001, 2002 Free Software Foundation, Inc.
6
7 ;; Author: TAKAHASHI Naoto <ntakahas@m17n.org>
8 ;; Keywords: multilingual, input method, Cyrillic, i18n
9
10 ;; This file is part of GNU Emacs.
11
12 ;; GNU Emacs is free software; you can redistribute it and/or modify
13 ;; it under the terms of the GNU General Public License as published by
14 ;; the Free Software Foundation; either version 2, or (at your option)
15 ;; any later version.
16
17 ;; GNU Emacs is distributed in the hope that it will be useful,
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 ;; GNU General Public License for more details.
21
22 ;; You should have received a copy of the GNU General Public License
23 ;; along with GNU Emacs; see the file COPYING. If not, write to the
24 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
25 ;; Boston, MA 02111-1307, USA.
26
27 ;;; Commentary:
28
29 ;;; Code:
30
31 (require 'quail)
32
33 ;; This was `cyrillic-jcuken'. Alexander Mikhailian
34 ;; <mikhailian@altern.org> says: "cyrillic-jcuken" is actually
35 ;; russian. It is ok but a bit outdated. This layout has been used
36 ;; in typewriters for ages but it has been superceeded on desktops by
37 ;; a variation of this layout, implemented in M$ Windows software.
38 ;; The Windows layout is greatly preferred because of the comma and
39 ;; period being placed more conviniently and, of course, because of
40 ;; the popularity of Windows software. This layout is a common option
41 ;; in X Windows and console layouts for GNU/Linux. [See
42 ;; `russian-computer' below.]
43 (quail-define-package
44 "russian-typewriter" "Russian" "\e,L69\e(B" nil
45 "\e,L9FC:5=\e(B Russian typewriter layout."
46 nil t t t t nil nil nil nil nil t)
47
48 ;; 1! 2" 3' 4* 5: 6, 7. 8; 9( 0) -_ =+ \e,L!\e(B
49 ;; \e,L9\e(B \e,LF\e(B \e,LC\e(B \e,L:\e(B \e,L5\e(B \e,L=\e(B \e,L3\e(B \e,LH\e(B \e,LI\e(B \e,L7\e(B \e,LE\e(B \e,Lj\e(B
50 ;; \e,LD\e(B \e,LK\e(B \e,L2\e(B \e,L0\e(B \e,L?\e(B \e,L@\e(B \e,L>\e(B \e,L;\e(B \e,L4\e(B \e,L6\e(B \e,LM\e(B
51 ;; \e,LO\e(B \e,LG\e(B \e,LA\e(B \e,L<\e(B \e,L8\e(B \e,LB\e(B \e,LL\e(B \e,L1\e(B \e,LN\e(B /?
52
53 (quail-define-rules
54 ("1" ?1)
55 ("2" ?2)
56 ("3" ?3)
57 ("4" ?4)
58 ("5" ?5)
59 ("6" ?6)
60 ("7" ?7)
61 ("8" ?8)
62 ("9" ?9)
63 ("0" ?0)
64 ("-" ?-)
65 ("=" ?=)
66 ("`" ?\e,Lq\e(B)
67 ("q" ?\e,LY\e(B)
68 ("w" ?\e,Lf\e(B)
69 ("e" ?\e,Lc\e(B)
70 ("r" ?\e,LZ\e(B)
71 ("t" ?\e,LU\e(B)
72 ("y" ?\e,L]\e(B)
73 ("u" ?\e,LS\e(B)
74 ("i" ?\e,Lh\e(B)
75 ("o" ?\e,Li\e(B)
76 ("p" ?\e,LW\e(B)
77 ("[" ?\e,Le\e(B)
78 ("]" ?\e,Lj\e(B)
79 ("a" ?\e,Ld\e(B)
80 ("s" ?\e,Lk\e(B)
81 ("d" ?\e,LR\e(B)
82 ("f" ?\e,LP\e(B)
83 ("g" ?\e,L_\e(B)
84 ("h" ?\e,L`\e(B)
85 ("j" ?\e,L^\e(B)
86 ("k" ?\e,L[\e(B)
87 ("l" ?\e,LT\e(B)
88 (";" ?\e,LV\e(B)
89 ("'" ?\e,Lm\e(B)
90 ("\\" ?\\)
91 ("z" ?\e,Lo\e(B)
92 ("x" ?\e,Lg\e(B)
93 ("c" ?\e,La\e(B)
94 ("v" ?\e,L\\e(B)
95 ("b" ?\e,LX\e(B)
96 ("n" ?\e,Lb\e(B)
97 ("m" ?\e,Ll\e(B)
98 ("," ?\e,LQ\e(B)
99 ("." ?\e,Ln\e(B)
100 ("/" ?/)
101
102 ("!" ?!)
103 ("@" ?\")
104 ("#" ?')
105 ("$" ?*)
106 ("%" ?:)
107 ("^" ?,)
108 ("&" ?.)
109 ("*" ?\;)
110 ("(" ?\()
111 (")" ?\))
112 ("_" ?_)
113 ("+" ?+)
114 ("~" ?\e,L!\e(B)
115 ("Q" ?\e,L9\e(B)
116 ("W" ?\e,LF\e(B)
117 ("E" ?\e,LC\e(B)
118 ("R" ?\e,L:\e(B)
119 ("T" ?\e,L5\e(B)
120 ("Y" ?\e,L=\e(B)
121 ("U" ?\e,L3\e(B)
122 ("I" ?\e,LH\e(B)
123 ("O" ?\e,LI\e(B)
124 ("P" ?\e,L7\e(B)
125 ("{" ?\e,LE\e(B)
126 ("}" ?\e,LJ\e(B)
127 ("A" ?\e,LD\e(B)
128 ("S" ?\e,LK\e(B)
129 ("D" ?\e,L2\e(B)
130 ("F" ?\e,L0\e(B)
131 ("G" ?\e,L?\e(B)
132 ("H" ?\e,L@\e(B)
133 ("J" ?\e,L>\e(B)
134 ("K" ?\e,L;\e(B)
135 ("L" ?\e,L4\e(B)
136 (":" ?\e,L6\e(B)
137 ("\"" ?\e,LM\e(B)
138 ("|" ?|)
139 ("Z" ?\e,LO\e(B)
140 ("X" ?\e,LG\e(B)
141 ("C" ?\e,LA\e(B)
142 ("V" ?\e,L<\e(B)
143 ("B" ?\e,L8\e(B)
144 ("N" ?\e,LB\e(B)
145 ("M" ?\e,LL\e(B)
146 ("<" ?\e,L1\e(B)
147 (">" ?\e,LN\e(B)
148 ("?" ??)
149 )
150
151 ;; Maintain the obsolete name for now.
152 (push (cons "cyrillic-jcuken"
153 (cdr (assoc "russian-typewriter" input-method-alist)))
154 input-method-alist)
155
156 ;; See comment above. This is the variant `winkeys' from `ru' in XKB.
157 (quail-define-package
158 "russian-computer" "Russian" "RU" nil
159 "\e,L9FC:5=\e(B Russian computer layout"
160 nil t t t t nil nil nil nil nil t)
161
162 ;; 1! 2" 3\e,Lp\e(B 4; 5% 6: 7? 8* 9( 0) -_ =+ \e,Lq!\e(B
163 ;; \e,L9\e(B \e,LF\e(B \e,LC\e(B \e,L:\e(B \e,L5\e(B \e,L=\e(B \e,L3\e(B \e,LH\e(B \e,LI\e(B \e,L7\e(B \e,LE\e(B \e,Lj\e(B
164 ;; \e,LD\e(B \e,LK\e(B \e,L2\e(B \e,L0\e(B \e,L?\e(B \e,L@\e(B \e,L>\e(B \e,L;\e(B \e,L4\e(B \e,L6\e(B \e,LM\e(B
165 ;; \e,LO\e(B \e,LG\e(B \e,LA\e(B \e,L<\e(B \e,L8\e(B \e,LB\e(B \e,LL\e(B \e,L1\e(B \e,LN\e(B .,
166
167 (quail-define-rules
168 ("1" ?1)
169 ("2" ?2)
170 ("3" ?3)
171 ("4" ?4)
172 ("5" ?5)
173 ("6" ?6)
174 ("7" ?7)
175 ("8" ?8)
176 ("9" ?9)
177 ("0" ?0)
178 ("-" ?-)
179 ("=" ?=)
180 ("`" ?\e,Lq\e(B)
181 ("q" ?\e,LY\e(B)
182 ("w" ?\e,Lf\e(B)
183 ("e" ?\e,Lc\e(B)
184 ("r" ?\e,LZ\e(B)
185 ("t" ?\e,LU\e(B)
186 ("y" ?\e,L]\e(B)
187 ("u" ?\e,LS\e(B)
188 ("i" ?\e,Lh\e(B)
189 ("o" ?\e,Li\e(B)
190 ("p" ?\e,LW\e(B)
191 ("[" ?\e,Le\e(B)
192 ("]" ?\e,Lj\e(B)
193 ("a" ?\e,Ld\e(B)
194 ("s" ?\e,Lk\e(B)
195 ("d" ?\e,LR\e(B)
196 ("f" ?\e,LP\e(B)
197 ("g" ?\e,L_\e(B)
198 ("h" ?\e,L`\e(B)
199 ("j" ?\e,L^\e(B)
200 ("k" ?\e,L[\e(B)
201 ("l" ?\e,LT\e(B)
202 (";" ?\e,LV\e(B)
203 ("'" ?\e,Lm\e(B)
204 ("\\" ?\\)
205 ("z" ?\e,Lo\e(B)
206 ("x" ?\e,Lg\e(B)
207 ("c" ?\e,La\e(B)
208 ("v" ?\e,L\\e(B)
209 ("b" ?\e,LX\e(B)
210 ("n" ?\e,Lb\e(B)
211 ("m" ?\e,Ll\e(B)
212 ("," ?\e,LQ\e(B)
213 ("." ?\e,Ln\e(B)
214 ("/" ?.)
215 ("!" ?!)
216 ("@" ?\")
217 ("#" ?\e,Lp\e(B)
218 ("$" ?\;)
219 ("%" ?%)
220 ("^" ?:)
221 ("&" ??)
222 ("*" ?*)
223 ("(" ?()
224 (")" ?))
225 ("_" ?_)
226 ("+" ?+)
227 ("~" ?\e,L!\e(B)
228 ("Q" ?\e,L9\e(B)
229 ("W" ?\e,LF\e(B)
230 ("E" ?\e,LC\e(B)
231 ("R" ?\e,L:\e(B)
232 ("T" ?\e,L5\e(B)
233 ("Y" ?\e,L=\e(B)
234 ("U" ?\e,L3\e(B)
235 ("I" ?\e,LH\e(B)
236 ("O" ?\e,LI\e(B)
237 ("P" ?\e,L7\e(B)
238 ("{" ?\e,LE\e(B)
239 ("}" ?\e,LJ\e(B)
240 ("A" ?\e,LD\e(B)
241 ("S" ?\e,LK\e(B)
242 ("D" ?\e,L2\e(B)
243 ("F" ?\e,L0\e(B)
244 ("G" ?\e,L?\e(B)
245 ("H" ?\e,L@\e(B)
246 ("J" ?\e,L>\e(B)
247 ("K" ?\e,L;\e(B)
248 ("L" ?\e,L4\e(B)
249 (":" ?\e,L6\e(B)
250 ("\"" ?\e,LM\e(B)
251 ("|" ?|)
252 ("Z" ?\e,LO\e(B)
253 ("X" ?\e,LG\e(B)
254 ("C" ?\e,LA\e(B)
255 ("V" ?\e,L<\e(B)
256 ("B" ?\e,L8\e(B)
257 ("N" ?\e,LB\e(B)
258 ("M" ?\e,LL\e(B)
259 ("<" ?\e,L1\e(B)
260 (">" ?\e,LN\e(B)
261 ("?" ?,))
262
263 ;; Mikhailian couldn't check the next two.
264
265 ;; This seems to have the same layout for letters as mk in XKB, but at
266 ;; least the top row is different.
267 (quail-define-package
268 "cyrillic-macedonian" "Cyrillic" "\e,L6\e(BM" nil
269 "\e,L)*5@B7\e(B-\e,L#,\e(B keyboard layout based on JUS.I.K1.004"
270 nil t t t t nil nil nil nil nil t)
271
272 ;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <>
273 ;; \e,L)\e(B \e,L*\e(B \e,L5\e(B \e,L@\e(B \e,LB\e(B \e,L7\e(B \e,LC\e(B \e,L8\e(B \e,L>\e(B \e,L?\e(B \e,LH\e(B \e,L#\e(B
274 ;; \e,L0\e(B \e,LA\e(B \e,L4\e(B \e,LD\e(B \e,L3\e(B \e,LE\e(B \e,L(\e(B \e,L:\e(B \e,L;\e(B \e,LG\e(B \e,L,\e(B \e,L6\e(B
275 ;; \e,L%\e(B \e,L/\e(B \e,LF\e(B \e,L2\e(B \e,L1\e(B \e,L=\e(B \e,L<\e(B ,; .: -_
276
277 (quail-define-rules
278 ("1" ?1)
279 ("2" ?2)
280 ("3" ?3)
281 ("4" ?4)
282 ("5" ?5)
283 ("6" ?6)
284 ("7" ?7)
285 ("8" ?8)
286 ("9" ?9)
287 ("0" ?0)
288 ("-" ?/)
289 ("=" ?+)
290 ("`" ?<)
291 ("q" ?\e,Ly\e(B)
292 ("w" ?\e,Lz\e(B)
293 ("e" ?\e,LU\e(B)
294 ("r" ?\e,L`\e(B)
295 ("t" ?\e,Lb\e(B)
296 ("y" ?\e,LW\e(B)
297 ("u" ?\e,Lc\e(B)
298 ("i" ?\e,LX\e(B)
299 ("o" ?\e,L^\e(B)
300 ("p" ?\e,L_\e(B)
301 ("[" ?\e,Lh\e(B)
302 ("]" ?\e,Ls\e(B)
303 ("a" ?\e,LP\e(B)
304 ("s" ?\e,La\e(B)
305 ("d" ?\e,LT\e(B)
306 ("f" ?\e,Ld\e(B)
307 ("g" ?\e,LS\e(B)
308 ("h" ?\e,Le\e(B)
309 ("j" ?\e,Lx\e(B)
310 ("k" ?\e,LZ\e(B)
311 ("l" ?\e,L[\e(B)
312 (";" ?\e,Lg\e(B)
313 ("'" ?\e,L|\e(B)
314 ("\\" ?\e,LV\e(B)
315 ("z" ?\e,Lu\e(B)
316 ("x" ?\e,L\7f\e(B)
317 ("c" ?\e,Lf\e(B)
318 ("v" ?\e,LR\e(B)
319 ("b" ?\e,LQ\e(B)
320 ("n" ?\e,L]\e(B)
321 ("m" ?\e,L\\e(B)
322 ("," ?,)
323 ("." ?.)
324 ("/" ?-)
325
326 ("!" ?!)
327 ("@" ?\")
328 ("#" ?#)
329 ("$" ?$)
330 ("%" ?%)
331 ("^" ?&)
332 ("&" ?')
333 ("*" ?\()
334 ("(" ?\))
335 (")" ?=)
336 ("_" ??)
337 ("+" ?*)
338 ("~" ?>)
339 ("Q" ?\e,L)\e(B)
340 ("W" ?\e,L*\e(B)
341 ("E" ?\e,L5\e(B)
342 ("R" ?\e,L@\e(B)
343 ("T" ?\e,LB\e(B)
344 ("Y" ?\e,L7\e(B)
345 ("U" ?\e,LC\e(B)
346 ("I" ?\e,L8\e(B)
347 ("O" ?\e,L>\e(B)
348 ("P" ?\e,L?\e(B)
349 ("{" ?\e,LH\e(B)
350 ("}" ?\e,L#\e(B)
351 ("A" ?\e,L0\e(B)
352 ("S" ?\e,LA\e(B)
353 ("D" ?\e,L4\e(B)
354 ("F" ?\e,LD\e(B)
355 ("G" ?\e,L3\e(B)
356 ("H" ?\e,LE\e(B)
357 ("J" ?\e,L(\e(B)
358 ("K" ?\e,L:\e(B)
359 ("L" ?\e,L;\e(B)
360 (":" ?\e,LG\e(B)
361 ("\"" ?\e,L,\e(B)
362 ("|" ?\e,L6\e(B)
363 ("Z" ?\e,L%\e(B)
364 ("X" ?\e,L/\e(B)
365 ("C" ?\e,LF\e(B)
366 ("V" ?\e,L2\e(B)
367 ("B" ?\e,L1\e(B)
368 ("N" ?\e,L=\e(B)
369 ("M" ?\e,L<\e(B)
370 ("<" ?\;)
371 (">" ?:)
372 ("?" ?_))
373
374 ;;
375
376 (quail-define-package
377 "cyrillic-serbian" "Cyrillic" "\e,L6\e(BS" nil
378 "\e,L)*5@B7\e(B-\e,L"+\e(B keyboard layout based on JUS.I.K1.005"
379 nil t t t t nil nil nil nil nil t)
380
381 ;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <>
382 ;; \e,L)\e(B \e,L*\e(B \e,L5\e(B \e,L@\e(B \e,LB\e(B \e,L7\e(B \e,LC\e(B \e,L8\e(B \e,L>\e(B \e,L?\e(B \e,LH\e(B \e,L"\e(B
383 ;; \e,L0\e(B \e,LA\e(B \e,L4\e(B \e,LD\e(B \e,L3\e(B \e,LE\e(B \e,L(\e(B \e,L:\e(B \e,L;\e(B \e,LG\e(B \e,L+\e(B \e,L6\e(B
384 ;; \e,L%\e(B \e,L/\e(B \e,LF\e(B \e,L2\e(B \e,L1\e(B \e,L=\e(B \e,L<\e(B ,; .: -_
385
386 (quail-define-rules
387 ("1" ?1)
388 ("2" ?2)
389 ("3" ?3)
390 ("4" ?4)
391 ("5" ?5)
392 ("6" ?6)
393 ("7" ?7)
394 ("8" ?8)
395 ("9" ?9)
396 ("0" ?0)
397 ("-" ?/)
398 ("=" ?+)
399 ("`" ?<)
400 ("q" ?\e,Ly\e(B)
401 ("w" ?\e,Lz\e(B)
402 ("e" ?\e,LU\e(B)
403 ("r" ?\e,L`\e(B)
404 ("t" ?\e,Lb\e(B)
405 ("y" ?\e,LW\e(B)
406 ("u" ?\e,Lc\e(B)
407 ("i" ?\e,LX\e(B)
408 ("o" ?\e,L^\e(B)
409 ("p" ?\e,L_\e(B)
410 ("[" ?\e,Lh\e(B)
411 ("]" ?\e,Lr\e(B)
412 ("a" ?\e,LP\e(B)
413 ("s" ?\e,La\e(B)
414 ("d" ?\e,LT\e(B)
415 ("f" ?\e,Ld\e(B)
416 ("g" ?\e,LS\e(B)
417 ("h" ?\e,Le\e(B)
418 ("j" ?\e,Lx\e(B)
419 ("k" ?\e,LZ\e(B)
420 ("l" ?\e,L[\e(B)
421 (";" ?\e,Lg\e(B)
422 ("'" ?\e,L{\e(B)
423 ("\\" ?\e,LV\e(B)
424 ("z" ?\e,Lu\e(B)
425 ("x" ?\e,L\7f\e(B)
426 ("c" ?\e,Lf\e(B)
427 ("v" ?\e,LR\e(B)
428 ("b" ?\e,LQ\e(B)
429 ("n" ?\e,L]\e(B)
430 ("m" ?\e,L\\e(B)
431 ("," ?,)
432 ("." ?.)
433 ("/" ?-)
434
435 ("!" ?!)
436 ("@" ?\")
437 ("#" ?#)
438 ("$" ?$)
439 ("%" ?%)
440 ("^" ?&)
441 ("&" ?')
442 ("*" ?\()
443 ("(" ?\))
444 (")" ?=)
445 ("_" ??)
446 ("+" ?*)
447 ("~" ?>)
448 ("Q" ?\e,L)\e(B)
449 ("W" ?\e,L*\e(B)
450 ("E" ?\e,L5\e(B)
451 ("R" ?\e,L@\e(B)
452 ("T" ?\e,LB\e(B)
453 ("Y" ?\e,L7\e(B)
454 ("U" ?\e,LC\e(B)
455 ("I" ?\e,L8\e(B)
456 ("O" ?\e,L>\e(B)
457 ("P" ?\e,L?\e(B)
458 ("{" ?\e,LH\e(B)
459 ("}" ?\e,L"\e(B)
460 ("A" ?\e,L0\e(B)
461 ("S" ?\e,LA\e(B)
462 ("D" ?\e,L4\e(B)
463 ("F" ?\e,LD\e(B)
464 ("G" ?\e,L3\e(B)
465 ("H" ?\e,LE\e(B)
466 ("J" ?\e,L(\e(B)
467 ("K" ?\e,L:\e(B)
468 ("L" ?\e,L;\e(B)
469 (":" ?\e,LG\e(B)
470 ("\"" ?\e,L+\e(B)
471 ("|" ?\e,L6\e(B)
472 ("Z" ?\e,L%\e(B)
473 ("X" ?\e,L/\e(B)
474 ("C" ?\e,LF\e(B)
475 ("V" ?\e,L2\e(B)
476 ("B" ?\e,L1\e(B)
477 ("N" ?\e,L=\e(B)
478 ("M" ?\e,L<\e(B)
479 ("<" ?\;)
480 (">" ?:)
481 ("?" ?_))
482
483 ;;
484
485 ;; Alexander Mikhailian comments:
486 ;; Having worked for several years as a Belarusian linguist, I still
487 ;; can not find the origin of this layout which BTW does include
488 ;; several characters that are not present in Belarusian and does not
489 ;; include a few ones that do exist in Belarusian. Besides, the typo
490 ;; in the name of this layout speaks for itself since Belarusian has
491 ;; an outdated version of spelling which is "Byelorussian" and not
492 ;; "beylorussian". I suggest that you just remove this layout.
493
494 ;; [`derived from JUS.I.K1' according to an old Mule note -- fx]
495
496 ;; (quail-define-package
497 ;; "cyrillic-beylorussian" "Belarussian" "\e,L6\e(BB" nil
498 ;; "\e,L)*5@B7\e(B-\e,L&.\e(B BEYLORUSSIAN (ISO 8859-5 encoding)"
499 ;; nil t t t t nil nil nil nil nil t)
500
501 ;; ;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <>
502 ;; ;; \e,L)\e(B \e,L*\e(B \e,L5\e(B \e,L@\e(B \e,LB\e(B \e,L7\e(B \e,LC\e(B \e,L8\e(B \e,L>\e(B \e,L?\e(B \e,LH\e(B \e,L&\e(B
503 ;; ;; \e,L0\e(B \e,LA\e(B \e,L4\e(B \e,LD\e(B \e,L3\e(B \e,LE\e(B \e,L(\e(B \e,L:\e(B \e,L;\e(B \e,LG\e(B \e,L.\e(B \e,L6\e(B
504 ;; ;; \e,L%\e(B \e,L/\e(B \e,LF\e(B \e,L2\e(B \e,L1\e(B \e,L=\e(B \e,L<\e(B ,; .: -_
505
506 ;; (quail-define-rules
507 ;; ("-" ?/)
508 ;; ("=" ?+)
509 ;; ("`" ?<)
510 ;; ("q" ?\e,Ly\e(B)
511 ;; ("w" ?\e,Lz\e(B)
512 ;; ("e" ?\e,LU\e(B)
513 ;; ("r" ?\e,L`\e(B)
514 ;; ("t" ?\e,Lb\e(B)
515 ;; ("y" ?\e,LW\e(B)
516 ;; ("u" ?\e,Lc\e(B)
517 ;; ("i" ?\e,LX\e(B)
518 ;; ("o" ?\e,L^\e(B)
519 ;; ("p" ?\e,L_\e(B)
520 ;; ("[" ?\e,Lh\e(B)
521 ;; ("]" ?\e,Lv\e(B)
522 ;; ("a" ?\e,LP\e(B)
523 ;; ("s" ?\e,La\e(B)
524 ;; ("d" ?\e,LT\e(B)
525 ;; ("f" ?\e,Ld\e(B)
526 ;; ("g" ?\e,LS\e(B)
527 ;; ("h" ?\e,Le\e(B)
528 ;; ("j" ?\e,Lx\e(B)
529 ;; ("k" ?\e,LZ\e(B)
530 ;; ("l" ?\e,L[\e(B)
531 ;; (";" ?\e,Lg\e(B)
532 ;; ("'" ?\e,L~\e(B)
533 ;; ("\\" ?\e,LV\e(B)
534 ;; ("z" ?\e,Lu\e(B)
535 ;; ("x" ?\e,L\7f\e(B)
536 ;; ("c" ?\e,Lf\e(B)
537 ;; ("v" ?\e,LR\e(B)
538 ;; ("b" ?\e,LQ\e(B)
539 ;; ("n" ?\e,L]\e(B)
540 ;; ("m" ?\e,L\\e(B)
541 ;; ("/" ?-)
542
543 ;; ("@" ?\")
544 ;; ("^" ?&)
545 ;; ("&" ?')
546 ;; ("*" ?\()
547 ;; ("(" ?\))
548 ;; (")" ?=)
549 ;; ("_" ??)
550 ;; ("+" ?*)
551 ;; ("~" ?>)
552 ;; ("Q" ?\e,L)\e(B)
553 ;; ("W" ?\e,L*\e(B)
554 ;; ("E" ?\e,L5\e(B)
555 ;; ("R" ?\e,L@\e(B)
556 ;; ("T" ?\e,LB\e(B)
557 ;; ("Y" ?\e,L7\e(B)
558 ;; ("U" ?\e,LC\e(B)
559 ;; ("I" ?\e,L8\e(B)
560 ;; ("O" ?\e,L>\e(B)
561 ;; ("P" ?\e,L?\e(B)
562 ;; ("{" ?\e,LH\e(B)
563 ;; ("}" ?\e,L&\e(B)
564 ;; ("A" ?\e,L0\e(B)
565 ;; ("S" ?\e,LA\e(B)
566 ;; ("D" ?\e,L4\e(B)
567 ;; ("F" ?\e,LD\e(B)
568 ;; ("G" ?\e,L3\e(B)
569 ;; ("H" ?\e,LE\e(B)
570 ;; ("J" ?\e,L(\e(B)
571 ;; ("K" ?\e,L:\e(B)
572 ;; ("L" ?\e,L;\e(B)
573 ;; (":" ?\e,LG\e(B)
574 ;; ("\"" ?\e,L.\e(B)
575 ;; ("|" ?\e,L6\e(B)
576 ;; ("Z" ?\e,L%\e(B)
577 ;; ("X" ?\e,L/\e(B)
578 ;; ("C" ?\e,LF\e(B)
579 ;; ("V" ?\e,L2\e(B)
580 ;; ("B" ?\e,L1\e(B)
581 ;; ("N" ?\e,L=\e(B)
582 ;; ("M" ?\e,L<\e(B)
583 ;; ("<" ?\;)
584 ;; (">" ?:)
585 ;; ("?" ?_))
586
587 ;;
588
589 ;; Alexander Mikhailian reports the opinion of fellow Ukrainian
590 ;; linguist Bogdan Babych <babych@altern.org>:
591 ;; He had seen this layout on some oldish systems but that the vast
592 ;; majority of the population uses a modified version of the M$ Windows
593 ;; layout. In fact, Microsoft shipped for a while a layout that was lacking
594 ;; two characters, precisely the "GHE_WITH_UPTURN" and the apostrophe. The
595 ;; latest versions of Windows software do have the "GHE_WITH_UPTURN" in the
596 ;; ukrainian keyborad layout but the apostrophe is still not there, whereas
597 ;; there is one letter, "Cyrillic_YO", not used in ukrainian. Ukrainians
598 ;; normally replace the "Cyrillic_YO" by the apostrophe sign and live
599 ;; happily with this little change. [See "ukrainian-computer" below.]
600
601 ;; Fixme: add GHE_WITH_UPTURN.
602 (quail-define-package
603 "cyrillic-ukrainian" "Ukrainian" "\e,L6\e(BU" nil
604 "\e,L$'5@B7\e(B-\e,L&.\e(B UKRAINIAN"
605 nil t t t t nil nil nil nil nil t)
606
607 ;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <>
608 ;; \e,L$\e(B \e,L'\e(B \e,L5\e(B \e,L@\e(B \e,LB\e(B \e,L7\e(B \e,LC\e(B \e,L8\e(B \e,L>\e(B \e,L?\e(B \e,LH\e(B \e,L&\e(B
609 ;; \e,L0\e(B \e,LA\e(B \e,L4\e(B \e,LD\e(B \e,L3\e(B \e,LE\e(B \e,L(\e(B \e,L:\e(B \e,L;\e(B \e,LG\e(B \e,L.\e(B \e,L6\e(B
610 ;; \e,L%\e(B \e,L/\e(B \e,LF\e(B \e,L2\e(B \e,L1\e(B \e,L=\e(B \e,L<\e(B ,; .: -_
611
612 (quail-define-rules
613 ("1" ?1)
614 ("2" ?2)
615 ("3" ?3)
616 ("4" ?4)
617 ("5" ?5)
618 ("6" ?6)
619 ("7" ?7)
620 ("8" ?8)
621 ("9" ?9)
622 ("0" ?0)
623 ("-" ?/)
624 ("=" ?+)
625 ("`" ?<)
626 ("q" ?\e,Lt\e(B)
627 ("w" ?\e,Lw\e(B)
628 ("e" ?\e,LU\e(B)
629 ("r" ?\e,L`\e(B)
630 ("t" ?\e,Lb\e(B)
631 ("y" ?\e,LW\e(B)
632 ("u" ?\e,Lc\e(B)
633 ("i" ?\e,LX\e(B)
634 ("o" ?\e,L^\e(B)
635 ("p" ?\e,L_\e(B)
636 ("[" ?\e,Lh\e(B)
637 ("]" ?\e,Lv\e(B)
638 ("a" ?\e,LP\e(B)
639 ("s" ?\e,La\e(B)
640 ("d" ?\e,LT\e(B)
641 ("f" ?\e,Ld\e(B)
642 ("g" ?\e,LS\e(B)
643 ("h" ?\e,Le\e(B)
644 ("j" ?\e,Lx\e(B)
645 ("k" ?\e,LZ\e(B)
646 ("l" ?\e,L[\e(B)
647 (";" ?\e,Lg\e(B)
648 ("'" ?\e,L~\e(B)
649 ("\\" ?\e,LV\e(B)
650 ("z" ?\e,Lu\e(B)
651 ("x" ?\e,L\7f\e(B)
652 ("c" ?\e,Lf\e(B)
653 ("v" ?\e,LR\e(B)
654 ("b" ?\e,LQ\e(B)
655 ("n" ?\e,L]\e(B)
656 ("m" ?\e,L\\e(B)
657 ("," ?,)
658 ("." ?.)
659 ("/" ?-)
660
661 ("!" ?!)
662 ("@" ?\")
663 ("#" ?#)
664 ("$" ?$)
665 ("%" ?%)
666 ("^" ?&)
667 ("&" ?')
668 ("*" ?\()
669 ("(" ?\))
670 (")" ?=)
671 ("_" ??)
672 ("+" ?*)
673 ("~" ?>)
674 ("Q" ?\e,L$\e(B)
675 ("W" ?\e,L'\e(B)
676 ("E" ?\e,L5\e(B)
677 ("R" ?\e,L@\e(B)
678 ("T" ?\e,LB\e(B)
679 ("Y" ?\e,L7\e(B)
680 ("U" ?\e,LC\e(B)
681 ("I" ?\e,L8\e(B)
682 ("O" ?\e,L>\e(B)
683 ("P" ?\e,L?\e(B)
684 ("{" ?\e,LH\e(B)
685 ("}" ?\e,L&\e(B)
686 ("A" ?\e,L0\e(B)
687 ("S" ?\e,LA\e(B)
688 ("D" ?\e,L4\e(B)
689 ("F" ?\e,LD\e(B)
690 ("G" ?\e,L3\e(B)
691 ("H" ?\e,LE\e(B)
692 ("J" ?\e,L(\e(B)
693 ("K" ?\e,L:\e(B)
694 ("L" ?\e,L;\e(B)
695 (":" ?\e,LG\e(B)
696 ("\"" ?\e,L.\e(B)
697 ("|" ?\e,L6\e(B)
698 ("Z" ?\e,L%\e(B)
699 ("X" ?\e,L/\e(B)
700 ("C" ?\e,LF\e(B)
701 ("V" ?\e,L2\e(B)
702 ("B" ?\e,L1\e(B)
703 ("N" ?\e,L=\e(B)
704 ("M" ?\e,L<\e(B)
705 ("<" ?\;)
706 (">" ?:)
707 ("?" ?_))
708
709
710 (quail-define-package
711 "ukrainian-computer" "Ukrainian" "UK" nil
712 "\e,L9FC:5=\e(B Ukrainian."
713 nil t t t t nil nil nil nil nil t)
714
715 ;; ' 1! 2" 3\e,Lp\e(B 4; 5% 6: 7? 8* 9( 0) -_ =+
716 ;; \e,L9\e(B \e,LF\e(B \e,LC\e(B \e,L:\e(B \e,L5\e(B \e,L=\e(B \e,L3\e(B \e,LH\e(B \e,LI\e(B \e,L7\e(B \e,LE\e(B \e,L'\e(B
717 ;; \e,LD\e(B \e,L&\e(B \e,L2\e(B \e,L0\e(B \e,L?\e(B \e,L@\e(B \e,L>\e(B \e,L;\e(B \e,L4\e(B \e,L6\e(B \e,L$\e(B \e$,1)P\e(B
718 ;; \e,LO\e(B \e,LG\e(B \e,LA\e(B \e,L<\e(B \e,L8\e(B \e,LB\e(B \e,LL\e(B \e,L1\e(B \e,LN\e(B .,
719
720 (quail-define-rules
721 ("1" ?1)
722 ("2" ?2)
723 ("3" ?3)
724 ("4" ?4)
725 ("5" ?5)
726 ("6" ?6)
727 ("7" ?7)
728 ("8" ?8)
729 ("9" ?9)
730 ("0" ?0)
731 ("-" ?-)
732 ("=" ?=)
733 ("`" ?')
734 ("q" ?\e,LY\e(B)
735 ("w" ?\e,Lf\e(B)
736 ("e" ?\e,Lc\e(B)
737 ("r" ?\e,LZ\e(B)
738 ("t" ?\e,LU\e(B)
739 ("y" ?\e,L]\e(B)
740 ("u" ?\e,LS\e(B)
741 ("i" ?\e,Lh\e(B)
742 ("o" ?\e,Li\e(B)
743 ("p" ?\e,LW\e(B)
744 ("[" ?\e,Le\e(B)
745 ("]" ?\e,Lw\e(B)
746 ("a" ?\e,Ld\e(B)
747 ("s" ?\e,Lv\e(B)
748 ("d" ?\e,LR\e(B)
749 ("f" ?\e,LP\e(B)
750 ("g" ?\e,L_\e(B)
751 ("h" ?\e,L`\e(B)
752 ("j" ?\e,L^\e(B)
753 ("k" ?\e,L[\e(B)
754 ("l" ?\e,LT\e(B)
755 (";" ?\e,LV\e(B)
756 ("'" ?\e,Lt\e(B)
757 ("\\" ?\\)
758 ("z" ?\e,Lo\e(B)
759 ("x" ?\e,Lg\e(B)
760 ("c" ?\e,La\e(B)
761 ("v" ?\e,L\\e(B)
762 ("b" ?\e,LX\e(B)
763 ("n" ?\e,Lb\e(B)
764 ("m" ?\e,Ll\e(B)
765 ("," ?\e,LQ\e(B)
766 ("." ?\e,Ln\e(B)
767 ("/" ?.)
768 ("!" ?!)
769 ("@" ?\")
770 ("#" ?\e,Lp\e(B)
771 ("$" ?\;)
772 ("%" ?%)
773 ("^" ?:)
774 ("&" ??)
775 ("*" ?*)
776 ("(" ?()
777 (")" ?))
778 ("_" ?_)
779 ("+" ?+)
780 ("~" ?')
781 ("Q" ?\e,L9\e(B)
782 ("W" ?\e,LF\e(B)
783 ("E" ?\e,LC\e(B)
784 ("R" ?\e,L:\e(B)
785 ("T" ?\e,L5\e(B)
786 ("Y" ?\e,L=\e(B)
787 ("U" ?\e,L3\e(B)
788 ("I" ?\e,LH\e(B)
789 ("O" ?\e,LI\e(B)
790 ("P" ?\e,L7\e(B)
791 ("{" ?\e,LE\e(B)
792 ("}" ?\e,L'\e(B)
793 ("A" ?\e,LD\e(B)
794 ("S" ?\e,L&\e(B)
795 ("D" ?\e,L2\e(B)
796 ("F" ?\e,L0\e(B)
797 ("G" ?\e,L?\e(B)
798 ("H" ?\e,L@\e(B)
799 ("J" ?\e,L>\e(B)
800 ("K" ?\e,L;\e(B)
801 ("L" ?\e,L4\e(B)
802 (":" ?\e,L6\e(B)
803 ("\"" ?\e,L$\e(B)
804 ("Z" ?\e,LO\e(B)
805 ("X" ?\e,LG\e(B)
806 ("C" ?\e,LA\e(B)
807 ("V" ?\e,L<\e(B)
808 ("B" ?\e,L8\e(B)
809 ("N" ?\e,LB\e(B)
810 ("M" ?\e,LL\e(B)
811 ("<" ?\e,L1\e(B)
812 (">" ?\e,LN\e(B)
813 ("?" ?,)
814 ("\\" ?\e$,1)Q\e(B)
815 ("|" ?\e$,1)P\e(B))
816 ;;
817
818 ;; Alexander Mikhailian says this is of limited use. It has been
819 ;; popular among emigrants or foreigners who have to type in Cyrillic
820 ;; (mostly Russian) from time to time.
821 (quail-define-package
822 "cyrillic-yawerty" "Cyrillic" "\e,L6O\e(B" nil
823 "\e,LO25@BK\e(B Roman transcription.
824
825 This layout is based on Roman transcription by phonemic resemblance.
826 When preceded by a '/', the second and the third rows (number key row) change
827 as follows.
828
829 keytop | Q W E R T Y U I O P A S D
830 --------+---------------------------------------
831 input | \e,L"\e(B \e,L#\e(B \e,L$\e(B \e,L%\e(B \e,L&\e(B \e,L'\e(B \e,L(\e(B \e,L)\e(B \e,L*\e(B \e,L+\e(B \e,L,\e(B \e,L.\e(B \e,L/\e(B"
832 nil t t t t nil nil nil nil nil t)
833
834 ;; 1! 2\e,Lq\e(B 3\e,Lj\e(B 4\e,L!\e(B 5% 6^ 7& 8* 9( 0) -_ \e,LG\e(B \e,LN\e(B
835 ;; \e,LO\e(B \e,L2\e(B \e,L5\e(B \e,L@\e(B \e,LB\e(B \e,LK\e(B \e,LC\e(B \e,L8\e(B \e,L>\e(B \e,L?\e(B \e,LH\e(B \e,LI\e(B
836 ;; \e,L0\e(B \e,LA\e(B \e,L4\e(B \e,LD\e(B \e,L3\e(B \e,LE\e(B \e,L9\e(B \e,L:\e(B \e,L;\e(B ;: '" \e,LM\e(B
837 ;; \e,L7\e(B \e,LL\e(B \e,LF\e(B \e,L6\e(B \e,L1\e(B \e,L=\e(B \e,L<\e(B ,< .> /?
838
839 ;; 1! 2\e,Lq\e(B 3\e,Lj\e(B 4\e,L!\e(B 5% 6^ 7& 8* 9( 0) -_ \e,LG\e(B \e,LN\e(B
840 ;; \e,L"\e(B \e,L#\e(B \e,L$\e(B \e,L%\e(B \e,L&\e(B \e,L'\e(B \e,L(\e(B \e,L)\e(B \e,L*\e(B \e,L+\e(B \e,LH\e(B \e,LI\e(B
841 ;; \e,L,\e(B \e,L.\e(B \e,L/\e(B \e,LD\e(B \e,L3\e(B \e,LE\e(B \e,L9\e(B \e,L:\e(B \e,L;\e(B ;: '" \e,LM\e(B
842 ;; \e,L7\e(B \e,LL\e(B \e,LF\e(B \e,L6\e(B \e,L1\e(B \e,L=\e(B \e,L<\e(B ,< .> /?
843
844 (quail-define-rules
845 ("1" ?1)
846 ("2" ?2)
847 ("3" ?3)
848 ("4" ?4)
849 ("5" ?5)
850 ("6" ?6)
851 ("7" ?7)
852 ("8" ?8)
853 ("9" ?9)
854 ("0" ?0)
855 ("-" ?-)
856 ("=" ?\e,Lg\e(B)
857 ("`" ?\e,Ln\e(B)
858 ("q" ?\e,Lo\e(B)
859 ("w" ?\e,LR\e(B)
860 ("e" ?\e,LU\e(B)
861 ("r" ?\e,L`\e(B)
862 ("t" ?\e,Lb\e(B)
863 ("y" ?\e,Lk\e(B)
864 ("u" ?\e,Lc\e(B)
865 ("i" ?\e,LX\e(B)
866 ("o" ?\e,L^\e(B)
867 ("p" ?\e,L_\e(B)
868 ("[" ?\e,Lh\e(B)
869 ("]" ?\e,Li\e(B)
870 ("a" ?\e,LP\e(B)
871 ("s" ?\e,La\e(B)
872 ("d" ?\e,LT\e(B)
873 ("f" ?\e,Ld\e(B)
874 ("g" ?\e,LS\e(B)
875 ("h" ?\e,Le\e(B)
876 ("j" ?\e,LY\e(B)
877 ("k" ?\e,LZ\e(B)
878 ("l" ?\e,L[\e(B)
879 (";" ?\;)
880 ("'" ?')
881 ("\\" ?\e,Lm\e(B)
882 ("z" ?\e,LW\e(B)
883 ("x" ?\e,Ll\e(B)
884 ("c" ?\e,Lf\e(B)
885 ("v" ?\e,LV\e(B)
886 ("b" ?\e,LQ\e(B)
887 ("n" ?\e,L]\e(B)
888 ("m" ?\e,L\\e(B)
889 ("," ?,)
890 ("." ?.)
891 ("/" ?/)
892
893 ("!" ?!)
894 ("@" ?\e,Lq\e(B)
895 ("#" ?\e,Lj\e(B)
896 ("$" ?\e,L!\e(B)
897 ("%" ?%)
898 ("^" ?^)
899 ("&" ?&)
900 ("*" ?*)
901 ("(" ?\()
902 (")" ?\))
903 ("_" ?_)
904 ("+" ?\e,LG\e(B)
905 ("~" ?\e,LN\e(B)
906 ("Q" ?\e,LO\e(B)
907 ("W" ?\e,L2\e(B)
908 ("E" ?\e,L5\e(B)
909 ("R" ?\e,L@\e(B)
910 ("T" ?\e,LB\e(B)
911 ("Y" ?\e,LK\e(B)
912 ("U" ?\e,LC\e(B)
913 ("I" ?\e,L8\e(B)
914 ("O" ?\e,L>\e(B)
915 ("P" ?\e,L?\e(B)
916 ("{" ?\e,LH\e(B)
917 ("}" ?\e,LI\e(B)
918 ("A" ?\e,L0\e(B)
919 ("S" ?\e,LA\e(B)
920 ("D" ?\e,L4\e(B)
921 ("F" ?\e,LD\e(B)
922 ("G" ?\e,L3\e(B)
923 ("H" ?\e,LE\e(B)
924 ("J" ?\e,L9\e(B)
925 ("K" ?\e,L:\e(B)
926 ("L" ?\e,L;\e(B)
927 (":" ?:)
928 ("\"" ?\")
929 ("|" ?\e,LM\e(B)
930 ("Z" ?\e,L7\e(B)
931 ("X" ?\e,LL\e(B)
932 ("C" ?\e,LF\e(B)
933 ("V" ?\e,L6\e(B)
934 ("B" ?\e,L1\e(B)
935 ("N" ?\e,L=\e(B)
936 ("M" ?\e,L<\e(B)
937 ("<" ?<)
938 (">" ?>)
939 ("?" ??)
940
941 ("/q" ?\e,Lr\e(B)
942 ("/w" ?\e,Ls\e(B)
943 ("/e" ?\e,Lt\e(B)
944 ("/r" ?\e,Lu\e(B)
945 ("/t" ?\e,Lv\e(B)
946 ("/y" ?\e,Lw\e(B)
947 ("/u" ?\e,Lx\e(B)
948 ("/i" ?\e,Ly\e(B)
949 ("/o" ?\e,Lz\e(B)
950 ("/p" ?\e,L{\e(B)
951 ("/a" ?\e,L|\e(B)
952 ("/s" ?\e,L~\e(B)
953 ("/d" ?\e,L\7f\e(B)
954
955 ("/Q" ?\e,L"\e(B)
956 ("/W" ?\e,L#\e(B)
957 ("/E" ?\e,L$\e(B)
958 ("/R" ?\e,L%\e(B)
959 ("/T" ?\e,L&\e(B)
960 ("/Y" ?\e,L'\e(B)
961 ("/U" ?\e,L(\e(B)
962 ("/I" ?\e,L)\e(B)
963 ("/O" ?\e,L*\e(B)
964 ("/P" ?\e,L+\e(B)
965 ("/A" ?\e,L,\e(B)
966 ("/S" ?\e,L.\e(B)
967 ("/D" ?\e,L/\e(B))
968
969 ;; This was provided by Valery Alexeev <valery@domovoy.math.uga.edu>.
970
971 ;; Ognyan Kulev <ogi@fmi.uni-sofia.bg> wrote:
972
973 ;; I would suggest future `cyrillic-translit' to be with the
974 ;; modification of `cyrillic-translit-bulgarian' applied and the
975 ;; latter to disappear. It could be used by people who write
976 ;; bulgarian e-mails with latin letters for kick start (phonetic input
977 ;; method is not so obvious as translit input method but each letter
978 ;; is one keypress and a *lot* of people know it).
979
980 ;; Anton Zinoviev <anton@lml.bas.bg> wrote:
981 ;; I would say that the main idea for cyrillic-translit is to be
982 ;; language-independent and universal. It should be able to generate all
983 ;; Cyrillic symbols.
984 (quail-define-package
985 "cyrillic-translit" "Cyrillic" "\e,L6\e(Bt" nil
986 "Intuitively transliterated keyboard layout.
987 Most convenient for entering Russian but all Cyrillic characters are included.
988 Should handle most cases. However:
989 for \e,Lf\e(B (TSE) use \"c\", never \"ts\"
990 \e,Li\e(B (SHCHA = Bulgarian SHT) = \"shch\", \"sj\", \"/sht\" or \"/t\",
991 \e,Lm\e(B (REVERSE ROUNDED E) = \"e'\" or \"e`\"
992 \e,Le\e(B (KHA) when after \e,La\e(B (S) = \"x\" or \"kh\"
993 \e,Lj\e(B (HARD SIGN) = \"~\", \e,LJ\e(B (CAPITAL HARD SIGN) = \"~~\",
994 \e,Ll\e(B (SOFT SIGN) = \"'\", \e,LL\e(B (CAPITAL SOFT SIGN) = \"''\",
995 \e,Lo\e(B (YA) = \"ya\", \"ja\" or \"q\".
996
997 Russian alphabet: a b v=w g d e yo=jo zh z i j=j' k l m n o p r s t
998 u f h=kh=x c ch sh shch=sj=/s=/sht ~ y ' e' yu=ju ya=ja=q
999
1000 Also included are Ukrainian \e,Lt\e(B (YE) = \"/e\" and \e,Lw\e(B (YI) = \"yi\",
1001 Belarusian \e,L~\e(B (SHORT U) = \"u'\",
1002 Serbo-Croatian \e,Lr\e(B (DJE) = \"/d\", \e,L{\e(B (CHJE)= \"/ch\",
1003 Macedonian \e,Ls\e(B (GJE) = \"/g\", \e,Lu\e(B (DZE) = \"/s\", \e,L|\e(B (KJE) = \"/k\",
1004 cyrillic \e,Lv\e(B (I DECIMAL) = \"/i\", \e,Lx\e(B (JE) = \"/j\",
1005 \e,Ly\e(B (LJE) = \"/l\", \e,Lz\e(B (NJE) = \"/n\" and \e,L\7f\e(B (DZE) =\"/z\"."
1006 nil t t t t nil nil nil nil nil t)
1007
1008 (quail-define-rules
1009 ("a" ?\e,LP\e(B)("b" ?\e,LQ\e(B) ("v" ?\e,LR\e(B) ("w" ?\e,LR\e(B) ("g" ?\e,LS\e(B) ("d" ?\e,LT\e(B)
1010 ("e" ?\e,LU\e(B) ("je" ?\e,LU\e(B)
1011 ("yo" ?\e,Lq\e(B) ("jo" ?\e,Lq\e(B)
1012 ("zh" ?\e,LV\e(B) ("z" ?\e,LW\e(B) ("i" ?\e,LX\e(B)
1013 ("j" ?\e,LY\e(B) ("j'" ?\e,LY\e(B) ("j`" ?\e,LY\e(B) ("k" ?\e,LZ\e(B) ("l" ?\e,L[\e(B)
1014 ("m" ?\e,L\\e(B) ("n" ?\e,L]\e(B) ("o" ?\e,L^\e(B) ("p" ?\e,L_\e(B) ("r" ?\e,L`\e(B) ("s" ?\e,La\e(B) ("t" ?\e,Lb\e(B) ("u" ?\e,Lc\e(B)
1015 ("f" ?\e,Ld\e(B) ("x" ?\e,Le\e(B) ("h" ?\e,Le\e(B) ("kh" ?\e,Le\e(B)
1016 ("c" ?\e,Lf\e(B) ("ch" ?\e,Lg\e(B)
1017 ("sh" ?\e,Lh\e(B)
1018 ("shch" ?\e,Li\e(B) ("sj" ?\e,Li\e(B)
1019 ("/sht" ?\e,Li\e(B) ("/t" ?\e,Li\e(B)
1020 ("~" ?\e,Lj\e(B) ("y" ?\e,Lk\e(B) ("'" ?\e,Ll\e(B) ("`" ?\e,Ll\e(B)
1021 ("e'" ?\e,Lm\e(B) ("e`" ?\e,Lm\e(B) ("@" ?\e,Lm\e(B)
1022 ("yu" ?\e,Ln\e(B) ("ju" ?\e,Ln\e(B)
1023 ("ya" ?\e,Lo\e(B) ("ja" ?\e,Lo\e(B) ("q" ?\e,Lo\e(B)
1024
1025 ("A" ?\e,L0\e(B) ("B" ?\e,L1\e(B) ("V" ?\e,L2\e(B) ("W" ?\e,L2\e(B) ("G" ?\e,L3\e(B) ("D" ?\e,L4\e(B)
1026 ("E" ?\e,L5\e(B) ("Je" ?\e,L5\e(B) ("JE" ?\e,L5\e(B)
1027 ("Yo" ?\e,L!\e(B) ("YO" ?\e,L!\e(B) ("Jo" ?\e,L!\e(B) ("JO" ?\e,L!\e(B)
1028 ("Zh" ?\e,L6\e(B) ("ZH" ?\e,L6\e(B) ("Z" ?\e,L7\e(B) ("I" ?\e,L8\e(B)
1029 ("J" ?\e,L9\e(B) ("J'" ?\e,L9\e(B) ("J`" ?\e,L9\e(B) ("K" ?\e,L:\e(B) ("L" ?\e,L;\e(B)
1030 ("M" ?\e,L<\e(B) ("N" ?\e,L=\e(B) ("O" ?\e,L>\e(B) ("P" ?\e,L?\e(B) ("R" ?\e,L@\e(B) ("S" ?\e,LA\e(B) ("T" ?\e,LB\e(B) ("U" ?\e,LC\e(B)
1031 ("F" ?\e,LD\e(B) ("X" ?\e,LE\e(B) ("H" ?\e,LE\e(B) ("Kh" ?\e,LE\e(B) ("KH" ?\e,LE\e(B)
1032 ("C" ?\e,LF\e(B) ("Ch" ?\e,LG\e(B) ("CH" ?\e,LG\e(B)
1033 ("Sh" ?\e,LH\e(B) ("SH" ?\e,LH\e(B)
1034 ("Shch" ?\e,LI\e(B) ("SHCH" ?\e,LI\e(B) ("Sj" ?\e,LI\e(B) ("SJ" ?\e,LI\e(B)
1035 ("/Sht" ?\e,LI\e(B) ("/SHT" ?\e,LI\e(B) ("/T" ?\e,LI\e(B)
1036 ("~~" "\e,LJ\e(B") ("Y" ?\e,LK\e(B) ("''" "\e,LL\e(B") ("E'" ?\e,LM\e(B) ("E`" ?\e,LM\e(B)
1037 ("Yu" ?\e,LN\e(B) ("YU" ?\e,LN\e(B) ("Ju" ?\e,LN\e(B) ("JU" ?\e,LN\e(B)
1038 ("Ya" ?\e,LO\e(B) ("YA" ?\e,LO\e(B) ("Ja" ?\e,LO\e(B) ("JA" ?\e,LO\e(B) ("Q" ?\e,LO\e(B)
1039
1040 ("/e" ?\e,Lt\e(B) ("yi" ?\e,Lw\e(B) ("u'" ?\e,L~\e(B)
1041 ("/d" ?\e,Lr\e(B) ("/ch" ?\e,L{\e(B)
1042 ("/g" ?\e,Ls\e(B) ("/s" ?\e,Lu\e(B) ("/k" ?\e,L|\e(B)
1043 ("/i" ?\e,Lv\e(B) ("/j" ?\e,Lx\e(B) ("/l" ?\e,Ly\e(B) ("/n" ?\e,Lz\e(B) ("/z" ?\e,L\7f\e(B)
1044 ("/E" ?\e,L$\e(B) ("YE" ?\e,L$\e(B) ("Yi" ?\e,L'\e(B) ("YI" ?\e,L'\e(B) ("U'" ?\e,L.\e(B)
1045 ("/D" ?\e,L"\e(B) ("/Ch" ?\e,L+\e(B) ("/CH" ?\e,L+\e(B)
1046 ("/G" ?\e,L#\e(B) ("/S" ?\e,L%\e(B) ("/K" ?\e,L,\e(B)
1047 ("/I" ?\e,L&\e(B) ("/J" ?\e,L(\e(B) ("/L" ?\e,L)\e(B) ("/N" ?\e,L*\e(B) ("/Z" ?\e,L/\e(B)
1048 )
1049
1050 ;; Originally from Yudit's `Belarusian input table according to
1051 ;; STB955-94 belarusian standard' (not all) by Alexander Mikhailian
1052 ;; <mikhailian@altern.org>, subsequently amended by AM.
1053 (quail-define-package
1054 "belarusian" "Belarusian" "BE" nil
1055 "\e,L9FC:5=\e(B keyboard layout registered as STB955-94 Belarusian standard."
1056 nil t t t t nil nil nil nil nil t)
1057
1058 ;; \e,Lq!\e(B 1! 2" 3N 4; 5% 6: 7? 8* 9( 0) -_ =+
1059 ;; \e,L9\e(B \e,LF\e(B \e,LC\e(B \e,L:\e(B \e,L5\e(B \e,L=\e(B \e,L3\e(B \e,LH\e(B \e,L.\e(B \e,L7\e(B \e,LE\e(B '
1060 ;; \e,LD\e(B \e,LK\e(B \e,L2\e(B \e,L0\e(B \e,L?\e(B \e,L@\e(B \e,L>\e(B \e,L;\e(B \e,L4\e(B \e,L6\e(B \e,LM\e(B
1061 ;; \e,LO\e(B \e,LG\e(B \e,LA\e(B \e,L<\e(B \e,L&\e(B \e,LB\e(B \e,LL\e(B \e,L1\e(B \e,LN\e(B .,
1062
1063 (quail-define-rules
1064 ("~" ?\e,L!\e(B)
1065 ("@" ?\")
1066 ("#" ?\e,Lp\e(B)
1067 ("$" ?\;)
1068 ("%" ?%)
1069 ("^" ?:)
1070 ("&" ??)
1071 ("Q" ?\e,L9\e(B)
1072 ("W" ?\e,LF\e(B)
1073 ("E" ?\e,LC\e(B)
1074 ("R" ?\e,L:\e(B)
1075 ("T" ?\e,L5\e(B)
1076 ("Y" ?\e,L=\e(B)
1077 ("U" ?\e,L3\e(B)
1078 ("I" ?\e,LH\e(B)
1079 ("O" ?\e,L.\e(B)
1080 ("P" ?\e,L7\e(B)
1081 ("{" ?\e,LE\e(B)
1082 ("}" ?')
1083 ("A" ?\e,LD\e(B)
1084 ("S" ?\e,LK\e(B)
1085 ("D" ?\e,L2\e(B)
1086 ("F" ?\e,L0\e(B)
1087 ("G" ?\e,L?\e(B)
1088 ("H" ?\e,L@\e(B)
1089 ("J" ?\e,L>\e(B)
1090 ("K" ?\e,L;\e(B)
1091 ("L" ?\e,L4\e(B)
1092 (":" ?\e,L6\e(B)
1093 ("\"" ?\e,LM\e(B)
1094 ("|" ?|)
1095 ("Z" ?\e,LO\e(B)
1096 ("X" ?\e,LG\e(B)
1097 ("C" ?\e,LA\e(B)
1098 ("V" ?\e,L<\e(B)
1099 ("B" ?\e,L&\e(B)
1100 ("N" ?\e,LB\e(B)
1101 ("M" ?\e,LL\e(B)
1102 ("<" ?\e,L1\e(B)
1103 (">" ?\e,LN\e(B)
1104 ("?" ?,)
1105
1106 ("`" ?\e,Lq\e(B)
1107 ("q" ?\e,LY\e(B)
1108 ("w" ?\e,Lf\e(B)
1109 ("e" ?\e,Lc\e(B)
1110 ("r" ?\e,LZ\e(B)
1111 ("t" ?\e,LU\e(B)
1112 ("y" ?\e,L]\e(B)
1113 ("u" ?\e,LS\e(B)
1114 ("i" ?\e,Lh\e(B)
1115 ("o" ?\e,L~\e(B)
1116 ("p" ?\e,LW\e(B)
1117 ("[" ?\e,Le\e(B)
1118 ("]" ?')
1119 ("a" ?\e,Ld\e(B)
1120 ("s" ?\e,Lk\e(B)
1121 ("d" ?\e,LR\e(B)
1122 ("f" ?\e,LP\e(B)
1123 ("g" ?\e,L_\e(B)
1124 ("h" ?\e,L`\e(B)
1125 ("j" ?\e,L^\e(B)
1126 ("k" ?\e,L[\e(B)
1127 ("l" ?\e,LT\e(B)
1128 (";" ?\e,LV\e(B)
1129 ("'" ?\e,Lm\e(B)
1130 ("z" ?\e,Lo\e(B)
1131 ("x" ?\e,Lg\e(B)
1132 ("c" ?\e,La\e(B)
1133 ("v" ?\e,L\\e(B)
1134 ("b" ?\e,Lv\e(B)
1135 ("n" ?\e,Lb\e(B)
1136 ("m" ?\e,Ll\e(B)
1137 ("," ?\e,LQ\e(B)
1138 ("." ?\e,Ln\e(B)
1139 ("/" ?.))
1140
1141 ;; From `Bulgarian-PHO.kmap for Yudit', Alexander Shopov
1142 ;; <al_shopov@web.bg>.
1143
1144 ;; Extra commentary and the indicator from an independent
1145 ;; (cyrillic-iso8859-5) implementation by Ognyan Kulev
1146 ;; <ogi@fmi.uni-sofia.bg> and name changes from Anton Zinoviev
1147 ;; <anton@lml.bas.bg>.
1148 (quail-define-package
1149 "bulgarian-phonetic" "Bulgarian" "\e$,1(6(1(D\e(B"
1150 nil
1151 "Bulgarian Phonetic keyboard layout.
1152
1153 The layout is similar to `cyrillic-translit', but all Bulgarian
1154 characters are typed with a single key.
1155
1156 Use /& for \e,A'\e(B (Cyrillic paragraph) and /# for \e,Lp\e(B."
1157 nil t t t t nil nil nil nil nil t)
1158
1159 ;; \e,LO\e(B \e,L2\e(B \e,L5\e(B \e,L@\e(B \e,LB\e(B \e,LJ\e(B \e,LC\e(B \e,L8\e(B \e,L>\e(B \e,L?\e(B \e,LH\e(B \e,LI\e(B
1160 ;; \e,L0\e(B \e,LA\e(B \e,L4\e(B \e,LD\e(B \e,L3\e(B \e,LE\e(B \e,L9\e(B \e,L:\e(B \e,L;\e(B \e,LG\e(B
1161 ;; \e,LN\e(B \e,L7\e(B \e,LL\e(B \e,LF\e(B \e,L6\e(B \e,L1\e(B \e,L=\e(B \e,L<\e(B
1162
1163 (quail-define-rules
1164 ("/&" ?\e,A'\e(B)
1165 ("/#" ?\e,Lp\e(B)
1166 ("A" ?\e,L0\e(B)
1167 ("B" ?\e,L1\e(B)
1168 ("W" ?\e,L2\e(B)
1169 ("G" ?\e,L3\e(B)
1170 ("D" ?\e,L4\e(B)
1171 ("E" ?\e,L5\e(B)
1172 ("V" ?\e,L6\e(B)
1173 ("Z" ?\e,L7\e(B)
1174 ("I" ?\e,L8\e(B)
1175 ("J" ?\e,L9\e(B)
1176 ("K" ?\e,L:\e(B)
1177 ("L" ?\e,L;\e(B)
1178 ("M" ?\e,L<\e(B)
1179 ("N" ?\e,L=\e(B)
1180 ("O" ?\e,L>\e(B)
1181 ("P" ?\e,L?\e(B)
1182 ("R" ?\e,L@\e(B)
1183 ("S" ?\e,LA\e(B)
1184 ("T" ?\e,LB\e(B)
1185 ("U" ?\e,LC\e(B)
1186 ("F" ?\e,LD\e(B)
1187 ("H" ?\e,LE\e(B)
1188 ("C" ?\e,LF\e(B)
1189 ("~" ?\e,LG\e(B)
1190 ("{" ?\e,LH\e(B)
1191 ("}" ?\e,LI\e(B)
1192 ("Y" ?\e,LJ\e(B)
1193 ("X" ?\e,LL\e(B)
1194 ("|" ?\e,LN\e(B)
1195 ("Q" ?\e,LO\e(B)
1196 ("a" ?\e,LP\e(B)
1197 ("b" ?\e,LQ\e(B)
1198 ("w" ?\e,LR\e(B)
1199 ("g" ?\e,LS\e(B)
1200 ("d" ?\e,LT\e(B)
1201 ("e" ?\e,LU\e(B)
1202 ("v" ?\e,LV\e(B)
1203 ("z" ?\e,LW\e(B)
1204 ("i" ?\e,LX\e(B)
1205 ("j" ?\e,LY\e(B)
1206 ("k" ?\e,LZ\e(B)
1207 ("l" ?\e,L[\e(B)
1208 ("m" ?\e,L\\e(B)
1209 ("n" ?\e,L]\e(B)
1210 ("o" ?\e,L^\e(B)
1211 ("p" ?\e,L_\e(B)
1212 ("r" ?\e,L`\e(B)
1213 ("s" ?\e,La\e(B)
1214 ("t" ?\e,Lb\e(B)
1215 ("u" ?\e,Lc\e(B)
1216 ("f" ?\e,Ld\e(B)
1217 ("h" ?\e,Le\e(B)
1218 ("c" ?\e,Lf\e(B)
1219 ("`" ?\e,Lg\e(B)
1220 ("[" ?\e,Lh\e(B)
1221 ("]" ?\e,Li\e(B)
1222 ("y" ?\e,Lj\e(B)
1223 ("x" ?\e,Ll\e(B)
1224 ("\\" ?\e,Ln\e(B)
1225 ("|" ?\e,LN\e(B)
1226 ("q" ?\e,Lo\e(B))
1227
1228 ;; Based on an implementation by Ognyan Kulev <ogi@fmi.uni-sofia.bg>.
1229 ;; This follows XKB bg.
1230
1231 (quail-define-package
1232 "bulgarian-bds" "Bulgarian" "\e$,1(1(4(A\e(B" nil
1233 "Bulgarian standard keyboard layout (BDS)
1234
1235 This keyboard layout is standard for Bulgarian typewriters."
1236 nil t t t t nil nil nil nil nil t)
1237
1238 ;; 1! 2? 3+ 4" 5% 6= 7: 8/ 9_ 0\e,Lp\e(B -I .V
1239 ;; ,\e,Lk\e(B \e,LC\e(B \e,L5\e(B \e,L8\e(B \e,LH\e(B \e,LI\e(B \e,L:\e(B \e,LA\e(B \e,L4\e(B \e,L7\e(B \e,LF\e(B ;\e,A'\e(B
1240 ;; \e,Ll\e(B \e,LO\e(B \e,L0\e(B \e,L>\e(B \e,L6\e(B \e,L3\e(B \e,LB\e(B \e,L=\e(B \e,L2\e(B \e,L<\e(B \e,LG\e(B ()
1241 ;; \e,LN\e(B \e,L9\e(B \e,LJ\e(B \e,LM\e(B \e,LD\e(B \e,LE\e(B \e,L?\e(B \e,L@\e(B \e,L;\e(B \e,L1\e(B
1242
1243 (quail-define-rules
1244
1245 ("1" ?1) ("!" ?!)
1246 ("2" ?2)
1247 ("@" ??)
1248 ("3" ?3)
1249 ("#" ?+)
1250 ("4" ?4)
1251 ("$" ?\")
1252 ("5" ?5) ("%" ?%)
1253 ("6" ?6)
1254 ("^" ?=)
1255 ("7" ?7)
1256 ("&" ?:)
1257 ("8" ?8)
1258 ("*" ?/)
1259 ("9" ?9)
1260 ("(" ?_)
1261 ("0" ?0)
1262 (")" ?\e,Lp\e(B)
1263 ("-" ?-)
1264 ("_" ?I)
1265 ("=" ?.) ("+" ?V)
1266
1267 ("q" ?,) ("Q" ?\e,Lk\e(B)
1268 ("w" ?\e,Lc\e(B) ("W" ?\e,LC\e(B)
1269 ("e" ?\e,LU\e(B) ("E" ?\e,L5\e(B)
1270 ("r" ?\e,LX\e(B) ("R" ?\e,L8\e(B)
1271 ("t" ?\e,Lh\e(B) ("T" ?\e,LH\e(B)
1272 ("y" ?\e,Li\e(B) ("Y" ?\e,LI\e(B)
1273 ("u" ?\e,LZ\e(B) ("U" ?\e,L:\e(B)
1274 ("i" ?\e,La\e(B) ("I" ?\e,LA\e(B)
1275 ("o" ?\e,LT\e(B) ("O" ?\e,L4\e(B)
1276 ("p" ?\e,LW\e(B) ("P" ?\e,L7\e(B)
1277 ("[" ?\e,Lf\e(B) ("{" ?\e,LF\e(B)
1278 ("]" ?\;)
1279 ("}" ?\e,A'\e(B) ;; not in XKB's bg
1280
1281 ("a" ?\e,Ll\e(B) ("A" ?\e,LL\e(B)
1282 ("s" ?\e,Lo\e(B) ("S" ?\e,LO\e(B)
1283 ("d" ?\e,LP\e(B) ("D" ?\e,L0\e(B)
1284 ("f" ?\e,L^\e(B) ("F" ?\e,L>\e(B)
1285 ("g" ?\e,LV\e(B) ("G" ?\e,L6\e(B)
1286 ("h" ?\e,LS\e(B) ("H" ?\e,L3\e(B)
1287 ("j" ?\e,Lb\e(B) ("J" ?\e,LB\e(B)
1288 ("k" ?\e,L]\e(B) ("K" ?\e,L=\e(B)
1289 ("l" ?\e,LR\e(B) ("L" ?\e,L2\e(B)
1290 (";" ?\e,L\\e(B) (":" ?\e,L<\e(B)
1291 ("'" ?\e,Lg\e(B) ("\"" ?\e,LG\e(B)
1292 ("`" ?\() ("~" ?\))
1293
1294 ("z" ?\e,Ln\e(B) ("Z" ?\e,LN\e(B)
1295 ("x" ?\e,LY\e(B) ("X" ?\e,L9\e(B)
1296 ("c" ?\e,Lj\e(B) ("C" ?\e,LJ\e(B)
1297 ("v" ?\e,Lm\e(B) ("V" ?\e,LM\e(B)
1298 ("b" ?\e,Ld\e(B) ("B" ?\e,LD\e(B)
1299 ("n" ?\e,Le\e(B) ("N" ?\e,LE\e(B)
1300 ("m" ?\e,L_\e(B) ("M" ?\e,L?\e(B)
1301 ("," ?\e,L`\e(B) ("<" ?\e,L@\e(B)
1302 ("." ?\e,L[\e(B) (">" ?\e,L;\e(B)
1303 ("/" ?\e,LQ\e(B) ("?" ?\e,L1\e(B)
1304 ("\\" ?') ("|" ?\e,LK\e(B))
1305
1306 ;; Local Variables:
1307 ;; coding: iso-2022-7bit
1308 ;; End:
1309
1310 ;;; cyrillic.el ends here