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 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>
44 "latin-1-prefix" "Latin-1" "1>" t
45 "Latin-1 characters input method with prefix modifiers
47 effect | prefix | examples
48 ------------+--------+----------
49 acute | ' | 'a ->
\e,Aa
\e(B, '' ->
\e,A4
\e(B
50 grave | ` | `a ->
\e,A`
\e(B
51 circumflex | ^ | ^a ->
\e,Ab
\e(B
52 diaeresis | \" | \"a ->
\e,Ad
\e(B \"\" ->
\e,A(
\e(B
53 tilde | ~ | ~a ->
\e,Ac
\e(B
54 cedilla | ~ | ~c ->
\e,Ag
\e(B
55 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
56 symbol | ~ | ~> ->
\e,A;
\e(B ~< ->
\e,A+
\e(B ~! ->
\e,A!
\e(B ~? ->
\e,A?
\e(B ~~ ->
\e,A8
\e(B
57 | ~ | ~s ->
\e,A'
\e(B ~x ->
\e,A$
\e(B ~. ->
\e,A7
\e(B ~$ ->
\e,A#
\e(B ~u ->
\e,A5
\e(B
58 | ~ | ~p ->
\e,A6
\e(B ~- ->
\e,A-
\e(B ~= ->
\e,A/
\e(B ~| ->
\e,A&
\e(B
59 symbol | _ / | _o ->
\e,A:
\e(B _a ->
\e,A*
\e(B // ->
\e,A0
\e(B /\\ ->
\e,AW
\e(B _y ->
\e,A%
\e(B
60 | _ / | _: ->
\e,Aw
\e(B /c ->
\e,A"
\e(B /2 ->
\e,A=
\e(B /4 ->
\e,A<
\e(B /3 ->
\e,A>
\e(B
61 | _ / | /= =>
\e,A,
\e(B
62 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
63 " nil t nil nil nil nil nil nil nil nil t)
65 ;; Fixme: should we have non-break space somehow? If so, how?
147 ;; Symbols added by Roland Smith <rsmith@xs4all.nl>
173 (quail-define-package
174 "catalan-prefix" "Latin-1" "CA>" t
175 "Catalan and Spanish input method with prefix modifiers
177 effect | prefix | examples
178 ------------+--------+----------
179 acute | ' | 'a ->
\e,Aa
\e(B '' ->
\e,A4
\e(B
180 grave | ` | `a ->
\e,A`
\e(B
181 diaeresis | \" | \"i ->
\e,Ao
\e(B \"\" ->
\e,A(
\e(B
182 tilde | ~ | ~n ->
\e,Aq
\e(B
183 cedilla | ~ | ~c ->
\e,Ag
\e(B
184 symbol | ~ | ~> ->
\e,A;
\e(B ~< ->
\e,A+
\e(B ~! ->
\e,A!
\e(B ~? ->
\e,A?
\e(B
185 " nil t nil nil nil nil nil nil nil nil t)
222 (quail-define-package
223 "esperanto-prefix" "Latin-3" "EO>" t
224 "Esperanto input method with prefix modifiers
225 Key translation rules are:
226 ^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,
227 ^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
228 " nil t nil nil nil nil nil nil nil nil t)
248 (quail-define-package
249 "french-prefix" "Latin-1" "FR>" t
250 "French (Fran
\e,Ag
\e(Bais) input method with prefix modifiers
252 effect | prefix | examples
253 ------------+--------+----------
254 acute | ' | 'e ->
\e,Ai
\e(B
255 grave | ` | `a ->
\e,A`
\e(B
256 circumflex | ^ | ^a ->
\e,Ab
\e(B
257 diaeresis | \" | \"i ->
\e,Ao
\e(B
258 cedilla | ~ or , | ~c ->
\e,Ag
\e(B ,c ->
\e,Ag
\e(B
259 symbol | ~ | ~> ->
\e,A;
\e(B ~< ->
\e,A+
\e(B
260 " nil t nil nil nil nil nil nil nil nil t)
301 (quail-define-package
302 "romanian-prefix" "Romanian" "RO>" t
303 "Romanian (rom
\e,Bb
\e(Bne
\e,B:
\e(Bte) input method with prefix modifiers
305 effect | prefix | examples
306 ------------+--------+------------------
307 tilde | ~ | ~a ->
\e,Bc
\e(B
308 circumflex | ^ | ^a ->
\e,Bb
\e(B, ^i ->
\e,Bn
\e(B
309 cedilla | , | ,s ->
\e,B:
\e(B, ,t ->
\e,B~
\e(B
313 " nil t nil nil nil nil nil nil nil nil t)
316 ("~A" ?
\e,BC
\e(B) ("~a" ?
\e,Bc
\e(B)
317 ("^A" ?
\e,BB
\e(B) ("^a" ?
\e,Bb
\e(B)
318 ("^I" ?
\e,BN
\e(B) ("^i" ?
\e,Bn
\e(B)
319 (",S" ?
\e,B*
\e(B) (",s" ?
\e,B:
\e(B)
320 (",T" ?
\e,B^
\e(B) (",t" ?
\e,B~
\e(B)
321 ("^^" ?^) ("~~" ?~) (",," ?,))
323 (quail-define-package
324 "romanian-alt-prefix" "Romanian" "RO>" t
325 "Alternative Romanian (rom
\e,Bb
\e(Bne
\e,B:
\e(Bte) input method with prefix modifiers
327 effect | prefix | examples
328 ------------+--------+------------------
329 tilde | \" | \"a ->
\e,Bb
\e(B
330 circumflex | ' | 'a ->
\e,Bb
\e(B, 'i ->
\e,Bn
\e(B
331 cedilla | ' | 's ->
\e,B:
\e(B, 't ->
\e,B~
\e(B
334 " nil t nil nil nil nil nil nil nil nil t)
337 ("'A" ?
\e,BC
\e(B) ("'a" ?
\e,Bc
\e(B)
338 ("\"A" ?
\e,BB
\e(B) ("\"a" ?
\e,Bb
\e(B)
339 ("'I" ?
\e,BN
\e(B) ("'i" ?
\e,Bn
\e(B)
340 ("'S" ?
\e,B*
\e(B) ("'s" ?
\e,B:
\e(B)
341 ("'T" ?
\e,B^
\e(B) ("'t" ?
\e,B~
\e(B)
342 ("''" ?') ("\"\"" ?\"))
344 (quail-define-package
345 "german-prefix" "Latin-1" "DE>" t
346 "German (Deutsch) input method with prefix modifiers
347 Key translation rules are:
348 \"A ->
\e,AD
\e(B -> \"O ->
\e,AV
\e(B \"U ->
\e,A\
\e(B \"s -> ?
\e,A_
\e(B
349 " nil t nil nil nil nil nil nil nil nil t)
362 (quail-define-package
363 "irish-prefix" "Latin-1" "GA>" t
364 "Irish input method with prefix modifiers
365 Key translation rules are:
366 '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
367 " nil t nil nil nil nil nil nil nil nil t)
383 (quail-define-package
384 "portuguese-prefix" "Latin-1" "PT>" t
385 "Portuguese input method with prefix modifiers
387 effect | prefix | examples
388 ------------+--------+----------
389 acute | ' | 'a ->
\e,Aa
\e(B '' ->
\e,A4
\e(B
390 grave | ` | `a ->
\e,A`
\e(B
391 circumflex | ^ | ^a ->
\e,Ab
\e(B
392 diaeresis | \" | \"u ->
\e,A|
\e(B
393 tilde | ~ | ~a ->
\e,Ac
\e(B
394 cedilla | ' or , | 'c ->
\e,Ag
\e(B ,c ->
\e,Ag
\e(B
395 " nil t nil nil nil nil nil nil nil nil t)
434 (quail-define-package
435 "spanish-prefix" "Latin-1" "ES>" t
436 "Spanish (Espa
\e,Aq
\e(Bol) input method with prefix modifiers
438 effect | prefix | examples
439 ------------+--------+----------
440 acute | ' | 'a ->
\e,Aa
\e(B
441 diaeresis | \" | \"u ->
\e,A|
\e(B
442 tilde | ~ | ~n ->
\e,Aq
\e(B
443 symbol | ~ | ~> ->
\e,A;
\e(B ~< ->
\e,A+
\e(B ~! ->
\e,A!
\e(B ~? ->
\e,A?
\e(B
444 " nil t nil nil nil nil nil nil nil nil t)
470 (quail-define-package
471 "latin-2-prefix" "Latin-2" "2>" t
472 "Latin-2 characters input method with prefix modifiers
474 effect | prefix | examples
475 ------------+--------+----------
476 acute | ' | 'a ->
\e,Ba
\e(B '' -> ?
\e,B4
\e(B
477 circumflex | ^ | ^a ->
\e,Bb
\e(B
478 diaeresis | \" | \"a ->
\e,Bd
\e(B \"\" ->
\e,B(
\e(B
479 breve | ~ | ~a ->
\e,Bc
\e(B
480 caron | ~ | ~c ->
\e,Bh
\e(B
481 cedilla | ` | `c ->
\e,Bg
\e(B `e -> ?
\e,Bj
\e(B
482 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
483 symbol | ~ | `. ->
\e,B
\7f\e(B ~~ ->
\e,B"
\e(B ~. -> ?
\e,B8
\e(B
484 " nil t nil nil nil nil nil nil nil nil t)
579 (quail-define-package
580 "latin-3-prefix" "Latin-3" "3>" t
581 "Latin-3 characters input method with prefix modifiers
583 effect | prefix | examples
584 ------------+--------+----------
585 acute | ' | 'a ->
\e,Ca
\e(B '' -> ?
\e,C4
\e(B
586 grave | ` | `a ->
\e,C`
\e(B
587 circumflex | ^ | ^a ->
\e,Cb
\e(B
588 diaeresis | \" | \"a ->
\e,Cd
\e(B \"\" ->
\e,C(
\e(B
589 cedilla | ~ | ~c ->
\e,Cg
\e(B ~s ->
\e,C:
\e(B ~~ ->
\e,C8
\e(B
590 dot above | ~ / . | ~o ->
\e,Cu
\e(B /o ->
\e,Cu
\e(B .o ->
\e,Cu
\e(B
591 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
592 symbol | ~ | ~` ->
\e,C"
\e(B /# ->
\e,C#
\e(B /$ ->
\e,C$
\e(B // ->
\e,C0
\e(B
593 " nil t nil nil nil nil nil nil nil nil t)
701 (quail-define-package
702 "polish-slash" "Polish" "PL>" nil
703 "Polish diacritics in Latin-2 encoding are input as `/[acelnosxzACELNOSXZ]'.
704 For example, the character named `aogonek' is obtained by `/a'."
705 nil t t t nil nil nil nil nil nil t)
727 (quail-define-package
728 "latin-9-prefix" "Latin-9" "0>" t
729 "Latin-9 characters input method with prefix modifiers
731 effect | prefix | examples
732 ------------+--------+----------
733 acute | ' | 'a ->
\e,ba
\e(B
734 grave | ` | `a ->
\e,b`
\e(B
735 circumflex | ^ | ^a ->
\e,bb
\e(B
736 diaeresis | \" | \"a ->
\e,bd
\e(B, \"Y ->
\e,b>
\e(B
737 tilde | ~ | ~a ->
\e,bc
\e(B
738 caron | ~ | ~z ->
\e,b8
\e(B
739 cedilla | ~ | ~c ->
\e,bg
\e(B
740 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
741 | \" ~ / | /o ->
\e,b=
\e(B
742 symbol | ~ | ~> ->
\e,b;
\e(B ~< ->
\e,b+
\e(B ~! ->
\e,b!
\e(B ~? ->
\e,b?
\e(B ~~ ->
\e,b8
\e(B
743 | ~ | ~s ->
\e,b'
\e(B ~e ->
\e,b$
\e(B ~. ->
\e,b7
\e(B ~$ ->
\e,b#
\e(B ~u ->
\e,b5
\e(B
744 | ~ | ~- ->
\e,b-
\e(B ~= ->
\e,b/
\e(B
745 symbol | _ / | _o ->
\e,b:
\e(B _a ->
\e,b*
\e(B // ->
\e,b0
\e(B /\\ ->
\e,bW
\e(B _y ->
\e,b%
\e(B
746 | _ / | _: ->
\e,bw
\e(B /c ->
\e,b"
\e(B ~p ->
\e,b6
\e(B
747 | _ / | /= ->
\e,b,
\e(B
748 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
749 " nil t nil nil nil nil nil nil nil nil t)
838 ("/o" ?
\e,b=
\e(B) ; clash with
\e,bx
\e(B, but
\e,bf
\e(B uses /
843 ;; Is this the best option for Euro entry?
857 ;; Latin-8 was done by an Englishman -- Johnny Celt should take a
860 (quail-define-package
861 "latin-8-prefix" "Latin-8" "8>" t
862 "Latin-8 characters input method with prefix modifiers
864 effect | prefix | examples
865 ------------+--------+----------
866 acute | ' | 'a ->
\e,_a
\e(B
867 grave | ` | `a ->
\e,_`
\e(B
868 circumflex | ^ | ^w ->
\e,_p
\e(B
869 diaeresis | \" | \"a ->
\e,_d
\e(B
870 dot above | . | .b ->
\e,_"
\e(B
871 tilde | ~ | ~a ->
\e,_c
\e(B
872 cedilla | ~ | ~c ->
\e,_g
\e(B
873 misc | \" ~ / | \"s ->
\e,__
\e(B /a ->
\e,_e
\e(B /e ->
\e,_f
\e(B /o ->
\e,_x
\e(B
874 | ~ | ~s ->
\e,_'
\e(B ~$ ->
\e,_#
\e(B ~p ->
\e,_6
\e(B
875 symbol | ^ | ^r ->
\e,_.
\e(B ^c ->
\e,_)
\e(B
876 " nil t nil nil nil nil nil nil nil nil t)
878 ;; Basically following Latin-1 plus dottiness from Latin-3.
983 ;;; latin-pre.el ends here