]> code.delx.au - gnu-emacs/blobdiff - leim/quail/latin-pre.el
Make `make-auto-save-file-name' a magic operation.
[gnu-emacs] / leim / quail / latin-pre.el
index 54a6189b6d4912c5eb99aca7dc241dd31c55e021..0321c953f1c1dc70b8d5df54c8c7254410fb3767 100644 (file)
@@ -1,7 +1,8 @@
-;;; latin-pre.el -- Quail packages for inputting various European characters.
+;;; latin-pre.el --- Quail packages for inputting various European characters  -*-coding: iso-2022-7bit;-*-
 
 ;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
 ;; Licensed to the Free Software Foundation.
+;; Copyright (C) 2000, 2002 Free Software Foundation, Inc.
 
 ;; Keywords: mule, multilingual, latin, input method
 
 
 ;; You should have received a copy of the GNU General Public License
 ;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
 
 ;;; Commentary:
 
-;; All key translation maps are copied from iso-acc.el.
+;; Key translation maps were originally copied from iso-acc.el.
+;; latin-1-prefix: extra special characters added, adapted from the vim
+;;                 digraphs (from J.H.M.Dassen <jdassen@wi.leidenuniv.nl>)
+;;                 by R.F. Smith <rsmith@xs4all.nl>
+;;
+;; polish-slash:
+;; Author: W\e,B3\e(Bodek Bzyl <matwb@univ.gda.pl>
+;; Maintainer: W\e,B3\e(Bodek Bzyl <matwb@univ.gda.pl>
+;;
+;; latin-[89]-prefix: Dave Love <fx@gnu.org>
+
+;; You might make extra input sequences on the basis of the X
+;; locale/*/Compose files (which have both prefix and postfix
+;; sequences), but bear in mind that sequences which are logical in
+;; that context may not be sensible when they're not signalled with
+;; the Compose key.  An example is a double space for NBSP.
 
 ;;; Code:
 
     acute    |   '    | 'a -> \e,Aa\e(B, '' -> \e,A4\e(B
     grave    |   `    | `a -> \e,A`\e(B
   circumflex |   ^    | ^a -> \e,Ab\e(B
-  diaeresis  |   \"    | \"a -> \e,Ad\e(B, \"\" -> \e,A(\e(B
+  diaeresis  |   \"    | \"a -> \e,Ad\e(B  \"\" -> \e,A(\e(B
     tilde    |   ~    | ~a -> \e,Ac\e(B
    cedilla   |   ~    | ~c -> \e,Ag\e(B
-    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
-   symbol    |   ~    | ~> -> \e,A;\e(B, ~< -> \e,A+\e(B, ~! -> \e,A!\e(B, ~? -> \e,A?\e(B, ~~ -> \e,A8\e(B
-" nil t)
+    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
+   symbol    |   ~    | ~> -> \e,A;\e(B  ~< -> \e,A+\e(B  ~! -> \e,A!\e(B  ~? -> \e,A?\e(B  ~~ -> \e,A8\e(B
+             |   ~    | ~s -> \e,A'\e(B  ~x -> \e,A$\e(B  ~. -> \e,A7\e(B  ~$ -> \e,A#\e(B  ~u -> \e,A5\e(B
+             |   ~    | ~p -> \e,A6\e(B  ~- -> \e,A-\e(B  ~= -> \e,A/\e(B  ~| -> \e,A&\e(B
+   symbol    |  _ /   | _o -> \e,A:\e(B  _a -> \e,A*\e(B  // -> \e,A0\e(B  /\\ -> \e,AW\e(B  _y -> \e,A%\e(B
+             |  _ /   | _: -> \e,Aw\e(B  /c -> \e,A"\e(B  /2 -> \e,A=\e(B  /4 -> \e,A<\e(B  /3 -> \e,A>\e(B
+             |  _ /   | /= -> \e,A,\e(B
+   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
+" nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
  ("'A" ?\e,AA\e(B)
  ("/e" ?\e,Af\e(B)
  ("/o" ?\e,Ax\e(B)
  ("//" ?\e,A0\e(B)
- ("/ " ? )
+ ("/ " ?/)
+ ("_o" ?\e,A:\e(B)
+ ("_a" ?\e,A*\e(B)
+ ("_ " ?\e,A \e(B)
+;; Symbols added by Roland Smith <rsmith@xs4all.nl>
+ ("_+" ?\e,A1\e(B)
+ ("_y" ?\e,A%\e(B)
+ ("_:" ?\e,Aw\e(B)
+ ("__" ?_)
+ ("/c" ?\e,A"\e(B)
+ ("/\\" ?\e,AW\e(B)
+ ("/2" ?\e,A=\e(B)
+ ("/4" ?\e,A<\e(B)
+ ("/3" ?\e,A>\e(B)
+ ("~s" ?\e,A'\e(B)
+ ("~p" ?\e,A6\e(B)
+ ("~x" ?\e,A$\e(B)
+ ("~." ?\e,A7\e(B)
+ ("~$" ?\e,A#\e(B)
+ ("~u" ?\e,A5\e(B)
+ ("^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)
+ ("~-" ?\e,A-\e(B)
+ ("~|" ?\e,A&\e(B)
+ ("/=" ?\e,A,\e(B)
+ ("~=" ?\e,A/\e(B)
 )
 
 (quail-define-package
 
     effect   | prefix | examples
  ------------+--------+----------
-    acute    |   '    | 'a -> \e,Aa\e(B, '' -> \e,A4\e(B
+    acute    |   '    | 'a -> \e,Aa\e(B   '' -> \e,A4\e(B
     grave    |   `    | `a -> \e,A`\e(B
-  diaeresis  |   \"    | \"i -> \e,Ao\e(B, \"\" -> \e,A(\e(B
+  diaeresis  |   \"    | \"i -> \e,Ao\e(B   \"\" -> \e,A(\e(B
     tilde    |   ~    | ~n -> \e,Aq\e(B
    cedilla   |   ~    | ~c -> \e,Ag\e(B
-   symbol    |   ~    | ~> -> \e,A;\e(B, ~< -> \e,A+\e(B, ~! -> \e,A!\e(B, ~? -> \e,A?\e(B
-" nil t)
+   symbol    |   ~    | ~> -> \e,A;\e(B   ~< -> \e,A+\e(B   ~! -> \e,A!\e(B   ~? -> \e,A?\e(B
+" nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
  ("'A" ?\e,AA\e(B)
 )
 
 (quail-define-package
- "esperanto-prefix" "Latin-1" "EO>" t
+ "esperanto-prefix" "Latin-3" "EO>" t
  "Esperanto input method with prefix modifiers
 Key translation rules are:
- ^H -> ?\e,A&\e(B, ^J -> ?\e,A,\e(B, ^h -> ?\e,A6\e(B, ^j -> ?\e,A<\e(B, ^C -> ?\e,AF\e(B, ^G -> ?\e,AX\e(B,
- ^S -> ?\e,A^\e(B, ^c -> ?\e,Af\e(B, ^g -> ?\e,Ax\e(B, ^s -> ?\e,A~\e(B, ~U -> ?\e,A]\e(B, ~u -> ?\e,A}\e(B
-" nil t)
+ ^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,
+ ^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
+" nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
- ("^H" ?\e,A&\e(B)
- ("^J" ?\e,A,\e(B)
- ("^h" ?\e,A6\e(B)
- ("^j" ?\e,A<\e(B)
- ("^C" ?\e,AF\e(B)
- ("^G" ?\e,AX\e(B)
- ("^S" ?\e,A^\e(B)
- ("^c" ?\e,Af\e(B)
- ("^g" ?\e,Ax\e(B)
- ("^s" ?\e,A~\e(B)
+ ("^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)
+ ("^S" ?\e,C^\e(B)
+ ("^c" ?\e,Cf\e(B)
+ ("^g" ?\e,Cx\e(B)
+ ("^s" ?\e,C~\e(B)
  ("^^" ?^)
  ("^ " ?^)
- ("~U" ?\e,A]\e(B)
- ("~u" ?\e,A}\e(B)
+ ("~U" ?\e,C]\e(B)
+ ("~u" ?\e,C}\e(B)
  ("~ " ?~)
 )
 
 (quail-define-package
- "french-prefix" "Latin-1" "FR>" t
+ "french-prefix" "French" "FR>" t
  "French (Fran\e,Ag\e(Bais) input method with prefix modifiers
 
     effect   | prefix | examples
@@ -211,10 +261,10 @@ Key translation rules are:
     acute    |   '    | 'e -> \e,Ai\e(B
     grave    |   `    | `a -> \e,A`\e(B
   circumflex |   ^    | ^a -> \e,Ab\e(B
-  diaeresis  |   \"   | \"i -> \e,Ao\e(B
-   cedilla   | ~ or , | ~c -> \e,Ag\e(B, ,c -> \e,Ag\e(B
-   symbol    |   ~    | ~> -> \e,A;\e(B, ~< -> \e,A+\e(B
-" nil t)
+  diaeresis  |   \"    | \"i -> \e,Ao\e(B
+   cedilla   | ~ or , | ~c -> \e,Ag\e(B   ,c -> \e,Ag\e(B
+   symbol    |   ~    | ~> -> \e,A;\e(B   ~< -> \e,A+\e(B
+" nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
  ("'E" ?\e,AI\e(B)
@@ -249,18 +299,61 @@ Key translation rules are:
  ("~>" ?\\e,A;\e(B)
  ("~C" ?\e,AG\e(B)
  ("~c" ?\e,Ag\e(B)
- ("~," ?,)
+ ("~ " ?~)
  (",C" ?\e,AG\e(B)
  (",c" ?\e,Ag\e(B)
- (", " ?~)
+ (", " ?,)
 )
 
 (quail-define-package
- "german-prefix" "Latin-1" "DE>" t
+ "romanian-prefix" "Romanian" "RO>" t
+ "Romanian (rom\e,Bb\e(Bne\e,B:\e(Bte) input method with prefix modifiers
+
+    effect   | prefix | examples
+ ------------+--------+------------------
+    tilde    |   ~    | ~a -> \e,Bc\e(B
+  circumflex |   ^    | ^a -> \e,Bb\e(B, ^i -> \e,Bn\e(B
+   cedilla   |   ,    | ,s -> \e,B:\e(B, ,t -> \e,B~\e(B
+   ~         |   ~    | ~~ -> ~
+   ^         |   ^    | ^^ -> ^
+   ,         |   ,    | ,, -> ,
+" nil t nil nil nil nil nil nil nil nil t)
+
+(quail-define-rules
+ ("~A" ?\e,BC\e(B) ("~a" ?\e,Bc\e(B)
+ ("^A" ?\e,BB\e(B) ("^a" ?\e,Bb\e(B)
+ ("^I" ?\e,BN\e(B) ("^i" ?\e,Bn\e(B)
+ (",S" ?\e,B*\e(B) (",s" ?\e,B:\e(B)
+ (",T" ?\e,B^\e(B) (",t" ?\e,B~\e(B)
+ ("^^" ?^) ("~~" ?~) (",," ?,))
+
+(quail-define-package
+ "romanian-alt-prefix" "Romanian" "RO>" t
+ "Alternative Romanian (rom\e,Bb\e(Bne\e,B:\e(Bte) input method with prefix modifiers
+
+    effect   | prefix | examples
+ ------------+--------+------------------
+    tilde    |   \"    | \"a -> \e,Bb\e(B
+  circumflex |   '    | 'a -> \e,Bb\e(B, 'i -> \e,Bn\e(B
+   cedilla   |   '    | 's -> \e,B:\e(B, 't -> \e,B~\e(B
+   '         |   '    | '' -> '
+   \"         |   \"    | \"\" -> \"
+" nil t nil nil nil nil nil nil nil nil t)
+
+(quail-define-rules
+ ("'A" ?\e,BC\e(B) ("'a" ?\e,Bc\e(B)
+ ("\"A" ?\e,BB\e(B) ("\"a" ?\e,Bb\e(B)
+ ("'I" ?\e,BN\e(B) ("'i" ?\e,Bn\e(B)
+ ("'S" ?\e,B*\e(B) ("'s" ?\e,B:\e(B)
+ ("'T" ?\e,B^\e(B) ("'t" ?\e,B~\e(B)
+ ("''" ?') ("\"\"" ?\"))
+
+(quail-define-package
+ "german-prefix" "German" "DE>" t
  "German (Deutsch) input method with prefix modifiers
 Key translation rules are:
- \"A -> \e,AD\e(B -> \"O -> \e,AV\e(B, \"U -> \e,A\\e(B, \"s -> ?\e,A_\e(B
-" nil t)
+ \"A -> \e,AD\e(B ->   \"O -> \e,AV\e(B   \"U -> \e,A\\e(B   \"s -> \e,A_\e(B
+" nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
  ("\"A" ?\e,AD\e(B)
@@ -277,8 +370,8 @@ Key translation rules are:
  "irish-prefix" "Latin-1" "GA>" t
  "Irish input method with prefix modifiers
 Key translation rules are:
- '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
-" nil t)
+ '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
+" nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
  ("'A" ?\e,AA\e(B)
@@ -300,13 +393,13 @@ Key translation rules are:
 
     effect   | prefix | examples
  ------------+--------+----------
-    acute    |   '    | 'a -> \e,Aa\e(B, '' -> \e,A4\e(B
+    acute    |   '    | 'a -> \e,Aa\e(B   '' -> \e,A4\e(B
     grave    |   `    | `a -> \e,A`\e(B
   circumflex |   ^    | ^a -> \e,Ab\e(B
   diaeresis  |   \"    | \"u -> \e,A|\e(B
     tilde    |   ~    | ~a -> \e,Ac\e(B
-   cedilla   | ' or , | 'c -> \e,Ag\e(B, ,c -> \e,Ag\e(B
-" nil t)
+   cedilla   | ' or , | 'c -> \e,Ag\e(B   ,c -> \e,Ag\e(B
+" nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
  ("'A" ?\e,AA\e(B)
@@ -346,7 +439,7 @@ Key translation rules are:
 )
 
 (quail-define-package
- "spanish-prefix" "Latin-1" "ES>" t
+ "spanish-prefix" "Spanish" "ES>" t
  "Spanish (Espa\e,Aq\e(Bol) input method with prefix modifiers
 
     effect   | prefix | examples
@@ -354,8 +447,8 @@ Key translation rules are:
     acute    |   '    | 'a -> \e,Aa\e(B
   diaeresis  |   \"    | \"u -> \e,A|\e(B
     tilde    |   ~    | ~n -> \e,Aq\e(B
-   symbol    |   ~    | ~> -> \e,A;\e(B, ~< -> \e,A+\e(B, ~! -> \e,A!\e(B, ~? -> \e,A?\e(B
-" nil t)
+   symbol    |   ~    | ~> -> \e,A;\e(B   ~< -> \e,A+\e(B   ~! -> \e,A!\e(B   ~? -> \e,A?\e(B
+" nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
  ("'A" ?\e,AA\e(B)
@@ -387,15 +480,15 @@ Key translation rules are:
 
     effect   | prefix | examples
  ------------+--------+----------
-    acute    |   '    | 'a -> \e,Ba\e(B, '' -> ?\e,B4\e(B
+    acute    |   '    | 'a -> \e,Ba\e(B   '' -> ?\e,B4\e(B
   circumflex |   ^    | ^a -> \e,Bb\e(B
-  diaeresis  |   \"    | \"a -> \e,Bd\e(B, \"\" -> \e,B(\e(B
+  diaeresis  |   \"    | \"a -> \e,Bd\e(B   \"\" -> \e,B(\e(B
     breve    |   ~    | ~a -> \e,Bc\e(B
     caron    |   ~    | ~c -> \e,Bh\e(B
-   cedilla   |   `    | `c -> \e,Bg\e(B, `e -> ?\e,Bj\e(B
-    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
-   symbol    |   ~    | `. -> \e,B\7f\e(B, ~~ -> \e,B"\e(B, ~. -> ?\e,B8\e(B
-" nil t)
+   cedilla   |   `    | `c -> \e,Bg\e(B   `e -> ?\e,Bj\e(B
+    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
+   symbol    |   ~    | `. -> \e,B\7f\e(B   ~~ -> \e,B"\e(B   ~. -> ?\e,B8\e(B
+" nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
  ("'A" ?\e,BA\e(B)
@@ -465,6 +558,7 @@ Key translation rules are:
  ("~A" ?\e,BC\e(B)
  ("~C" ?\e,BH\e(B)
  ("~D" ?\e,BO\e(B)
+ ("~E" ?\e,BL\e(B)
  ("~L" ?\e,B%\e(B)
  ("~N" ?\e,BR\e(B)
  ("~O" ?\e,BU\e(B)
@@ -476,6 +570,7 @@ Key translation rules are:
  ("~a" ?\e,Bc\e(B)
  ("~c" ?\e,Bh\e(B)
  ("~d" ?\e,Bo\e(B)
+ ("~e" ?\e,Bl\e(B)
  ("~l" ?\e,B5\e(B)
  ("~n" ?\e,Br\e(B)
  ("~o" ?\e,Bu\e(B)
@@ -496,15 +591,15 @@ Key translation rules are:
 
     effect   | prefix | examples
  ------------+--------+----------
-    acute    |   '    | 'a -> \e,Ca\e(B, '' -> ?\e,C4\e(B
+    acute    |   '    | 'a -> \e,Ca\e(B   '' -> ?\e,C4\e(B
     grave    |   `    | `a -> \e,C`\e(B
   circumflex |   ^    | ^a -> \e,Cb\e(B
-  diaeresis  |   \"    | \"a -> \e,Cd\e(B, \"\" -> \e,C(\e(B
-   cedilla   |   ~    | ~c -> \e,Cg\e(B, ~s -> \e,C:\e(B, ~~ -> \e,C8\e(B
-  dot above  | ~ / .  | ~o -> \e,Cu\e(B, /o -> \e,Cu\e(B, .o -> \e,Cu\e(B
-    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
-   symbol    |   ~    | ~` -> \e,C"\e(B, /# -> \e,C#\e(B, /$ -> \e,C$\e(B, // -> \e,C0\e(B
-" nil t)
+  diaeresis  |   \"    | \"a -> \e,Cd\e(B   \"\" -> \e,C(\e(B
+   cedilla   |   ~    | ~c -> \e,Cg\e(B   ~s -> \e,C:\e(B   ~~ -> \e,C8\e(B
+  dot above  |   / .  | /g -> \e,Cu\e(B   .o -> \e,Cu\e(B
+    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
+   symbol    |   ~    | ~` -> \e,C"\e(B   /# -> \e,C#\e(B   /$ -> \e,C$\e(B   // -> \e,C0\e(B
+" nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
  ("'A" ?\e,CA\e(B)
@@ -566,17 +661,10 @@ Key translation rules are:
  ("\"s" ?\e,C_\e(B)
  ("\"\"" ?\e,C(\e(B)
  ("\" " ?\")
- ("~A" ?\e,CC\e(B)
  ("~C" ?\e,CG\e(B)
- ("~D" ?\e,CP\e(B)
  ("~N" ?\e,CQ\e(B)
- ("~O" ?\e,CU\e(B)
- ("~a" ?\e,Cc\e(B)
  ("~c" ?\e,Cg\e(B)
- ("~d" ?\e,Cp\e(B)
  ("~n" ?\e,Cq\e(B)
- ("~o" ?\e,Cu\e(B)
- ("~$" ?\e,C%\e(B)
  ("~S" ?\e,C*\e(B)
  ("~s" ?\e,C:\e(B)
  ("~G" ?\e,C+\e(B)
@@ -596,7 +684,6 @@ Key translation rules are:
  ("/h" ?\e,C1\e(B)
  ("/i" ?\e,C9\e(B)
  ("/z" ?\e,C?\e(B)
- ("/r" ?\e,C.\e(B)
  ("/." ?\e,C\7f\e(B)
  ("/#" ?\e,C#\e(B)
  ("/$" ?\e,C$\e(B)
@@ -610,3 +697,495 @@ Key translation rules are:
  (".g" ?\e,Cu\e(B)
  (".z" ?\e,C?\e(B)
 )
+
+
+(quail-define-package
+ "polish-slash" "Polish" "PL>" nil
+ "Polish diacritics and slash character are input as `/[acelnosxzACELNOSXZ/]'.
+For example, the character named `aogonek' is obtained by `/a'."
+ nil t t t nil nil nil nil nil nil t)
+
+(quail-define-rules
+ ("//" ?/)
+ ("/a" ?\e,B1\e(B)
+ ("/c" ?\e,Bf\e(B)
+ ("/e" ?\e,Bj\e(B)
+ ("/l" ?\e,B3\e(B)
+ ("/n" ?\e,Bq\e(B)
+ ("/o" ?\e,Bs\e(B)
+ ("/s" ?\e,B6\e(B)
+ ("/x" ?\e,B<\e(B)
+ ("/z" ?\e,B?\e(B)
+ ("/A" ?\e,B!\e(B)
+ ("/C" ?\e,BF\e(B)
+ ("/E" ?\e,BJ\e(B)
+ ("/L" ?\e,B#\e(B)
+ ("/N" ?\e,BQ\e(B)
+ ("/O" ?\e,BS\e(B)
+ ("/S" ?\e,B&\e(B)
+ ("/X" ?\e,B,\e(B)
+ ("/Z" ?\e,B/\e(B))
+
+(quail-define-package
+ "latin-9-prefix" "Latin-9" "0>" t
+ "Latin-9 characters input method with prefix modifiers
+
+    effect   | prefix | examples
+ ------------+--------+----------
+    acute    |   '    | 'a -> \e,ba\e(B
+    grave    |   `    | `a -> \e,b`\e(B
+  circumflex |   ^    | ^a -> \e,bb\e(B
+  diaeresis  |   \"    | \"a -> \e,bd\e(B, \"Y -> \e,b>\e(B
+    tilde    |   ~    | ~a -> \e,bc\e(B
+    caron    |   ~    | ~z -> \e,b8\e(B
+   cedilla   |   ~    | ~c -> \e,bg\e(B
+    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
+             | \" ~ /  | /o -> \e,b=\e(B
+   symbol    |   ~    | ~> -> \e,b;\e(B  ~< -> \e,b+\e(B  ~! -> \e,b!\e(B  ~? -> \e,b?\e(B  ~~ -> \e,b8\e(B
+             |   ~    | ~s -> \e,b'\e(B  ~e -> \e,b$\e(B  ~. -> \e,b7\e(B  ~$ -> \e,b#\e(B  ~u -> \e,b5\e(B
+             |   ~    | ~- -> \e,b-\e(B  ~= -> \e,b/\e(B
+   symbol    |  _ /   | _o -> \e,b:\e(B  _a -> \e,b*\e(B  // -> \e,b0\e(B  /\\ -> \e,bW\e(B  _y -> \e,b%\e(B
+             |  _ /   | _: -> \e,bw\e(B  /c -> \e,b"\e(B  ~p -> \e,b6\e(B
+             |  _ /   | /= -> \e,b,\e(B
+   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
+" nil t nil nil nil nil nil nil nil nil t)
+
+(quail-define-rules
+ ("'A" ?\e,bA\e(B)
+ ("'E" ?\e,bI\e(B)
+ ("'I" ?\e,bM\e(B)
+ ("'O" ?\e,bS\e(B)
+ ("'U" ?\e,bZ\e(B)
+ ("'Y" ?\e,b]\e(B)
+ ("'a" ?\e,ba\e(B)
+ ("'e" ?\e,bi\e(B)
+ ("'i" ?\e,bm\e(B)
+ ("'o" ?\e,bs\e(B)
+ ("'u" ?\e,bz\e(B)
+ ("'y" ?\e,b}\e(B)
+ ("' " ?')
+ ("`A" ?\e,b@\e(B)
+ ("`E" ?\e,bH\e(B)
+ ("`I" ?\e,bL\e(B)
+ ("`O" ?\e,bR\e(B)
+ ("`U" ?\e,bY\e(B)
+ ("`a" ?\e,b`\e(B)
+ ("`e" ?\e,bh\e(B)
+ ("`i" ?\e,bl\e(B)
+ ("`o" ?\e,br\e(B)
+ ("`u" ?\e,by\e(B)
+ ("``" ?`)
+ ("` " ?`)
+ ("^A" ?\e,bB\e(B)
+ ("^E" ?\e,bJ\e(B)
+ ("^I" ?\e,bN\e(B)
+ ("^O" ?\e,bT\e(B)
+ ("^U" ?\e,b[\e(B)
+ ("^a" ?\e,bb\e(B)
+ ("^e" ?\e,bj\e(B)
+ ("^i" ?\e,bn\e(B)
+ ("^o" ?\e,bt\e(B)
+ ("^u" ?\e,b{\e(B)
+ ("^^" ?^)
+ ("^ " ?^)
+ ("\"A" ?\e,bD\e(B)
+ ("\"E" ?\e,bK\e(B)
+ ("\"I" ?\e,bO\e(B)
+ ("\"O" ?\e,bV\e(B)
+ ("\"U" ?\e,b\\e(B)
+ ("\"a" ?\e,bd\e(B)
+ ("\"e" ?\e,bk\e(B)
+ ("\"i" ?\e,bo\e(B)
+ ("\"o" ?\e,bv\e(B)
+ ("\"s" ?\e,b_\e(B)
+ ("\"u" ?\e,b|\e(B)
+ ("\"y" ?\e,b\7f\e(B)
+ ("\" " ?\")
+ ("~A" ?\e,bC\e(B)
+ ("~C" ?\e,bG\e(B)
+ ("~D" ?\e,bP\e(B)
+ ("~N" ?\e,bQ\e(B)
+ ("~O" ?\e,bU\e(B)
+ ("~S" ?\e,b&\e(B)
+ ("~T" ?\e,b^\e(B)
+ ("~Z" ?\e,b4\e(B)
+ ("~a" ?\e,bc\e(B)
+ ("~c" ?\e,bg\e(B)
+ ("~d" ?\e,bp\e(B)
+ ("~n" ?\e,bq\e(B)
+ ("~o" ?\e,bu\e(B)
+ ("~s" ?\e,b(\e(B)
+ ("~t" ?\e,b~\e(B)
+ ("~z" ?\e,b8\e(B)
+ ("~>" ?\\e,b;\e(B)
+ ("~<" ?\\e,b+\e(B)
+ ("~!" ?\e,b!\e(B)
+ ("~?" ?\e,b?\e(B)
+ ("~ " ?~)
+ ("/A" ?\e,bE\e(B)
+ ("/E" ?\e,bF\e(B)
+ ("/O" ?\e,bX\e(B)
+ ("/a" ?\e,be\e(B)
+ ("/e" ?\e,bf\e(B)
+ ("/o" ?\e,bx\e(B)
+ ("//" ?\e,b0\e(B)
+ ("/ " ?/)
+ ("_o" ?\e,b:\e(B)
+ ("_a" ?\e,b*\e(B)
+ ("_+" ?\e,b1\e(B)
+ ("_y" ?\e,b%\e(B)
+ ("_:" ?\e,bw\e(B)
+ ("_ " ?\e,b \e(B)
+ ("__" ?_)
+ ("/c" ?\e,b"\e(B)
+ ("/\\" ?\e,bW\e(B)
+ ("/o" ?\e,b=\e(B)                               ; clash with \e,bx\e(B, but \e,bf\e(B uses /
+ ("/O" ?\e,b<\e(B)
+ ("\"Y" ?\e,b>\e(B)
+ ("~s" ?\e,b'\e(B)
+ ("~p" ?\e,b6\e(B)
+ ;; Is this the best option for Euro entry?
+ ("~e" ?\e,b$\e(B)
+ ("~." ?\e,b7\e(B)
+ ("~$" ?\e,b#\e(B)
+ ("~u" ?\e,b5\e(B)
+ ("^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)
+ ("~-" ?\e,b-\e(B)
+ ("~=" ?\e,b/\e(B)
+ ("/=" ?\e,b,\e(B))
+
+;; Latin-8 was done by an Englishman -- Johnny Celt should take a
+;; squint at it.
+
+(quail-define-package
+ "latin-8-prefix" "Latin-8" "8>" t
+ "Latin-8 characters input method with prefix modifiers
+
+    effect   | prefix | examples
+ ------------+--------+----------
+    acute    |   '    | 'a -> \e,_a\e(B
+    grave    |   `    | `a -> \e,_`\e(B
+  circumflex |   ^    | ^w -> \e,_p\e(B
+  diaeresis  |   \"    | \"a -> \e,_d\e(B
+  dot above  |   .    | .b -> \e,_"\e(B
+    tilde    |   ~    | ~a -> \e,_c\e(B
+   cedilla   |   ~    | ~c -> \e,_g\e(B
+    misc     | \" ~ /  | \"s -> \e,__\e(B   /a -> \e,_e\e(B  /e -> \e,_f\e(B  /o -> \e,_x\e(B
+             |   ~    | ~s -> \e,_'\e(B  ~$ -> \e,_#\e(B  ~p -> \e,_6\e(B
+   symbol    |   ^    | ^r -> \e,_.\e(B  ^c -> \e,_)\e(B
+" nil t nil nil nil nil nil nil nil nil t)
+
+;; Basically following Latin-1, plus dottiness from Latin-3.
+(quail-define-rules
+ (".B" ?\e,_!\e(B)
+ (".b" ?\e,_"\e(B)
+ (".c" ?\e,_%\e(B)
+ (".C" ?\e,_$\e(B)
+ (".D" ?\e,_&\e(B)
+ (".d" ?\e,_+\e(B)
+ (".f" ?\e,_1\e(B)
+ (".F" ?\e,_0\e(B)
+ (".g" ?\e,_3\e(B)
+ (".G" ?\e,_2\e(B)
+ (".m" ?\e,_5\e(B)
+ (".M" ?\e,_4\e(B)
+ (".p" ?\e,_9\e(B)
+ (".P" ?\e,_7\e(B)
+ (".s" ?\e,_?\e(B)
+ (".S" ?\e,_;\e(B)
+ (".t" ?\e,_w\e(B)
+ (".T" ?\e,_W\e(B)
+ ("'A" ?\e,_A\e(B)
+ ("'E" ?\e,_I\e(B)
+ ("'I" ?\e,_M\e(B)
+ ("'O" ?\e,_S\e(B)
+ ("'U" ?\e,_Z\e(B)
+ ("'Y" ?\e,_]\e(B)
+ ("'W" ?\e,_*\e(B)
+ ("'a" ?\e,_a\e(B)
+ ("'e" ?\e,_i\e(B)
+ ("'i" ?\e,_m\e(B)
+ ("'o" ?\e,_s\e(B)
+ ("'u" ?\e,_z\e(B)
+ ("'w" ?\e,_:\e(B)
+ ("'y" ?\e,_}\e(B)
+ ("' " ?')
+ ("`A" ?\e,_@\e(B)
+ ("`E" ?\e,_H\e(B)
+ ("`I" ?\e,_L\e(B)
+ ("`O" ?\e,_R\e(B)
+ ("`U" ?\e,_Y\e(B)
+ ("`W" ?\e,_(\e(B)
+ ("`Y" ?\e,_,\e(B)
+ ("`a" ?\e,_`\e(B)
+ ("`e" ?\e,_h\e(B)
+ ("`i" ?\e,_l\e(B)
+ ("`o" ?\e,_r\e(B)
+ ("`u" ?\e,_y\e(B)
+ ("`w" ?\e,_8\e(B)
+ ("`y" ?\e,_<\e(B)
+ ("``" ?`)
+ ("` " ?`)
+ ("^A" ?\e,_B\e(B)
+ ("^E" ?\e,_J\e(B)
+ ("^I" ?\e,_N\e(B)
+ ("^O" ?\e,_T\e(B)
+ ("^U" ?\e,_[\e(B)
+ ("^a" ?\e,_b\e(B)
+ ("^e" ?\e,_j\e(B)
+ ("^i" ?\e,_n\e(B)
+ ("^o" ?\e,_t\e(B)
+ ("^u" ?\e,_{\e(B)
+ ("^w" ?\e,_p\e(B)
+ ("^W" ?\e,_P\e(B)
+ ("^y" ?\e,_~\e(B)
+ ("^Y" ?\e,_^\e(B)
+ ("^^" ?^)
+ ("^ " ?^)
+ ("\"A" ?\e,_D\e(B)
+ ("\"E" ?\e,_K\e(B)
+ ("\"I" ?\e,_O\e(B)
+ ("\"O" ?\e,_V\e(B)
+ ("\"U" ?\e,_\\e(B)
+ ("\"a" ?\e,_d\e(B)
+ ("\"e" ?\e,_k\e(B)
+ ("\"i" ?\e,_o\e(B)
+ ("\"o" ?\e,_v\e(B)
+ ("\"s" ?\e,__\e(B)
+ ("\"u" ?\e,_|\e(B)
+ ("\"w" ?\e,_>\e(B)
+ ("\"W" ?\e,_=\e(B)
+ ("\"y" ?\e,_\7f\e(B)
+ ("\"Y" ?\e,_/\e(B)
+ ("\" " ?\")
+ ("~A" ?\e,_C\e(B)
+ ("~C" ?\e,_G\e(B)
+ ("~N" ?\e,_Q\e(B)
+ ("~O" ?\e,_U\e(B)
+ ("~a" ?\e,_c\e(B)
+ ("~c" ?\e,_g\e(B)
+ ("~n" ?\e,_q\e(B)
+ ("~o" ?\e,_u\e(B)
+ ("~ " ?~)
+ ("/A" ?\e,_E\e(B)
+ ("/E" ?\e,_F\e(B)
+ ("/O" ?\e,_X\e(B)
+ ("/a" ?\e,_e\e(B)
+ ("/e" ?\e,_f\e(B)
+ ("/o" ?\e,_x\e(B)
+ ("/ " ?/)
+ ("~p" ?\e,_6\e(B)
+ ("~s" ?\e,_'\e(B)
+ ("~$" ?\e,_#\e(B)
+ ("^r" ?\e,_.\e(B)
+ ("^c" ?\e,_)\e(B))
+
+(quail-define-package
+ "latin-prefix" "Latin" "L>" t
+ "Latin characters input method with prefix modifiers.
+This is the union of various input methods originally made for input
+of characters from a single Latin-N charset.
+
+    effect   | prefix | examples
+ ------------+--------+----------
+    acute    |   '    | 'a -> \e,Aa\e(B, '' -> \e,A4\e(B
+    grave    |   `    | `a -> \e,A`\e(B
+  circumflex |   ^    | ^a -> \e,Ab\e(B
+  diaeresis  |   \"    | \"a -> \e,Ad\e(B  \"\" -> \e,A(\e(B
+    tilde    |   ~    | ~a -> \e,Ac\e(B
+   cedilla   |   ~    | ~c -> \e,Ag\e(B
+    breve    |   ~    | ~a -> \e$,1 #\e(B
+    caron    |   ~    | ~c -> \e$,1 -\e(B
+  dot above  | ~ / .  | ~o -> \e$,1 A\e(B   /o -> \e$,1 A\e(B   .o -> \e$,1 A\e(B
+    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
+   symbol    |   ~    | ~> -> \e,A;\e(B  ~< -> \e,A+\e(B  ~! -> \e,A!\e(B  ~? -> \e,A?\e(B  ~~ -> \e,A8\e(B
+   symbol    |  _ /   | _o -> \e,A:\e(B  _a -> \e,A*\e(B  // -> \e,A0\e(B  /\\ -> \e,AW\e(B  _y -> \e,A%\e(B
+   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
+" nil t nil nil nil nil nil nil nil nil t)
+
+(quail-define-rules
+ ("' " ?')
+ ("''" ?\e,A4\e(B)
+ ("'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)
+ ("'W" ?\e$,1nb\e(B)
+ ("'Y" ?\e,A]\e(B)
+ ("'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)
+ ("'w" ?\e$,1nc\e(B)
+ ("'y" ?\e,A}\e(B)
+ (".B" ?\e$,1mB\e(B)
+ (".C" ?\e$,1 *\e(B)
+ (".D" ?\e$,1mJ\e(B)
+ (".F" ?\e$,1m^\e(B)
+ (".G" ?\e$,1 @\e(B)
+ (".I" ?\e$,1 P\e(B)
+ (".M" ?\e$,1n \e(B)
+ (".P" ?\e$,1n6\e(B)
+ (".S" ?\e$,1n@\e(B)
+ (".T" ?\e$,1nJ\e(B)
+ (".Z" ?\e$,1!;\e(B)
+ (".b" ?\e$,1mC\e(B)
+ (".c" ?\e$,1 +\e(B)
+ (".d" ?\e$,1mK\e(B)
+ (".f" ?\e$,1m_\e(B)
+ (".g" ?\e$,1 A\e(B)
+ (".m" ?\e$,1n!\e(B)
+ (".p" ?\e$,1n7\e(B)
+ (".s" ?\e$,1nA\e(B)
+ (".t" ?\e$,1nK\e(B)
+ (".z" ?\e$,1!<\e(B)
+ ("/ " ?/)
+ ("/#" ?\e,A#\e(B)
+ ("/$" ?\e,A$\e(B)
+ ("/." ?\e$,1$y\e(B)
+ ("//" ?\e,A0\e(B)
+ ("/2" ?\e,A=\e(B)
+ ("/3" ?\e,A>\e(B)
+ ("/4" ?\e,A<\e(B)
+ ("/=" ?\e,A,\e(B)
+ ("/A" ?\e,AE\e(B)
+ ("/C" ?\e$,1 *\e(B)
+ ("/E" ?\e,AF\e(B)
+ ("/G" ?\e$,1 @\e(B)
+ ("/H" ?\e$,1 F\e(B)
+ ("/I" ?\e$,1 P\e(B)
+ ("/O" ?\e,AX\e(B)
+ ("/O" ?\e$,1 r\e(B)
+ ("/Z" ?\e$,1!;\e(B)
+ ("/\\" ?\e,AW\e(B)
+ ("/a" ?\e,Ae\e(B)
+ ("/c" ?\e,A"\e(B)
+ ("/c" ?\e$,1 +\e(B)
+ ("/e" ?\e,Af\e(B)
+ ("/g" ?\e$,1 A\e(B)
+ ("/h" ?\e$,1 G\e(B)
+ ("/i" ?\e$,1 Q\e(B)
+ ("/o" ?\e,Ax\e(B)
+ ("/o" ?\e$,1 s\e(B)
+ ("/z" ?\e$,1!<\e(B)
+ ("\" " ?\")
+ ("\"A" ?\e,AD\e(B)
+ ("\"E" ?\e,AK\e(B)
+ ("\"I" ?\e,AO\e(B)
+ ("\"O" ?\e,AV\e(B)
+ ("\"U" ?\e,A\\e(B)
+ ("\"W" ?\e$,1nd\e(B)
+ ("\"Y" ?\e$,1!8\e(B)
+ ("\"\"" ?\e,A(\e(B)
+ ("\"a" ?\e,Ad\e(B)
+ ("\"e" ?\e,Ak\e(B)
+ ("\"i" ?\e,Ao\e(B)
+ ("\"o" ?\e,Av\e(B)
+ ("\"s" ?\e,A_\e(B)
+ ("\"u" ?\e,A|\e(B)
+ ("\"w" ?\e$,1ne\e(B)
+ ("\"y" ?\e,A\7f\e(B)
+ ("^ " ?^)
+ ("^1" ?\e,A9\e(B)
+ ("^2" ?\e,A2\e(B)
+ ("^3" ?\e,A3\e(B)
+ ("^A" ?\e,AB\e(B)
+ ("^C" ?\e$,1 (\e(B)
+ ("^E" ?\e,AJ\e(B)
+ ("^G" ?\e$,1 <\e(B)
+ ("^H" ?\e$,1 D\e(B)
+ ("^I" ?\e,AN\e(B)
+ ("^J" ?\e$,1 T\e(B)
+ ("^O" ?\e,AT\e(B)
+ ("^S" ?\e$,1 |\e(B)
+ ("^U" ?\e,A[\e(B)
+ ("^W" ?\e$,1!4\e(B)
+ ("^Y" ?\e$,1!6\e(B)
+ ("^^" ?^)
+ ("^a" ?\e,Ab\e(B)
+ ("^c" ?\e,A)\e(B)
+ ("^c" ?\e$,1 )\e(B)
+ ("^e" ?\e,Aj\e(B)
+ ("^g" ?\e$,1 =\e(B)
+ ("^h" ?\e$,1 E\e(B)
+ ("^i" ?\e,An\e(B)
+ ("^j" ?\e$,1 U\e(B)
+ ("^o" ?\e,At\e(B)
+ ("^r" ?\e,A.\e(B)
+ ("^s" ?\e$,1 }\e(B)
+ ("^u" ?\e,A{\e(B)
+ ("^w" ?\e$,1!5\e(B)
+ ("^y" ?\e$,1!7\e(B)
+ ("_+" ?\e,A1\e(B)
+ ("_:" ?\e,Aw\e(B)
+ ("_a" ?\e,A*\e(B)
+ ("_o" ?\e,A:\e(B)
+ ("_y" ?\e,A%\e(B)
+ ("_ " ?\e,A \e(B)
+ ("` " ?`)
+ ("`A" ?\e,A@\e(B)
+ ("`E" ?\e,AH\e(B)
+ ("`I" ?\e,AL\e(B)
+ ("`O" ?\e,AR\e(B)
+ ("`U" ?\e,AY\e(B)
+ ("`W" ?\e$,1n`\e(B)
+ ("`Y" ?\e$,1or\e(B)
+ ("``" ?`)
+ ("`a" ?\e,A`\e(B)
+ ("`e" ?\e,Ah\e(B)
+ ("`i" ?\e,Al\e(B)
+ ("`o" ?\e,Ar\e(B)
+ ("`u" ?\e,Ay\e(B)
+ ("`w" ?\e$,1na\e(B)
+ ("`y" ?\e$,1os\e(B)
+ ("~ " ?~)
+ ("~!" ?\e,A!\e(B)
+ ("~$" ?\e,A#\e(B)
+ ("~-" ?\e,A-\e(B)
+ ("~." ?\e,A7\e(B)
+ ("~<" ?\\e,A+\e(B)
+ ("~=" ?\e,A/\e(B)
+ ("~>" ?\\e,A;\e(B)
+ ("~?" ?\e,A?\e(B)
+ ("~A" ?\e,AC\e(B)
+ ("~C" ?\e,AG\e(B)
+ ("~D" ?\e,AP\e(B)
+ ("~G" ?\e$,1 >\e(B)
+ ("~N" ?\e,AQ\e(B)
+ ("~O" ?\e,AU\e(B)
+ ("~O" ?\e$,1 @\e(B)
+ ("~S" ?\e$,1 ~\e(B)
+ ("~S" ?\e$,1! \e(B)
+ ("~T" ?\e,A^\e(B)
+ ("~U" ?\e$,1!,\e(B)
+ ("~Z" ?\e$,1!=\e(B)
+ ("~`" ?\e$,1$x\e(B)
+ ("~a" ?\e,Ac\e(B)
+ ("~c" ?\e,Ag\e(B)
+ ("~d" ?\e,Ap\e(B)
+ ("~e" ?\e$,1tL\e(B)
+ ("~g" ?\e$,1 ?\e(B)
+ ("~n" ?\e,Aq\e(B)
+ ("~o" ?\e,Au\e(B)
+ ("~o" ?\e$,1 A\e(B)
+ ("~p" ?\e,A6\e(B)
+ ("~s" ?\e,A'\e(B)
+ ("~s" ?\e$,1 \7f\e(B)
+ ("~s" ?\e$,1!!\e(B)
+ ("~t" ?\e,A~\e(B)
+ ("~u" ?\e,A5\e(B)
+ ("~u" ?\e$,1!-\e(B)
+ ("~x" ?\e,A$\e(B)
+ ("~z" ?\e$,1!>\e(B)
+ ("~|" ?\e,A&\e(B)
+ ("~~" ?\e,A8\e(B)
+)
+
+;;; arch-tag: 83017837-6b84-4366-b183-e0577e3ed838
+;;; latin-pre.el ends here