]> code.delx.au - gnu-emacs/blob - leim/quail/czech.el
Initial revision
[gnu-emacs] / leim / quail / czech.el
1 ;;; quail/czech.el -- Quail package for inputting Czech
2
3 ;; Copyright (C) 1998 Free Software Foundation.
4
5 ;; Author: Milan Zamazal <pdm@fi.muni.cz>
6 ;; Maintainer: Milan Zamazal <pdm@fi.muni.cz>
7 ;; Keywords: multilingual, input method, Czech
8
9 ;; Copying and warranty: GNU General Public License, version 2
10
11 ;;; Commentary:
12
13 ;; This file defines the following Czech keyboards:
14 ;; - "standard" Czech keyboard in the Windoze NT 105 keys version (both
15 ;; "QWERTZ" and "QWERTY" versions)
16 ;; - three non-standard Czech keyboards for programmers
17
18 ;; Current Quail version has some limitations, which create annoying problems
19 ;; when using Czech keyboards. You may want to install the file
20 ;; `hack-quail.el' from the package
21 ;; ftp://ftp.fi.muni.cz/pub/localization/emacs/emacs-20/emacs-cs-utils*
22 ;; which tries to remove some of these limitations.
23
24 ;;; Code:
25
26 (require 'quail)
27
28
29 (quail-define-package
30 "czech" "Czech" "CZ" nil
31 "\"Standard\" Czech keyboard in the Windoze NT 105 keys version."
32 nil t nil nil nil nil nil nil nil nil t)
33
34 (quail-define-rules
35 ("1" ?+)
36 ("2" ?\e,Bl\e(B)
37 ("3" ?\e,B9\e(B)
38 ("4" ?\e,Bh\e(B)
39 ("5" ?\e,Bx\e(B)
40 ("6" ?\e,B>\e(B)
41 ("7" ?\e,B}\e(B)
42 ("8" ?\e,Ba\e(B)
43 ("9" ?\e,Bm\e(B)
44 ("0" ?\e,Bi\e(B)
45 ("!" ?1)
46 ("@" ?2)
47 ("#" ?3)
48 ("$" ?4)
49 ("%" ?5)
50 ("^" ?6)
51 ("&" ?7)
52 ("*" ?8)
53 ("(" ?9)
54 (")" ?0)
55 ("-" ?=)
56 ("_" ?%)
57 ("[" ?\e,Bz\e(B)
58 ("{" ?/)
59 ("]" ?\))
60 ("}" ?\()
61 ("|" ?`)
62 (";" ?\e,By\e(B)
63 (":" ?\")
64 ("'" ?\e,B'\e(B)
65 ("\"" ?!)
66 ("<" ??)
67 (">" ?:)
68 ("/" ?-)
69 ("?" ?_)
70 ("`" ?\;)
71 ("y" ?z)
72 ("z" ?y)
73 ("Y" ?Z)
74 ("Z" ?Y)
75 ("\\a" ?\e,Bd\e(B)
76 ("\\o" ?\e,Bv\e(B)
77 ("\\s" ?\e,B_\e(B)
78 ("\\u" ?\e,B|\e(B)
79 ("\\A" ?\e,BD\e(B)
80 ("\\O" ?\e,BV\e(B)
81 ("\\S" ?\e,B_\e(B)
82 ("\\U" ?\e,B\\e(B)
83 ("~u" ?\e,By\e(B)
84 ("~U" ?\e,BY\e(B)
85 ("=a" ?\e,Ba\e(B)
86 ("+c" ?\e,Bh\e(B)
87 ("+d" ?\e,Bo\e(B)
88 ("=e" ?\e,Bi\e(B)
89 ("+e" ?\e,Bl\e(B)
90 ("=i" ?\e,Bm\e(B)
91 ("+n" ?\e,Br\e(B)
92 ("=o" ?\e,Bs\e(B)
93 ("+r" ?\e,Bx\e(B)
94 ("+s" ?\e,B9\e(B)
95 ("+t" ?\e,B;\e(B)
96 ("=u" ?\e,Bz\e(B)
97 ("=z" ?\e,B}\e(B)
98 ("+y" ?\e,B>\e(B)
99 ("=A" ?\e,BA\e(B)
100 ("+C" ?\e,BH\e(B)
101 ("+D" ?\e,BO\e(B)
102 ("=E" ?\e,BI\e(B)
103 ("+E" ?\e,BL\e(B)
104 ("=I" ?\e,BM\e(B)
105 ("+N" ?\e,BR\e(B)
106 ("=O" ?\e,BS\e(B)
107 ("+R" ?\e,BX\e(B)
108 ("+S" ?\e,B)\e(B)
109 ("+T" ?\e,B+\e(B)
110 ("=U" ?\e,BZ\e(B)
111 ("=Z" ?\e,B]\e(B)
112 ("+Y" ?\e,B.\e(B)
113 ("=1" ?!)
114 ("=2" ?@)
115 ("=3" ?#)
116 ("=4" ?$)
117 ("=5" ?%)
118 ("=6" ?^)
119 ("=7" ?&)
120 ("=8" ?*)
121 ("=9" ?\()
122 ("=0" ?\))
123 ("+1" ?!)
124 ("+2" ?@)
125 ("+3" ?#)
126 ("+4" ?$)
127 ("+5" ?%)
128 ("+6" ?^)
129 ("+7" ?&)
130 ("+8" ?*)
131 ("+9" ?\()
132 ("+0" ?\))
133 ([kp-1] ?1)
134 ([kp-2] ?2)
135 ([kp-3] ?3)
136 ([kp-4] ?4)
137 ([kp-5] ?5)
138 ([kp-6] ?6)
139 ([kp-7] ?7)
140 ([kp-8] ?8)
141 ([kp-9] ?9)
142 ([kp-0] ?0)
143 ([kp-add] ?+))
144
145 (quail-define-package
146 "czech-qwerty" "Czech" "CZ" nil
147 "\"Standard\" Czech keyboard in the Windoze NT 105 keys version, QWERTY layout."
148 nil t nil nil nil nil nil nil nil nil t)
149
150 (quail-define-rules
151 ("1" ?+)
152 ("2" ?\e,Bl\e(B)
153 ("3" ?\e,B9\e(B)
154 ("4" ?\e,Bh\e(B)
155 ("5" ?\e,Bx\e(B)
156 ("6" ?\e,B>\e(B)
157 ("7" ?\e,B}\e(B)
158 ("8" ?\e,Ba\e(B)
159 ("9" ?\e,Bm\e(B)
160 ("0" ?\e,Bi\e(B)
161 ("!" ?1)
162 ("@" ?2)
163 ("#" ?3)
164 ("$" ?4)
165 ("%" ?5)
166 ("^" ?6)
167 ("&" ?7)
168 ("*" ?8)
169 ("(" ?9)
170 (")" ?0)
171 ("-" ?=)
172 ("_" ?%)
173 ("[" ?\e,Bz\e(B)
174 ("{" ?/)
175 ("]" ?\))
176 ("}" ?\()
177 ("|" ?`)
178 (";" ?\e,By\e(B)
179 (":" ?\")
180 ("'" ?\e,B'\e(B)
181 ("\"" ?!)
182 ("<" ??)
183 (">" ?:)
184 ("/" ?-)
185 ("?" ?_)
186 ("`" ?\;)
187 ("\\a" ?\e,Bd\e(B)
188 ("\\o" ?\e,Bv\e(B)
189 ("\\s" ?\e,B_\e(B)
190 ("\\u" ?\e,B|\e(B)
191 ("\\A" ?\e,BD\e(B)
192 ("\\O" ?\e,BV\e(B)
193 ("\\S" ?\e,B_\e(B)
194 ("\\U" ?\e,B\\e(B)
195 ("~u" ?\e,By\e(B)
196 ("~U" ?\e,BY\e(B)
197 ("=a" ?\e,Ba\e(B)
198 ("+c" ?\e,Bh\e(B)
199 ("+d" ?\e,Bo\e(B)
200 ("=e" ?\e,Bi\e(B)
201 ("+e" ?\e,Bl\e(B)
202 ("=i" ?\e,Bm\e(B)
203 ("+n" ?\e,Br\e(B)
204 ("=o" ?\e,Bs\e(B)
205 ("+r" ?\e,Bx\e(B)
206 ("+s" ?\e,B9\e(B)
207 ("+t" ?\e,B;\e(B)
208 ("=u" ?\e,Bz\e(B)
209 ("=y" ?\e,B}\e(B)
210 ("+z" ?\e,B>\e(B)
211 ("=A" ?\e,BA\e(B)
212 ("+C" ?\e,BH\e(B)
213 ("+D" ?\e,BO\e(B)
214 ("=E" ?\e,BI\e(B)
215 ("+E" ?\e,BL\e(B)
216 ("=I" ?\e,BM\e(B)
217 ("+N" ?\e,BR\e(B)
218 ("=O" ?\e,BS\e(B)
219 ("+R" ?\e,BX\e(B)
220 ("+S" ?\e,B)\e(B)
221 ("+T" ?\e,B+\e(B)
222 ("=Y" ?\e,B]\e(B)
223 ("+Z" ?\e,B.\e(B)
224 ("=U" ?\e,BZ\e(B)
225 ("=1" ?!)
226 ("=2" ?@)
227 ("=3" ?#)
228 ("=4" ?$)
229 ("=5" ?%)
230 ("=6" ?^)
231 ("=7" ?&)
232 ("=8" ?*)
233 ("=9" ?\()
234 ("=0" ?\))
235 ("+1" ?!)
236 ("+2" ?@)
237 ("+3" ?#)
238 ("+4" ?$)
239 ("+5" ?%)
240 ("+6" ?^)
241 ("+7" ?&)
242 ("+8" ?*)
243 ("+9" ?\()
244 ("+0" ?\))
245 ([kp-1] ?1)
246 ([kp-2] ?2)
247 ([kp-3] ?3)
248 ([kp-4] ?4)
249 ([kp-5] ?5)
250 ([kp-6] ?6)
251 ([kp-7] ?7)
252 ([kp-8] ?8)
253 ([kp-9] ?9)
254 ([kp-0] ?0)
255 ([kp-add] ?+))
256
257 (quail-define-package
258 "czech-prog-1" "Czech" "CZ" nil
259 "Czech (non-standard) keyboard for programmers #1.
260
261 All digits except of `1' are replaced by Czech characters as on the standard
262 Czech keyboard.
263 `1' is replaced by `+'.
264 `+' is a dead key. Multiple presses of the dead key generate various accents.
265 All other keys are the same as on standard US keyboard."
266 nil t nil nil nil nil nil nil nil nil t)
267
268 (quail-define-rules
269 ("1" ?+)
270 ("2" ?\e,Bl\e(B)
271 ("3" ?\e,B9\e(B)
272 ("4" ?\e,Bh\e(B)
273 ("5" ?\e,Bx\e(B)
274 ("6" ?\e,B>\e(B)
275 ("7" ?\e,B}\e(B)
276 ("8" ?\e,Ba\e(B)
277 ("9" ?\e,Bm\e(B)
278 ("0" ?\e,Bi\e(B)
279 ("+1" ?1)
280 ("+2" ?2)
281 ("+3" ?3)
282 ("+4" ?4)
283 ("+5" ?5)
284 ("+6" ?6)
285 ("+7" ?7)
286 ("+8" ?8)
287 ("+9" ?9)
288 ("+0" ?0)
289 ("+a" ?\e,Ba\e(B)
290 ("++a" ?\e,Bd\e(B)
291 ("+c" ?\e,Bh\e(B)
292 ("+d" ?\e,Bo\e(B)
293 ("+e" ?\e,Bi\e(B)
294 ("++e" ?\e,Bl\e(B)
295 ("+i" ?\e,Bm\e(B)
296 ("+l" ?\e,Be\e(B)
297 ("++l" ?\e,B5\e(B)
298 ("+n" ?\e,Br\e(B)
299 ("+o" ?\e,Bs\e(B)
300 ("++o" ?\e,Bv\e(B)
301 ("+++o" ?\e,Bt\e(B)
302 ("+r" ?\e,Bx\e(B)
303 ("++r" ?\e,B`\e(B)
304 ("+s" ?\e,B9\e(B)
305 ("++s" ?\e,B_\e(B)
306 ("+t" ?\e,B;\e(B)
307 ("+u" ?\e,Bz\e(B)
308 ("++u" ?\e,By\e(B)
309 ("+++u" ?\e,B|\e(B)
310 ("+y" ?\e,B}\e(B)
311 ("+z" ?\e,B>\e(B)
312 ("+A" ?\e,BA\e(B)
313 ("++A" ?\e,BD\e(B)
314 ("+C" ?\e,BH\e(B)
315 ("+D" ?\e,BO\e(B)
316 ("+E" ?\e,BI\e(B)
317 ("++E" ?\e,BL\e(B)
318 ("+I" ?\e,BM\e(B)
319 ("+L" ?\e,BE\e(B)
320 ("++L" ?\e,B%\e(B)
321 ("+N" ?\e,BR\e(B)
322 ("+O" ?\e,BS\e(B)
323 ("++O" ?\e,BV\e(B)
324 ("+++O" ?\e,BT\e(B)
325 ("+R" ?\e,BX\e(B)
326 ("++R" ?\e,B@\e(B)
327 ("+S" ?\e,B)\e(B)
328 ("++S" ?\e,B_\e(B)
329 ("+T" ?\e,B+\e(B)
330 ("+U" ?\e,BZ\e(B)
331 ("++U" ?\e,BY\e(B)
332 ("+++U" ?\e,B\\e(B)
333 ("+Y" ?\e,B]\e(B)
334 ("+Z" ?\e,B.\e(B)
335 ([kp-1] ?1)
336 ([kp-2] ?2)
337 ([kp-3] ?3)
338 ([kp-4] ?4)
339 ([kp-5] ?5)
340 ([kp-6] ?6)
341 ([kp-7] ?7)
342 ([kp-8] ?8)
343 ([kp-9] ?9)
344 ([kp-0] ?0)
345 ([kp-add] ?+))
346
347 (quail-define-package
348 "czech-prog-2" "Czech" "CZ" nil
349 "Czech (non-standard) keyboard for programmers #2.
350
351 All digits except of `1' are replaced by Czech characters as on the standard
352 Czech keyboard.
353 `1' is replaced by `\e,By\e(B'.
354 `+' is a dead key. Multiple presses of the dead key generate various accents.
355 All other keys are the same as on standard US keyboard."
356 nil t nil nil nil nil nil nil nil nil t)
357
358 (quail-define-rules
359 ("1" ?\e,By\e(B)
360 ("2" ?\e,Bl\e(B)
361 ("3" ?\e,B9\e(B)
362 ("4" ?\e,Bh\e(B)
363 ("5" ?\e,Bx\e(B)
364 ("6" ?\e,B>\e(B)
365 ("7" ?\e,B}\e(B)
366 ("8" ?\e,Ba\e(B)
367 ("9" ?\e,Bm\e(B)
368 ("0" ?\e,Bi\e(B)
369 ("+1" ?1)
370 ("+2" ?2)
371 ("+3" ?3)
372 ("+4" ?4)
373 ("+5" ?5)
374 ("+6" ?6)
375 ("+7" ?7)
376 ("+8" ?8)
377 ("+9" ?9)
378 ("+0" ?0)
379 ("+a" ?\e,Ba\e(B)
380 ("++a" ?\e,Bd\e(B)
381 ("+c" ?\e,Bh\e(B)
382 ("+d" ?\e,Bo\e(B)
383 ("+e" ?\e,Bi\e(B)
384 ("++e" ?\e,Bl\e(B)
385 ("+i" ?\e,Bm\e(B)
386 ("+l" ?\e,Be\e(B)
387 ("++l" ?\e,B5\e(B)
388 ("+n" ?\e,Br\e(B)
389 ("+o" ?\e,Bs\e(B)
390 ("++o" ?\e,Bv\e(B)
391 ("+++o" ?\e,Bt\e(B)
392 ("+r" ?\e,Bx\e(B)
393 ("++r" ?\e,B`\e(B)
394 ("+s" ?\e,B9\e(B)
395 ("++s" ?\e,B_\e(B)
396 ("+t" ?\e,B;\e(B)
397 ("+u" ?\e,Bz\e(B)
398 ("++u" ?\e,By\e(B)
399 ("+++u" ?\e,B|\e(B)
400 ("+y" ?\e,B}\e(B)
401 ("+z" ?\e,B>\e(B)
402 ("+A" ?\e,BA\e(B)
403 ("++A" ?\e,BD\e(B)
404 ("+C" ?\e,BH\e(B)
405 ("+D" ?\e,BO\e(B)
406 ("+E" ?\e,BI\e(B)
407 ("++E" ?\e,BL\e(B)
408 ("+I" ?\e,BM\e(B)
409 ("+L" ?\e,BE\e(B)
410 ("++L" ?\e,B%\e(B)
411 ("+N" ?\e,BR\e(B)
412 ("+O" ?\e,BS\e(B)
413 ("++O" ?\e,BV\e(B)
414 ("+++O" ?\e,BT\e(B)
415 ("+R" ?\e,BX\e(B)
416 ("++R" ?\e,B@\e(B)
417 ("+S" ?\e,B)\e(B)
418 ("++S" ?\e,B_\e(B)
419 ("+T" ?\e,B+\e(B)
420 ("+U" ?\e,BZ\e(B)
421 ("++U" ?\e,BY\e(B)
422 ("+++U" ?\e,B\\e(B)
423 ("+Y" ?\e,B]\e(B)
424 ("+Z" ?\e,B.\e(B)
425 ([kp-1] ?1)
426 ([kp-2] ?2)
427 ([kp-3] ?3)
428 ([kp-4] ?4)
429 ([kp-5] ?5)
430 ([kp-6] ?6)
431 ([kp-7] ?7)
432 ([kp-8] ?8)
433 ([kp-9] ?9)
434 ([kp-0] ?0)
435 ([kp-add] ?+))
436
437 (quail-define-package
438 "czech-prog-3" "Czech" "CZ" nil
439 "Czech (non-standard) keyboard for programmers compatible with the default
440 keyboard from the obsolete `emacs-czech' package.
441
442 All digits except of `1' are replaced by Czech characters as on the standard
443 Czech keyboard.
444 `[' and `]' are replaced with `\e,Bz\e(B' and `\e,By\e(B', respectively.
445 There are two dead keys on `=' and `+'. Characters with diaresis are
446 accessible through `+='.
447 All other keys are the same as on standard US keyboard."
448 nil t nil nil nil nil nil nil nil nil t)
449
450 (quail-define-rules
451 ("2" ?\e,Bl\e(B)
452 ("3" ?\e,B9\e(B)
453 ("4" ?\e,Bh\e(B)
454 ("5" ?\e,Bx\e(B)
455 ("6" ?\e,B>\e(B)
456 ("7" ?\e,B}\e(B)
457 ("8" ?\e,Ba\e(B)
458 ("9" ?\e,Bm\e(B)
459 ("0" ?\e,Bi\e(B)
460 ("[" ?\e,Bz\e(B)
461 ("]" ?\e,By\e(B)
462 ("==" ?=)
463 ("++" ?+)
464 ("=+" ?+)
465 ("=[" ?\[)
466 ("=]" ?\])
467 ("+[" ?\[)
468 ("+]" ?\])
469 ("=1" ?1)
470 ("=2" ?2)
471 ("=3" ?3)
472 ("=4" ?4)
473 ("=5" ?5)
474 ("=6" ?6)
475 ("=7" ?7)
476 ("=8" ?8)
477 ("=9" ?9)
478 ("=0" ?0)
479 ("+1" ?1)
480 ("+2" ?2)
481 ("+3" ?3)
482 ("+4" ?4)
483 ("+5" ?5)
484 ("+6" ?6)
485 ("+7" ?7)
486 ("+8" ?8)
487 ("+9" ?9)
488 ("+0" ?0)
489 ("=A" ?\e,BA\e(B)
490 ("+A" ?\e,BD\e(B)
491 ("+=A" ?\e,BD\e(B)
492 ("+C" ?\e,BH\e(B)
493 ("+D" ?\e,BO\e(B)
494 ("=E" ?\e,BI\e(B)
495 ("+E" ?\e,BL\e(B)
496 ("=I" ?\e,BM\e(B)
497 ("=L" ?\e,B%\e(B)
498 ("+L" ?\e,BE\e(B)
499 ("+N" ?\e,BR\e(B)
500 ("=O" ?\e,BS\e(B)
501 ("+O" ?\e,BT\e(B)
502 ("+=O" ?\e,BV\e(B)
503 ("=R" ?\e,B@\e(B)
504 ("+R" ?\e,BX\e(B)
505 ("+S" ?\e,B)\e(B)
506 ("=S" ?\e,B_\e(B)
507 ("+T" ?\e,B+\e(B)
508 ("=U" ?\e,BZ\e(B)
509 ("+U" ?\e,BY\e(B)
510 ("+=U" ?\e,B\\e(B)
511 ("=Y" ?\e,B]\e(B)
512 ("+Z" ?\e,B.\e(B)
513 ("=a" ?\e,Ba\e(B)
514 ("+a" ?\e,Bd\e(B)
515 ("+=a" ?\e,Bd\e(B)
516 ("+c" ?\e,Bh\e(B)
517 ("+d" ?\e,Bo\e(B)
518 ("=e" ?\e,Bi\e(B)
519 ("+e" ?\e,Bl\e(B)
520 ("=i" ?\e,Bm\e(B)
521 ("=l" ?\e,B5\e(B)
522 ("+l" ?\e,Be\e(B)
523 ("+n" ?\e,Br\e(B)
524 ("=o" ?\e,Bs\e(B)
525 ("+o" ?\e,Bt\e(B)
526 ("+=o" ?\e,Bv\e(B)
527 ("=r" ?\e,B`\e(B)
528 ("+r" ?\e,Bx\e(B)
529 ("+s" ?\e,B9\e(B)
530 ("=s" ?\e,B_\e(B)
531 ("+t" ?\e,B;\e(B)
532 ("=u" ?\e,Bz\e(B)
533 ("+u" ?\e,By\e(B)
534 ("+=u" ?\e,B|\e(B)
535 ("=y" ?\e,B}\e(B)
536 ("+z" ?\e,B>\e(B)
537 ([kp-1] ?1)
538 ([kp-2] ?2)
539 ([kp-3] ?3)
540 ([kp-4] ?4)
541 ([kp-5] ?5)
542 ([kp-6] ?6)
543 ([kp-7] ?7)
544 ([kp-8] ?8)
545 ([kp-9] ?9)
546 ([kp-0] ?0)
547 ([kp-add] ?+))