]> code.delx.au - gnu-emacs/blobdiff - leim/quail/cyrillic.el
Merge from emacs--devo--0
[gnu-emacs] / leim / quail / cyrillic.el
index 7422c5ee7331e78243c3b165c10c1bdc4e989fcf..4cc37e5325515b3170d069144bcab18adf355eee 100644 (file)
@@ -1,8 +1,11 @@
 ;;; cyrillic.el --- Quail package for inputting Cyrillic characters
 
-;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-;; Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+;; Copyright (C) 1997, 1998, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+;;   Free Software Foundation, Inc.
+;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+;;   2006, 2007
+;;   National Institute of Advanced Industrial Science and Technology (AIST)
+;;   Registration Number H14PRO021
 
 ;; Author: TAKAHASHI Naoto <ntakahas@m17n.org>
 ;; Keywords: multilingual, input method, Cyrillic, i18n
@@ -21,8 +24,8 @@
 
 ;; 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:
 
@@ -52,8 +55,8 @@
  nil t t t t nil nil nil nil nil t)
 
 ;;  1! 2" 3' 4* 5: 6, 7. 8; 9( 0) -_ =+ \e,L!\e(B
-;;   \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
-;;    \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
+;;   \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
+;;    \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
 ;;     \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  /?
 
 (quail-define-rules
 
 ;; Maintain the obsolete name for now.
 (push (cons "cyrillic-jcuken"
-           (cdr (assoc "russian-typewriter" input-method-alist)))
-      input-method-alist)
+           (cdr (assoc "russian-typewriter" quail-package-alist)))
+      quail-package-alist)
+
+;; This needs to be seen by quail-update-leim-list-file, but cannot be
+;; commented out because quail-update-leim-list-file ignores
+;; commented-out lines.
+(if nil
+    (quail-define-package 
+     "cyrillic-jcuken" "Russian" "\e,L69\e(B" nil
+     "\e,L9FC:5=\e(B Russian typewriter layout (ISO 8859-5 encoding)."))
 
 ;; See comment above.  This is the variant `winkeys' from `ru' in XKB.
 (quail-define-package
  nil t t t t nil nil nil nil nil t)
 
 ;;  1! 2" 3\e,Lp\e(B 4; 5% 6: 7? 8* 9( 0) -_ =+ \e,Lq!\e(B
-;;   \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
-;;    \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
+;;   \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
+;;    \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
 ;;     \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  .,
 
 (quail-define-rules
 ;; least the top row is different.
 (quail-define-package
  "cyrillic-macedonian" "Cyrillic" "\e,L6\e(BM" nil
- "\e,L)*5@B7\e(B-\e,L#,\e(B keyboard layout based on JUS.I.K1.004 (ISO 8859-5 encoding)"
+ "\e,L)*5@B7\e(B-\e,L#,\e(B keyboard layout based on JUS.I.K1.004"
  nil t t t t nil nil nil nil nil t)
 
 ;;  1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <>
 
 (quail-define-package
  "cyrillic-serbian" "Cyrillic" "\e,L6\e(BS" nil
- "\e,L)*5@B7\e(B-\e,L"+\e(B keyboard layout based on JUS.I.K1.005 (ISO 8859-5 encoding)"
+ "\e,L)*5@B7\e(B-\e,L"+\e(B keyboard layout based on JUS.I.K1.005"
  nil t t t t nil nil nil nil nil t)
 
 ;;  1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <>
 ;; Fixme: add GHE_WITH_UPTURN.
 (quail-define-package
  "cyrillic-ukrainian" "Ukrainian" "\e,L6\e(BU" nil
- "\e,L$'5@B7\e(B-\e,L&.\e(B UKRAINIAN (ISO 8859-5 encoding)
+ "\e,L$'5@B7\e(B-\e,L&.\e(B UKRAINIAN
 
 Sorry, but 'ghe with upturn' is not included in ISO 8859-5."
  nil t t t t nil nil nil nil nil t)
@@ -762,7 +773,6 @@ Sorry, but 'ghe with upturn' is not included in ISO 8859-5."
  ("l" ?\e$,1(T\e(B)
  (";" ?\e$,1(V\e(B)
  ("'" ?\e$,1(t\e(B)
- ("\\" ?\\)
  ("z" ?\e$,1(o\e(B)
  ("x" ?\e$,1(g\e(B)
  ("c" ?\e$,1(a\e(B)
@@ -828,7 +838,7 @@ Sorry, but 'ghe with upturn' is not included in ISO 8859-5."
 ;; (mostly Russian) from time to time.
 (quail-define-package
  "cyrillic-yawerty" "Cyrillic" "\e,L6O\e(B" nil
- "\e,LO25@BK\e(B Roman transcription (ISO 8859-5 encoding)
+ "\e,LO25@BK\e(B Roman transcription
 
 This layout is based on Roman transcription by phonemic resemblance.
 When preceded by a '/', the second and the third rows (number key row) change
@@ -990,10 +1000,10 @@ as follows.
 ;; language-independent and universal.  It should be able to generate all
 ;; Cyrillic symbols.
 (quail-define-package
- "cyrillic-translit" "Cyrillic" "\e,L6\e(Bt" nil
+ "cyrillic-translit" "Cyrillic" "\e,L6\e(Bt" t
  "Intuitively transliterated keyboard layout.
-Most convenient for entering Russian but all Cyrillic characters are included.
-Should handle most cases. However:
+Most convenient for entering Russian, but all Cyrillic characters
+are included.  Should handle most cases.  However:
   for \e,Lf\e(B (TSE) use \"c\", never \"ts\"
   \e,Li\e(B (SHCHA = Bulgarian SHT) = \"shch\", \"sj\", \"/sht\" or \"/t\",
   \e,Lm\e(B (REVERSE ROUNDED E) = \"e'\" or \"e`\"
@@ -1065,8 +1075,8 @@ Unicode based."
  nil t t t t nil nil nil nil nil t)
 
 ;; \e$,1(q(!\e(B 1! 2" 3N 4; 5% 6: 7? 8* 9( 0) -_ =+
-;;     \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  '
-;;      \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
+;;     \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  '
+;;      \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
 ;;       \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  .,
 
 (quail-define-rules
@@ -1162,12 +1172,15 @@ Unicode based."
 The layout is similar to `cyrillic-translit', but all Bulgarian
 characters are typed with a single key.
 
-Use /& for \e,A'\e(B (Cyrillic paragraph) and /# for \e$,1uV\e(B."
+Use /& for \e,A'\e(B (Cyrillic paragraph) and /# for \e$,1uV\e(B.
+
+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."
  nil t t t t nil nil nil nil nil t)
 
-;;   \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
-;;    \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(G\e(B
-;;  \e$,1(N\e(B  \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
+;;  \e$,1(G\e(B
+;;      \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
+;;       \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
+;;        \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
 
 (quail-define-rules
  ("/&" ?\e,A'\e(B)
@@ -1231,7 +1244,6 @@ Use /& for \e,A'\e(B (Cyrillic paragraph) and /# for \e$,1uV\e(B."
  ("y" ?\e$,1(j\e(B)
  ("x" ?\e$,1(l\e(B)
  ("\\" ?\e$,1(n\e(B)
- ("|" ?\e$,1(N\e(B)
  ("q" ?\e$,1(o\e(B))
 
 ;; Based on an implementation by Ognyan Kulev <ogi@fmi.uni-sofia.bg>.
@@ -1241,36 +1253,34 @@ Use /& for \e,A'\e(B (Cyrillic paragraph) and /# for \e$,1uV\e(B."
  "bulgarian-bds" "Bulgarian" "\e$,1(1(4(A\e(B" nil
  "Bulgarian standard keyboard layout (BDS)
 
-This keyboard layout is standard for Bulgarian typewriters."
+This keyboard layout is standard for Bulgarian typewriters.
+
+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.
+
+In addition to original Bulgarian typewriter layout, keys \\ and |
+are transformed into ' and \e$,1(K\e(B respectively.  Some keyboards mark these
+keys as being transformed into ( and ) respectively.  For ( and ), use
+` and ~ respectively.  This input method follows XKB."
  nil t t t t nil nil nil nil nil t)
 
-;;  1! 2? 3+ 4" 5% 6= 7: 8/ 9_ 0\e$,1uV\e(B -I .V
-;;   ,\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
-;;    \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(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
+;;  () 1! 2? 3+ 4" 5% 6= 7: 8/ 9_ 0\e$,1uV\e(B -I .V
+;;      ,\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
+;;       \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
+;;        \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
 
 (quail-define-rules
 
  ("1" ?1) ("!" ?!)
- ("2" ?2)
- ("@" ??)
- ("3" ?3)
- ("#" ?+)
- ("4" ?4)
- ("$" ?\")
+ ("2" ?2) ("@" ??)
+ ("3" ?3) ("#" ?+)
+ ("4" ?4) ("$" ?\")
  ("5" ?5) ("%" ?%)
- ("6" ?6)
- ("^" ?=)
- ("7" ?7)
- ("&" ?:)
- ("8" ?8)
- ("*" ?/)
- ("9" ?9)
- ("(" ?_)
- ("0" ?0)
- (")" ?\e$,1uV\e(B)
- ("-" ?-)
- ("_" ?I)
+ ("6" ?6) ("^" ?=)
+ ("7" ?7) ("&" ?:)
+ ("8" ?8) ("*" ?/)
+ ("9" ?9) ("(" ?_)
+ ("0" ?0) (")" ?\e$,1uV\e(B)
+ ("-" ?-) ("_" ?I)
  ("=" ?.) ("+" ?V)
 
  ("q" ?,) ("Q" ?\e$,1(k\e(B)
@@ -1284,8 +1294,7 @@ This keyboard layout is standard for Bulgarian typewriters."
  ("o" ?\e$,1(T\e(B) ("O" ?\e$,1(4\e(B)
  ("p" ?\e$,1(W\e(B) ("P" ?\e$,1(7\e(B)
  ("[" ?\e$,1(f\e(B) ("{" ?\e$,1(F\e(B)
- ("]" ?\;)
- ("}" ?\e,A'\e(B) ;; not in XKB's bg
+ ("]" ?\;) ("}" ?\e,A'\e(B)
 
  ("a" ?\e$,1(l\e(B) ("A" ?\e$,1(L\e(B)
  ("s" ?\e$,1(o\e(B) ("S" ?\e$,1(O\e(B)
@@ -1316,4 +1325,5 @@ This keyboard layout is standard for Bulgarian typewriters."
 ;; coding: iso-2022-7bit
 ;; End:
 
+;;; arch-tag: e6d34b16-8710-4181-a17e-819a1df0334f
 ;;; cyrillic.el ends here