1 ;;; latin-pre.el --- Quail packages for inputting various European characters -*-coding: iso-2022-7bit;-*-
3 ;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
4 ;; Licensed to the Free Software Foundation.
5 ;; Copyright (C) 2000, 2002 Free Software Foundation, Inc.
7 ;; Keywords: mule, multilingual, latin, input method
9 ;; This file is part of GNU Emacs.
11 ;; GNU Emacs is free software; you can redistribute it and/or modify
12 ;; it under the terms of the GNU General Public License as published by
13 ;; the Free Software Foundation; either version 2, or (at your option)
16 ;; GNU Emacs is distributed in the hope that it will be useful,
17 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 ;; GNU General Public License for more details.
21 ;; You should have received a copy of the GNU General Public License
22 ;; along with GNU Emacs; see the file COPYING. If not, write to the
23 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
24 ;; Boston, MA 02111-1307, USA.
28 ;; Key translation maps were originally copied from iso-acc.el.
29 ;; latin-1-prefix: extra special characters added, adapted from the vim
30 ;; digraphs (from J.H.M.Dassen <jdassen@wi.leidenuniv.nl>)
31 ;; by R.F. Smith <rsmith@xs4all.nl>
34 ;; Author: W
\e,B3
\e(Bodek Bzyl <matwb@univ.gda.pl>
35 ;; Maintainer: W
\e,B3
\e(Bodek Bzyl <matwb@univ.gda.pl>
37 ;; latin-[89]-prefix: Dave Love <fx@gnu.org>
39 ;; You might make extra input sequences on the basis of the X
40 ;; locale/*/Compose files (which have both prefix and postfix
41 ;; sequences), but bear in mind that sequences which are logical in
42 ;; that context may not be sensible when they're not signalled with
43 ;; the Compose key. An example is a double space for NBSP.
50 "latin-1-prefix" "Latin-1" "1>" t
51 "Latin-1 characters input method with prefix modifiers
53 effect | prefix | examples
54 ------------+--------+----------
55 acute | ' | 'a ->
\e,Aa
\e(B, '' ->
\e,A4
\e(B
56 grave | ` | `a ->
\e,A`
\e(B
57 circumflex | ^ | ^a ->
\e,Ab
\e(B
58 diaeresis | \" | \"a ->
\e,Ad
\e(B \"\" ->
\e,A(
\e(B
59 tilde | ~ | ~a ->
\e,Ac
\e(B
60 cedilla | ~ | ~c ->
\e,Ag
\e(B
61 misc | \" ~ / | \"s ->
\e,A_
\e(B ~d ->
\e,Ap
\e(B ~t ->
\e,A~
\e(B /a ->
\e,Ae
\e(B /e ->
\e,Af
\e(B /o ->
\e,Ax
\e(B
62 symbol | ~ | ~> ->
\e,A;
\e(B ~< ->
\e,A+
\e(B ~! ->
\e,A!
\e(B ~? ->
\e,A?
\e(B ~~ ->
\e,A8
\e(B
63 | ~ | ~s ->
\e,A'
\e(B ~x ->
\e,A$
\e(B ~. ->
\e,A7
\e(B ~$ ->
\e,A#
\e(B ~u ->
\e,A5
\e(B
64 | ~ | ~p ->
\e,A6
\e(B ~- ->
\e,A-
\e(B ~= ->
\e,A/
\e(B ~| ->
\e,A&
\e(B
65 symbol | _ / | _o ->
\e,A:
\e(B _a ->
\e,A*
\e(B // ->
\e,A0
\e(B /\\ ->
\e,AW
\e(B _y ->
\e,A%
\e(B
66 | _ / | _: ->
\e,Aw
\e(B /c ->
\e,A"
\e(B /2 ->
\e,A=
\e(B /4 ->
\e,A<
\e(B /3 ->
\e,A>
\e(B
67 | _ / | /= ->
\e,A,
\e(B
68 symbol | ^ | ^r ->
\e,A.
\e(B ^c ->
\e,A)
\e(B ^1 ->
\e,A9
\e(B ^2 ->
\e,A2
\e(B ^3 ->
\e,A3
\e(B
69 " nil t nil nil nil nil nil nil nil nil t)
153 ;; Symbols added by Roland Smith <rsmith@xs4all.nl>
180 (quail-define-package
181 "catalan-prefix" "Latin-1" "CA>" t
182 "Catalan and Spanish input method with prefix modifiers
184 effect | prefix | examples
185 ------------+--------+----------
186 acute | ' | 'a ->
\e,Aa
\e(B '' ->
\e,A4
\e(B
187 grave | ` | `a ->
\e,A`
\e(B
188 diaeresis | \" | \"i ->
\e,Ao
\e(B \"\" ->
\e,A(
\e(B
189 tilde | ~ | ~n ->
\e,Aq
\e(B
190 cedilla | ~ | ~c ->
\e,Ag
\e(B
191 symbol | ~ | ~> ->
\e,A;
\e(B ~< ->
\e,A+
\e(B ~! ->
\e,A!
\e(B ~? ->
\e,A?
\e(B
192 " nil t nil nil nil nil nil nil nil nil t)
229 (quail-define-package
230 "esperanto-prefix" "Latin-3" "EO>" t
231 "Esperanto input method with prefix modifiers
232 Key translation rules are:
233 ^H -> ?
\e,C&
\e(B ^J -> ?
\e,C,
\e(B ^h -> ?
\e,C6
\e(B ^j -> ?
\e,C<
\e(B ^C -> ?
\e,CF
\e(B ^G -> ?
\e,CX
\e(B,
234 ^S -> ?
\e,C^
\e(B ^c -> ?
\e,Cf
\e(B ^g -> ?
\e,Cx
\e(B ^s -> ?
\e,C~
\e(B ~U -> ?
\e,C]
\e(B ~u -> ?
\e,C}
\e(B
235 " nil t nil nil nil nil nil nil nil nil t)
255 (quail-define-package
256 "french-prefix" "French" "FR>" t
257 "French (Fran
\e,Ag
\e(Bais) input method with prefix modifiers
259 effect | prefix | examples
260 ------------+--------+----------
261 acute | ' | 'e ->
\e,Ai
\e(B
262 grave | ` | `a ->
\e,A`
\e(B
263 circumflex | ^ | ^a ->
\e,Ab
\e(B
264 diaeresis | \" | \"i ->
\e,Ao
\e(B
265 cedilla | ~ or , | ~c ->
\e,Ag
\e(B ,c ->
\e,Ag
\e(B
266 symbol | ~ | ~> ->
\e,A;
\e(B ~< ->
\e,A+
\e(B
267 " nil t nil nil nil nil nil nil nil nil t)
308 (quail-define-package
309 "romanian-prefix" "Romanian" "RO>" t
310 "Romanian (rom
\e,Bb
\e(Bne
\e,B:
\e(Bte) input method with prefix modifiers
312 effect | prefix | examples
313 ------------+--------+------------------
314 tilde | ~ | ~a ->
\e,Bc
\e(B
315 circumflex | ^ | ^a ->
\e,Bb
\e(B, ^i ->
\e,Bn
\e(B
316 cedilla | , | ,s ->
\e,B:
\e(B, ,t ->
\e,B~
\e(B
320 " nil t nil nil nil nil nil nil nil nil t)
323 ("~A" ?
\e,BC
\e(B) ("~a" ?
\e,Bc
\e(B)
324 ("^A" ?
\e,BB
\e(B) ("^a" ?
\e,Bb
\e(B)
325 ("^I" ?
\e,BN
\e(B) ("^i" ?
\e,Bn
\e(B)
326 (",S" ?
\e,B*
\e(B) (",s" ?
\e,B:
\e(B)
327 (",T" ?
\e,B^
\e(B) (",t" ?
\e,B~
\e(B)
328 ("^^" ?^) ("~~" ?~) (",," ?,))
330 (quail-define-package
331 "romanian-alt-prefix" "Romanian" "RO>" t
332 "Alternative Romanian (rom
\e,Bb
\e(Bne
\e,B:
\e(Bte) input method with prefix modifiers
334 effect | prefix | examples
335 ------------+--------+------------------
336 tilde | \" | \"a ->
\e,Bb
\e(B
337 circumflex | ' | 'a ->
\e,Bb
\e(B, 'i ->
\e,Bn
\e(B
338 cedilla | ' | 's ->
\e,B:
\e(B, 't ->
\e,B~
\e(B
341 " nil t nil nil nil nil nil nil nil nil t)
344 ("'A" ?
\e,BC
\e(B) ("'a" ?
\e,Bc
\e(B)
345 ("\"A" ?
\e,BB
\e(B) ("\"a" ?
\e,Bb
\e(B)
346 ("'I" ?
\e,BN
\e(B) ("'i" ?
\e,Bn
\e(B)
347 ("'S" ?
\e,B*
\e(B) ("'s" ?
\e,B:
\e(B)
348 ("'T" ?
\e,B^
\e(B) ("'t" ?
\e,B~
\e(B)
349 ("''" ?') ("\"\"" ?\"))
351 (quail-define-package
352 "german-prefix" "German" "DE>" t
353 "German (Deutsch) input method with prefix modifiers
354 Key translation rules are:
355 \"A ->
\e,AD
\e(B -> \"O ->
\e,AV
\e(B \"U ->
\e,A\
\e(B \"s ->
\e,A_
\e(B
356 " nil t nil nil nil nil nil nil nil nil t)
369 (quail-define-package
370 "irish-prefix" "Latin-1" "GA>" t
371 "Irish input method with prefix modifiers
372 Key translation rules are:
373 'A ->
\e,AA
\e(B 'E ->
\e,AI
\e(B 'I ->
\e,AM
\e(B 'O ->
\e,AS
\e(B 'U ->
\e,AZ
\e(B
374 " nil t nil nil nil nil nil nil nil nil t)
390 (quail-define-package
391 "portuguese-prefix" "Latin-1" "PT>" t
392 "Portuguese input method with prefix modifiers
394 effect | prefix | examples
395 ------------+--------+----------
396 acute | ' | 'a ->
\e,Aa
\e(B '' ->
\e,A4
\e(B
397 grave | ` | `a ->
\e,A`
\e(B
398 circumflex | ^ | ^a ->
\e,Ab
\e(B
399 diaeresis | \" | \"u ->
\e,A|
\e(B
400 tilde | ~ | ~a ->
\e,Ac
\e(B
401 cedilla | ' or , | 'c ->
\e,Ag
\e(B ,c ->
\e,Ag
\e(B
402 " nil t nil nil nil nil nil nil nil nil t)
441 (quail-define-package
442 "spanish-prefix" "Spanish" "ES>" t
443 "Spanish (Espa
\e,Aq
\e(Bol) input method with prefix modifiers
445 effect | prefix | examples
446 ------------+--------+----------
447 acute | ' | 'a ->
\e,Aa
\e(B
448 diaeresis | \" | \"u ->
\e,A|
\e(B
449 tilde | ~ | ~n ->
\e,Aq
\e(B
450 symbol | ~ | ~> ->
\e,A;
\e(B ~< ->
\e,A+
\e(B ~! ->
\e,A!
\e(B ~? ->
\e,A?
\e(B
451 " nil t nil nil nil nil nil nil nil nil t)
477 (quail-define-package
478 "latin-2-prefix" "Latin-2" "2>" t
479 "Latin-2 characters input method with prefix modifiers
481 effect | prefix | examples
482 ------------+--------+----------
483 acute | ' | 'a ->
\e,Ba
\e(B '' -> ?
\e,B4
\e(B
484 circumflex | ^ | ^a ->
\e,Bb
\e(B
485 diaeresis | \" | \"a ->
\e,Bd
\e(B \"\" ->
\e,B(
\e(B
486 breve | ~ | ~a ->
\e,Bc
\e(B
487 caron | ~ | ~c ->
\e,Bh
\e(B
488 cedilla | ` | `c ->
\e,Bg
\e(B `e -> ?
\e,Bj
\e(B
489 misc | ' ` ~ | 'd ->
\e,Bp
\e(B `l ->
\e,B3
\e(B `z ->
\e,B?
\e(B ~o ->
\e,Bu
\e(B ~u ->
\e,B{
\e(B
490 symbol | ~ | `. ->
\e,B
\7f\e(B ~~ ->
\e,B"
\e(B ~. -> ?
\e,B8
\e(B
491 " nil t nil nil nil nil nil nil nil nil t)
588 (quail-define-package
589 "latin-3-prefix" "Latin-3" "3>" t
590 "Latin-3 characters input method with prefix modifiers
592 effect | prefix | examples
593 ------------+--------+----------
594 acute | ' | 'a ->
\e,Ca
\e(B '' -> ?
\e,C4
\e(B
595 grave | ` | `a ->
\e,C`
\e(B
596 circumflex | ^ | ^a ->
\e,Cb
\e(B
597 diaeresis | \" | \"a ->
\e,Cd
\e(B \"\" ->
\e,C(
\e(B
598 cedilla | ~ | ~c ->
\e,Cg
\e(B ~s ->
\e,C:
\e(B ~~ ->
\e,C8
\e(B
599 dot above | / . | /g ->
\e,Cu
\e(B .o ->
\e,Cu
\e(B
600 misc | \" ~ / | \"s ->
\e,C_
\e(B ~g ->
\e,C;
\e(B ~u ->
\e,C}
\e(B /h ->
\e,C1
\e(B /i ->
\e,C9
\e(B
601 symbol | ~ | ~` ->
\e,C"
\e(B /# ->
\e,C#
\e(B /$ ->
\e,C$
\e(B // ->
\e,C0
\e(B
602 " nil t nil nil nil nil nil nil nil nil t)
702 (quail-define-package
703 "polish-slash" "Polish" "PL>" nil
704 "Polish diacritics and slash character are input as `/[acelnosxzACELNOSXZ/]'.
705 For example, the character named `aogonek' is obtained by `/a'."
706 nil t t t nil nil nil nil nil nil t)
729 (quail-define-package
730 "latin-9-prefix" "Latin-9" "0>" t
731 "Latin-9 characters input method with prefix modifiers
733 effect | prefix | examples
734 ------------+--------+----------
735 acute | ' | 'a ->
\e,ba
\e(B
736 grave | ` | `a ->
\e,b`
\e(B
737 circumflex | ^ | ^a ->
\e,bb
\e(B
738 diaeresis | \" | \"a ->
\e,bd
\e(B, \"Y ->
\e,b>
\e(B
739 tilde | ~ | ~a ->
\e,bc
\e(B
740 caron | ~ | ~z ->
\e,b8
\e(B
741 cedilla | ~ | ~c ->
\e,bg
\e(B
742 misc | \" ~ / | \"s ->
\e,b_
\e(B ~d ->
\e,bp
\e(B ~t ->
\e,b~
\e(B /a ->
\e,be
\e(B /e ->
\e,bf
\e(B /o ->
\e,bx
\e(B
743 | \" ~ / | /o ->
\e,b=
\e(B
744 symbol | ~ | ~> ->
\e,b;
\e(B ~< ->
\e,b+
\e(B ~! ->
\e,b!
\e(B ~? ->
\e,b?
\e(B ~~ ->
\e,b8
\e(B
745 | ~ | ~s ->
\e,b'
\e(B ~e ->
\e,b$
\e(B ~. ->
\e,b7
\e(B ~$ ->
\e,b#
\e(B ~u ->
\e,b5
\e(B
746 | ~ | ~- ->
\e,b-
\e(B ~= ->
\e,b/
\e(B
747 symbol | _ / | _o ->
\e,b:
\e(B _a ->
\e,b*
\e(B // ->
\e,b0
\e(B /\\ ->
\e,bW
\e(B _y ->
\e,b%
\e(B
748 | _ / | _: ->
\e,bw
\e(B /c ->
\e,b"
\e(B ~p ->
\e,b6
\e(B
749 | _ / | /= ->
\e,b,
\e(B
750 symbol | ^ | ^r ->
\e,b.
\e(B ^c ->
\e,b)
\e(B ^1 ->
\e,b9
\e(B ^2 ->
\e,b2
\e(B ^3 ->
\e,b3
\e(B _a ->
\e,b*
\e(B
751 " nil t nil nil nil nil nil nil nil nil t)
842 ("/o" ?
\e,b=
\e(B) ; clash with
\e,bx
\e(B, but
\e,bf
\e(B uses /
847 ;; Is this the best option for Euro entry?
861 ;; Latin-8 was done by an Englishman -- Johnny Celt should take a
864 (quail-define-package
865 "latin-8-prefix" "Latin-8" "8>" t
866 "Latin-8 characters input method with prefix modifiers
868 effect | prefix | examples
869 ------------+--------+----------
870 acute | ' | 'a ->
\e,_a
\e(B
871 grave | ` | `a ->
\e,_`
\e(B
872 circumflex | ^ | ^w ->
\e,_p
\e(B
873 diaeresis | \" | \"a ->
\e,_d
\e(B
874 dot above | . | .b ->
\e,_"
\e(B
875 tilde | ~ | ~a ->
\e,_c
\e(B
876 cedilla | ~ | ~c ->
\e,_g
\e(B
877 misc | \" ~ / | \"s ->
\e,__
\e(B /a ->
\e,_e
\e(B /e ->
\e,_f
\e(B /o ->
\e,_x
\e(B
878 | ~ | ~s ->
\e,_'
\e(B ~$ ->
\e,_#
\e(B ~p ->
\e,_6
\e(B
879 symbol | ^ | ^r ->
\e,_.
\e(B ^c ->
\e,_)
\e(B
880 " nil t nil nil nil nil nil nil nil nil t)
882 ;; Basically following Latin-1, plus dottiness from Latin-3.
987 (quail-define-package
988 "latin-prefix" "Latin" "L>" t
989 "Latin characters input method with prefix modifiers.
990 This is the union of various input methods originally made for input
991 of characters from a single Latin-N charset.
993 effect | prefix | examples
994 ------------+--------+----------
995 acute | ' | 'a ->
\e,Aa
\e(B, '' ->
\e,A4
\e(B
996 grave | ` | `a ->
\e,A`
\e(B
997 circumflex | ^ | ^a ->
\e,Ab
\e(B
998 diaeresis | \" | \"a ->
\e,Ad
\e(B \"\" ->
\e,A(
\e(B
999 tilde | ~ | ~a ->
\e,Ac
\e(B
1000 cedilla | ~ | ~c ->
\e,Ag
\e(B
1001 breve | ~ | ~a ->
\e$,1 #
\e(B
1002 caron | ~ | ~c ->
\e$,1 -
\e(B
1003 dot above | ~ / . | ~o ->
\e$,1 A
\e(B /o ->
\e$,1 A
\e(B .o ->
\e$,1 A
\e(B
1004 misc | \" ~ / | \"s ->
\e,A_
\e(B ~d ->
\e,Ap
\e(B ~t ->
\e,A~
\e(B /a ->
\e,Ae
\e(B /e ->
\e,Af
\e(B /o ->
\e,Ax
\e(B
1005 symbol | ~ | ~> ->
\e,A;
\e(B ~< ->
\e,A+
\e(B ~! ->
\e,A!
\e(B ~? ->
\e,A?
\e(B ~~ ->
\e,A8
\e(B
1006 symbol | _ / | _o ->
\e,A:
\e(B _a ->
\e,A*
\e(B // ->
\e,A0
\e(B /\\ ->
\e,AW
\e(B _y ->
\e,A%
\e(B
1007 symbol | ^ | ^r ->
\e,A.
\e(B ^c ->
\e,A)
\e(B ^1 ->
\e,A9
\e(B ^2 ->
\e,A2
\e(B ^3 ->
\e,A3
\e(B
1008 " nil t nil nil nil nil nil nil nil nil t)
1083 ("\"W" ?
\e$,1nd
\e(B)
1084 ("\"Y" ?
\e$,1!8
\e(B)
1092 ("\"w" ?
\e$,1ne
\e(B)
1093 ("\"y" ?
\e,A
\7f\e(B)
1179 ("~s" ?
\e$,1
\7f\e(B)
1190 ;;; arch-tag: 83017837-6b84-4366-b183-e0577e3ed838
1191 ;;; latin-pre.el ends here