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