Mercurial > emacs
changeset 46499:c97319502b83
Doc fixes.
("cyrillic-beylorussian"): Commented-out.
("cyrillic-translit-bulgarian"): Deleted.
("cyrillic-ukrainian"): Fix `q', `Q', `W', `w' bindings.
("ukrainian-computer", "belarusian", "bulgarian-bds")
("russian-computer"): New.
("bulgarian-phonetic"): Renamed from bulgarian-pho. Add ?, ,Lp(B, ,LN(B.
("russian-typewriter"): Renamed from cyrillic-jcuken.
author | Dave Love <fx@gnu.org> |
---|---|
date | Wed, 17 Jul 2002 18:19:44 +0000 |
parents | 065bbf082910 |
children | 81c9cd627d93 |
files | leim/quail/cyrillic.el |
diffstat | 1 files changed, 479 insertions(+), 242 deletions(-) [+] |
line wrap: on
line diff
--- a/leim/quail/cyrillic.el Wed Jul 17 18:13:20 2002 +0000 +++ b/leim/quail/cyrillic.el Wed Jul 17 18:19:44 2002 +0000 @@ -2,9 +2,10 @@ ;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN. ;; Licensed to the Free Software Foundation. -;; Copyright (C) 2001 Free Software Foundation, Inc. +;; Copyright (C) 2001, 2002 Free Software Foundation, Inc. -;; Keywords: multilingual, input method, Cyrillic +;; Author: TAKAHASHI Naoto <ntakahas@m17n.org> +;; Keywords: multilingual, input method, Cyrillic, i18n ;; This file is part of GNU Emacs. @@ -25,13 +26,29 @@ ;;; Commentary: +;; These methods use a mixture of 8859-5 and Unicode. Quail, used +;; with ucs-tables provides suport for translating on the fly to +;; what's appropriate for aa buffer's file coding system, so the +;; encoding shouldn't matter too much provided it supports the +;; necessary characters. + ;;; Code: (require 'quail) +;; This was `cyrillic-jcuken'. Alexander Mikhailian +;; <mikhailian@altern.org> says: "cyrillic-jcuken" is actually +;; russian. It is ok but a bit outdated. This layout has been used +;; in typewriters for ages but it has been superceeded on desktops by +;; a variation of this layout, implemented in M$ Windows software. +;; The Windows layout is greatly preferred because of the comma and +;; period being placed more conviniently and, of course, because of +;; the popularity of Windows software. This layout is a common option +;; in X Windows and console layouts for GNU/Linux. [See +;; `russian-computer' below.] (quail-define-package - "cyrillic-jcuken" "Cyrillic" ",L69(B" nil - ",L9FC:5=(B keyboard layout widely used in Russia (ISO 8859-5 encoding)" + "russian-typewriter" "Russian" ",L69(B" nil + ",L9FC:5=(B Russian typewriter layout (ISO 8859-5 encoding)." nil t t t t nil nil nil nil nil t) ;; 1! 2" 3' 4* 5: 6, 7. 8; 9( 0) -_ =+ ,L!(B @@ -96,8 +113,8 @@ ("^" ?,) ("&" ?.) ("*" ?\;) - ("(" ?() - (")" ?)) + ("(" ?\() + (")" ?\)) ("_" ?_) ("+" ?+) ("~" ?,L!(B) @@ -134,10 +151,125 @@ ("M" ?,LL(B) ("<" ?,L1(B) (">" ?,LN(B) - ("?" ??)) + ("?" ??) + ) + +;; Maintain the obsolete name for now. +(push (cons "cyrillic-jcuken" + (cdr (assoc "russian-typewriter" input-method-alist))) + input-method-alist) + +;; See comment above. This is the variant `winkeys' from `ru' in XKB. +(quail-define-package + "russian-computer" "Russian" "RU" nil + ",L9FC:5=(B Russian computer layout" + nil t t t t nil nil nil nil nil t) + +;; 1! 2" 3,Lp(B 4; 5% 6: 7? 8* 9( 0) -_ =+ ,Lq!(B +;; ,L9(B ,LF(B ,LC(B ,L:(B ,L5(B ,L=(B ,L3(B ,LH(B ,LI(B ,L7(B ,LE(B ,Lj(B +;; ,LD(B ,LK(B ,L2(B ,L0(B ,L?(B ,L@(B ,L>(B ,L;(B ,L4(B ,L6(B ,LM(B +;; ,LO(B ,LG(B ,LA(B ,L<(B ,L8(B ,LB(B ,LL(B ,L1(B ,LN(B ., -;; +(quail-define-rules + ("1" ?1) + ("2" ?2) + ("3" ?3) + ("4" ?4) + ("5" ?5) + ("6" ?6) + ("7" ?7) + ("8" ?8) + ("9" ?9) + ("0" ?0) + ("-" ?-) + ("=" ?=) + ("`" ?,Lq(B) + ("q" ?,LY(B) + ("w" ?,Lf(B) + ("e" ?,Lc(B) + ("r" ?,LZ(B) + ("t" ?,LU(B) + ("y" ?,L](B) + ("u" ?,LS(B) + ("i" ?,Lh(B) + ("o" ?,Li(B) + ("p" ?,LW(B) + ("[" ?,Le(B) + ("]" ?,Lj(B) + ("a" ?,Ld(B) + ("s" ?,Lk(B) + ("d" ?,LR(B) + ("f" ?,LP(B) + ("g" ?,L_(B) + ("h" ?,L`(B) + ("j" ?,L^(B) + ("k" ?,L[(B) + ("l" ?,LT(B) + (";" ?,LV(B) + ("'" ?,Lm(B) + ("\\" ?\\) + ("z" ?,Lo(B) + ("x" ?,Lg(B) + ("c" ?,La(B) + ("v" ?,L\(B) + ("b" ?,LX(B) + ("n" ?,Lb(B) + ("m" ?,Ll(B) + ("," ?,LQ(B) + ("." ?,Ln(B) + ("/" ?.) + ("!" ?!) + ("@" ?\") + ("#" ?,Lp(B) + ("$" ?\;) + ("%" ?%) + ("^" ?:) + ("&" ??) + ("*" ?*) + ("(" ?() + (")" ?)) + ("_" ?_) + ("+" ?+) + ("~" ?,L!(B) + ("Q" ?,L9(B) + ("W" ?,LF(B) + ("E" ?,LC(B) + ("R" ?,L:(B) + ("T" ?,L5(B) + ("Y" ?,L=(B) + ("U" ?,L3(B) + ("I" ?,LH(B) + ("O" ?,LI(B) + ("P" ?,L7(B) + ("{" ?,LE(B) + ("}" ?,LJ(B) + ("A" ?,LD(B) + ("S" ?,LK(B) + ("D" ?,L2(B) + ("F" ?,L0(B) + ("G" ?,L?(B) + ("H" ?,L@(B) + ("J" ?,L>(B) + ("K" ?,L;(B) + ("L" ?,L4(B) + (":" ?,L6(B) + ("\"" ?,LM(B) + ("|" ?|) + ("Z" ?,LO(B) + ("X" ?,LG(B) + ("C" ?,LA(B) + ("V" ?,L<(B) + ("B" ?,L8(B) + ("N" ?,LB(B) + ("M" ?,LL(B) + ("<" ?,L1(B) + (">" ?,LN(B) + ("?" ?,)) +;; Mikhailian couldn't check the next two. + +;; This seems to have the same layout for letters as mk in XKB, but at +;; least the top row is different. (quail-define-package "cyrillic-macedonian" "Cyrillic" ",L6(BM" nil ",L)*5@B7(B-,L#,(B keyboard layout based on JUS.I.K1.004 (ISO 8859-5 encoding)" @@ -356,120 +488,128 @@ ;; -(quail-define-package - "cyrillic-beylorussian" "Belarussian" ",L6(BB" nil - ",L)*5@B7(B-,L&.(B BEYLORUSSIAN (ISO 8859-5 encoding)" - nil t t t t nil nil nil nil nil t) +;; Alexander Mikhailian comments: +;; Having worked for several years as a Belarusian linguist, I still +;; can not find the origin of this layout which BTW does include +;; several characters that are not present in Belarusian and does not +;; include a few ones that do exist in Belarusian. Besides, the typo +;; in the name of this layout speaks for itself since Belarusian has +;; an outdated version of spelling which is "Byelorussian" and not +;; "beylorussian". I suggest that you just remove this layout. -;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <> -;; ,L)(B ,L*(B ,L5(B ,L@(B ,LB(B ,L7(B ,LC(B ,L8(B ,L>(B ,L?(B ,LH(B ,L&(B -;; ,L0(B ,LA(B ,L4(B ,LD(B ,L3(B ,LE(B ,L((B ,L:(B ,L;(B ,LG(B ,L.(B ,L6(B -;; ,L%(B ,L/(B ,LF(B ,L2(B ,L1(B ,L=(B ,L<(B ,; .: -_ +;; [`derived from JUS.I.K1' according to an old Mule note -- fx] + +;; (quail-define-package +;; "cyrillic-beylorussian" "Belarussian" ",L6(BB" nil +;; ",L)*5@B7(B-,L&.(B BEYLORUSSIAN (ISO 8859-5 encoding)" +;; nil t t t t nil nil nil nil nil t) + +;; ;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <> +;; ;; ,L)(B ,L*(B ,L5(B ,L@(B ,LB(B ,L7(B ,LC(B ,L8(B ,L>(B ,L?(B ,LH(B ,L&(B +;; ;; ,L0(B ,LA(B ,L4(B ,LD(B ,L3(B ,LE(B ,L((B ,L:(B ,L;(B ,LG(B ,L.(B ,L6(B +;; ;; ,L%(B ,L/(B ,LF(B ,L2(B ,L1(B ,L=(B ,L<(B ,; .: -_ -(quail-define-rules - ("1" ?1) - ("2" ?2) - ("3" ?3) - ("4" ?4) - ("5" ?5) - ("6" ?6) - ("7" ?7) - ("8" ?8) - ("9" ?9) - ("0" ?0) - ("-" ?/) - ("=" ?+) - ("`" ?<) - ("q" ?,Ly(B) - ("w" ?,Lz(B) - ("e" ?,LU(B) - ("r" ?,L`(B) - ("t" ?,Lb(B) - ("y" ?,LW(B) - ("u" ?,Lc(B) - ("i" ?,LX(B) - ("o" ?,L^(B) - ("p" ?,L_(B) - ("[" ?,Lh(B) - ("]" ?,Lv(B) - ("a" ?,LP(B) - ("s" ?,La(B) - ("d" ?,LT(B) - ("f" ?,Ld(B) - ("g" ?,LS(B) - ("h" ?,Le(B) - ("j" ?,Lx(B) - ("k" ?,LZ(B) - ("l" ?,L[(B) - (";" ?,Lg(B) - ("'" ?,L~(B) - ("\\" ?,LV(B) - ("z" ?,Lu(B) - ("x" ?,L(B) - ("c" ?,Lf(B) - ("v" ?,LR(B) - ("b" ?,LQ(B) - ("n" ?,L](B) - ("m" ?,L\(B) - ("," ?,) - ("." ?.) - ("/" ?-) +;; (quail-define-rules +;; ("-" ?/) +;; ("=" ?+) +;; ("`" ?<) +;; ("q" ?,Ly(B) +;; ("w" ?,Lz(B) +;; ("e" ?,LU(B) +;; ("r" ?,L`(B) +;; ("t" ?,Lb(B) +;; ("y" ?,LW(B) +;; ("u" ?,Lc(B) +;; ("i" ?,LX(B) +;; ("o" ?,L^(B) +;; ("p" ?,L_(B) +;; ("[" ?,Lh(B) +;; ("]" ?,Lv(B) +;; ("a" ?,LP(B) +;; ("s" ?,La(B) +;; ("d" ?,LT(B) +;; ("f" ?,Ld(B) +;; ("g" ?,LS(B) +;; ("h" ?,Le(B) +;; ("j" ?,Lx(B) +;; ("k" ?,LZ(B) +;; ("l" ?,L[(B) +;; (";" ?,Lg(B) +;; ("'" ?,L~(B) +;; ("\\" ?,LV(B) +;; ("z" ?,Lu(B) +;; ("x" ?,L(B) +;; ("c" ?,Lf(B) +;; ("v" ?,LR(B) +;; ("b" ?,LQ(B) +;; ("n" ?,L](B) +;; ("m" ?,L\(B) +;; ("/" ?-) - ("!" ?!) - ("@" ?\") - ("#" ?#) - ("$" ?$) - ("%" ?%) - ("^" ?&) - ("&" ?') - ("*" ?\() - ("(" ?\)) - (")" ?=) - ("_" ??) - ("+" ?*) - ("~" ?>) - ("Q" ?,L)(B) - ("W" ?,L*(B) - ("E" ?,L5(B) - ("R" ?,L@(B) - ("T" ?,LB(B) - ("Y" ?,L7(B) - ("U" ?,LC(B) - ("I" ?,L8(B) - ("O" ?,L>(B) - ("P" ?,L?(B) - ("{" ?,LH(B) - ("}" ?,L&(B) - ("A" ?,L0(B) - ("S" ?,LA(B) - ("D" ?,L4(B) - ("F" ?,LD(B) - ("G" ?,L3(B) - ("H" ?,LE(B) - ("J" ?,L((B) - ("K" ?,L:(B) - ("L" ?,L;(B) - (":" ?,LG(B) - ("\"" ?,L.(B) - ("|" ?,L6(B) - ("Z" ?,L%(B) - ("X" ?,L/(B) - ("C" ?,LF(B) - ("V" ?,L2(B) - ("B" ?,L1(B) - ("N" ?,L=(B) - ("M" ?,L<(B) - ("<" ?\;) - (">" ?:) - ("?" ?_)) +;; ("@" ?\") +;; ("^" ?&) +;; ("&" ?') +;; ("*" ?\() +;; ("(" ?\)) +;; (")" ?=) +;; ("_" ??) +;; ("+" ?*) +;; ("~" ?>) +;; ("Q" ?,L)(B) +;; ("W" ?,L*(B) +;; ("E" ?,L5(B) +;; ("R" ?,L@(B) +;; ("T" ?,LB(B) +;; ("Y" ?,L7(B) +;; ("U" ?,LC(B) +;; ("I" ?,L8(B) +;; ("O" ?,L>(B) +;; ("P" ?,L?(B) +;; ("{" ?,LH(B) +;; ("}" ?,L&(B) +;; ("A" ?,L0(B) +;; ("S" ?,LA(B) +;; ("D" ?,L4(B) +;; ("F" ?,LD(B) +;; ("G" ?,L3(B) +;; ("H" ?,LE(B) +;; ("J" ?,L((B) +;; ("K" ?,L:(B) +;; ("L" ?,L;(B) +;; (":" ?,LG(B) +;; ("\"" ?,L.(B) +;; ("|" ?,L6(B) +;; ("Z" ?,L%(B) +;; ("X" ?,L/(B) +;; ("C" ?,LF(B) +;; ("V" ?,L2(B) +;; ("B" ?,L1(B) +;; ("N" ?,L=(B) +;; ("M" ?,L<(B) +;; ("<" ?\;) +;; (">" ?:) +;; ("?" ?_)) ;; +;; Alexander Mikhailian reports the opinion of fellow Ukrainian +;; linguist Bogdan Babych <babych@altern.org>: +;; He had seen this layout on some oldish systems but that the vast +;; majority of the population uses a modified version of the M$ Windows +;; layout. In fact, Microsoft shipped for a while a layout that was lacking +;; two characters, precisely the "GHE_WITH_UPTURN" and the apostrophe. The +;; latest versions of Windows software do have the "GHE_WITH_UPTURN" in the +;; ukrainian keyborad layout but the apostrophe is still not there, whereas +;; there is one letter, "Cyrillic_YO", not used in ukrainian. Ukrainians +;; normally replace the "Cyrillic_YO" by the apostrophe sign and live +;; happily with this little change. [See "ukrainian-computer" below.] + +;; Fixme: add GHE_WITH_UPTURN. (quail-define-package "cyrillic-ukrainian" "Ukrainian" ",L6(BU" nil ",L$'5@B7(B-,L&.(B UKRAINIAN (ISO 8859-5 encoding) -Sorry, but 'ghe with upturn' is not included in ISO 8859-5" +Sorry, but 'ghe with upturn' is not included in ISO 8859-5." nil t t t t nil nil nil nil nil t) ;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <> @@ -574,13 +714,123 @@ (">" ?:) ("?" ?_)) + +(quail-define-package + "ukrainian-computer" "Ukrainian" "UK" nil + "$,1(9(F(C(:(5(=(B Ukrainian (Unicode-based for use with KOI8-U encoding)." + nil t t t t nil nil nil nil nil t) + +;; ' 1! 2" 3$,1uV(B 4; 5% 6: 7? 8* 9( 0) -_ =+ +;; $,1(9(B $,1(F(B $,1(C(B $,1(:(B $,1(5(B $,1(=(B $,1(3(B $,1(H(B $,1(I(B $,1(7(B $,1(E(B $,1('(B +;; $,1(D(B $,1(&(B $,1(2(B $,1(0(B $,1(?(B $,1(@(B $,1(>(B $,1(;(B $,1(4(B $,1(6(B $,1($(B $,1)P(B +;; $,1(O(B $,1(G(B $,1(A(B $,1(<(B $,1(8(B $,1(B(B $,1(L(B $,1(1(B $,1(N(B ., + +(quail-define-rules + ("1" ?1) + ("2" ?2) + ("3" ?3) + ("4" ?4) + ("5" ?5) + ("6" ?6) + ("7" ?7) + ("8" ?8) + ("9" ?9) + ("0" ?0) + ("-" ?-) + ("=" ?=) + ("`" ?') + ("q" ?$,1(Y(B) + ("w" ?$,1(f(B) + ("e" ?$,1(c(B) + ("r" ?$,1(Z(B) + ("t" ?$,1(U(B) + ("y" ?$,1(](B) + ("u" ?$,1(S(B) + ("i" ?$,1(h(B) + ("o" ?$,1(i(B) + ("p" ?$,1(W(B) + ("[" ?$,1(e(B) + ("]" ?$,1(w(B) + ("a" ?$,1(d(B) + ("s" ?$,1(v(B) + ("d" ?$,1(R(B) + ("f" ?$,1(P(B) + ("g" ?$,1(_(B) + ("h" ?$,1(`(B) + ("j" ?$,1(^(B) + ("k" ?$,1([(B) + ("l" ?$,1(T(B) + (";" ?$,1(V(B) + ("'" ?$,1(t(B) + ("\\" ?\\) + ("z" ?$,1(o(B) + ("x" ?$,1(g(B) + ("c" ?$,1(a(B) + ("v" ?$,1(\(B) + ("b" ?$,1(X(B) + ("n" ?$,1(b(B) + ("m" ?$,1(l(B) + ("," ?$,1(Q(B) + ("." ?$,1(n(B) + ("/" ?.) + ("!" ?!) + ("@" ?\") + ("#" ?$,1uV(B) + ("$" ?\;) + ("%" ?%) + ("^" ?:) + ("&" ??) + ("*" ?*) + ("(" ?() + (")" ?)) + ("_" ?_) + ("+" ?+) + ("~" ?') + ("Q" ?$,1(9(B) + ("W" ?$,1(F(B) + ("E" ?$,1(C(B) + ("R" ?$,1(:(B) + ("T" ?$,1(5(B) + ("Y" ?$,1(=(B) + ("U" ?$,1(3(B) + ("I" ?$,1(H(B) + ("O" ?$,1(I(B) + ("P" ?$,1(7(B) + ("{" ?$,1(E(B) + ("}" ?$,1('(B) + ("A" ?$,1(D(B) + ("S" ?$,1(&(B) + ("D" ?$,1(2(B) + ("F" ?$,1(0(B) + ("G" ?$,1(?(B) + ("H" ?$,1(@(B) + ("J" ?$,1(>(B) + ("K" ?$,1(;(B) + ("L" ?$,1(4(B) + (":" ?$,1(6(B) + ("\"" ?$,1($(B) + ("Z" ?$,1(O(B) + ("X" ?$,1(G(B) + ("C" ?$,1(A(B) + ("V" ?$,1(<(B) + ("B" ?$,1(8(B) + ("N" ?$,1(B(B) + ("M" ?$,1(L(B) + ("<" ?$,1(1(B) + (">" ?$,1(N(B) + ("?" ?,) + ("\\" ?$,1)Q(B) + ("|" ?$,1)P(B)) ;; +;; Alexander Mikhailian says this is of limited use. It has been +;; popular among emigrants or foreigners who have to type in Cyrillic +;; (mostly Russian) from time to time. (quail-define-package "cyrillic-yawerty" "Cyrillic" ",L6O(B" nil ",LO25@BK(B Roman transcription (ISO 8859-5 encoding) -This layout is based on 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 as follows. @@ -726,10 +976,23 @@ ;; This was provided by Valery Alexeev <valery@domovoy.math.uga.edu>. +;; Ognyan Kulev <ogi@fmi.uni-sofia.bg> wrote: + +;; I would suggest future `cyrillic-translit' to be with the +;; modification of `cyrillic-translit-bulgarian' applied and the +;; latter to disappear. It could be used by people who write +;; bulgarian e-mails with latin letters for kick start (phonetic input +;; method is not so obvious as translit input method but each letter +;; is one keypress and a *lot* of people know it). + +;; Anton Zinoviev <anton@lml.bas.bg> wrote: +;; I would say that the main idea for cyrillic-translit is to be +;; language-independent and universal. It should be able to generate all +;; Cyrillic symbols. (quail-define-package "cyrillic-translit" "Cyrillic" ",L6(Bt" nil "Intuitively transliterated keyboard layout. -Most convenient for entering Russian but all cyrillic characters are included. +Most convenient for entering Russian but all Cyrillic characters are included. Should handle most cases. However: for ,Lf(B (TSE) use \"c\", never \"ts\" ,Li(B (SHCHA = Bulgarian SHT) = \"shch\", \"sj\", \"/sht\" or \"/t\", @@ -743,7 +1006,7 @@ u f h=kh=x c ch sh shch=sj=/s=/sht ~ y ' e' yu=ju ya=ja=q Also included are Ukrainian ,Lt(B (YE) = \"/e\" and ,Lw(B (YI) = \"yi\", -Belorussian ,L~(B (SHORT U) = \"u'\", +Belarusian ,L~(B (SHORT U) = \"u'\", Serbo-Croatian ,Lr(B (DJE) = \"/d\", ,L{(B (CHJE)= \"/ch\", Macedonian ,Ls(B (GJE) = \"/g\", ,Lu(B (DZE) = \"/s\", ,L|(B (KJE) = \"/k\", cyrillic ,Lv(B (I DECIMAL) = \"/i\", ,Lx(B (JE) = \"/j\", @@ -792,89 +1055,28 @@ ("/I" ?,L&(B) ("/J" ?,L((B) ("/L" ?,L)(B) ("/N" ?,L*(B) ("/Z" ?,L/(B) ) +;; Originally from Yudit's `Belarusian input table according to +;; STB955-94 belarusian standard' (not all) by Alexander Mikhailian +;; <mikhailian@altern.org>, subsequently amended by AM. (quail-define-package - "cyrillic-translit-bulgarian" "Bulgarian" ",L6(Btb" nil - "Intuitively transliterated keyboard layout optimized for Bulgarian. -The only difference with cyrillic-translit is that \"sht\" translates as -,Li(B (SHCHA = Bulgarian SHT) insteat of ,Lhb(B (SH+T)." + "belarusian" "Belarusian" "BE" nil + "$,1(9(F(C(:(5(=(B keyboard layout registered as STB955-94 Belarusian standard. +Unicode based." nil t t t t nil nil nil nil nil t) +;; $,1(q(!(B 1! 2" 3N 4; 5% 6: 7? 8* 9( 0) -_ =+ +;; $,1(9(B $,1(F(B $,1(C(B $,1(:(B $,1(5(B $,1(=(B $,1(3(B $,1(H(B $,1(.(B $,1(7(B $,1(E(B ' +;; $,1(D(B $,1(K(B $,1(2(B $,1(0(B $,1(?(B $,1(@(B $,1(>(B $,1(;(B $,1(4(B $,1(6(B $,1(M(B +;; $,1(O(B $,1(G(B $,1(A(B $,1(<(B $,1(&(B $,1(B(B $,1(L(B $,1(1(B $,1(N(B ., + (quail-define-rules - ("a" ?,LP(B)("b" ?,LQ(B) ("v" ?,LR(B) ("w" ?,LR(B) ("g" ?,LS(B) ("d" ?,LT(B) - ("e" ?,LU(B) ("je" ?,LU(B) - ("yo" ?,Lq(B) ("jo" ?,Lq(B) - ("zh" ?,LV(B) ("z" ?,LW(B) ("i" ?,LX(B) - ("j" ?,LY(B) ("j'" ?,LY(B) ("j`" ?,LY(B) ("k" ?,LZ(B) ("l" ?,L[(B) - ("m" ?,L\(B) ("n" ?,L](B) ("o" ?,L^(B) ("p" ?,L_(B) ("r" ?,L`(B) ("s" ?,La(B) ("t" ?,Lb(B) ("u" ?,Lc(B) - ("f" ?,Ld(B) ("x" ?,Le(B) ("h" ?,Le(B) ("kh" ?,Le(B) - ("c" ?,Lf(B) ("ch" ?,Lg(B) - ("sh" ?,Lh(B) - ("shch" ?,Li(B) ("sj" ?,Li(B) - ("/sht" ?,Li(B) ("/t" ?,Li(B) ("sht" ?,Li(B) - ("~" ?,Lj(B) ("y" ?,Lk(B) ("'" ?,Ll(B) ("`" ?,Ll(B) - ("e'" ?,Lm(B) ("e`" ?,Lm(B) ("@" ?,Lm(B) - ("yu" ?,Ln(B) ("ju" ?,Ln(B) - ("ya" ?,Lo(B) ("ja" ?,Lo(B) ("q" ?,Lo(B) - - ("A" ?,L0(B) ("B" ?,L1(B) ("V" ?,L2(B) ("W" ?,L2(B) ("G" ?,L3(B) ("D" ?,L4(B) - ("E" ?,L5(B) ("Je" ?,L5(B) ("JE" ?,L5(B) - ("Yo" ?,L!(B) ("YO" ?,L!(B) ("Jo" ?,L!(B) ("JO" ?,L!(B) - ("Zh" ?,L6(B) ("ZH" ?,L6(B) ("Z" ?,L7(B) ("I" ?,L8(B) - ("J" ?,L9(B) ("J'" ?,L9(B) ("J`" ?,L9(B) ("K" ?,L:(B) ("L" ?,L;(B) - ("M" ?,L<(B) ("N" ?,L=(B) ("O" ?,L>(B) ("P" ?,L?(B) ("R" ?,L@(B) ("S" ?,LA(B) ("T" ?,LB(B) ("U" ?,LC(B) - ("F" ?,LD(B) ("X" ?,LE(B) ("H" ?,LE(B) ("Kh" ?,LE(B) ("KH" ?,LE(B) - ("C" ?,LF(B) ("Ch" ?,LG(B) ("CH" ?,LG(B) - ("Sh" ?,LH(B) ("SH" ?,LH(B) - ("Shch" ?,LI(B) ("SHCH" ?,LI(B) ("Sj" ?,LI(B) ("SJ" ?,LI(B) - ("/Sht" ?,LI(B) ("/SHT" ?,LI(B) ("/T" ?,LI(B) ("Sht" ?,LI(B) ("SHT" ?,LI(B) - ("~~" ",LJ(B") ("Y" ?,LK(B) ("''" ",LL(B") ("E'" ?,LM(B) ("E`" ?,LM(B) - ("Yu" ?,LN(B) ("YU" ?,LN(B) ("Ju" ?,LN(B) ("JU" ?,LN(B) - ("Ya" ?,LO(B) ("YA" ?,LO(B) ("Ja" ?,LO(B) ("JA" ?,LO(B) ("Q" ?,LO(B) - - ("/e" ?,Lt(B) ("yi" ?,Lw(B) ("u'" ?,L~(B) - ("/d" ?,Lr(B) ("/ch" ?,L{(B) - ("/g" ?,Ls(B) ("/s" ?,Lu(B) ("/k" ?,L|(B) - ("/i" ?,Lv(B) ("/j" ?,Lx(B) ("/l" ?,Ly(B) ("/n" ?,Lz(B) ("/z" ?,L(B) - ("/E" ?,L$(B) ("YE" ?,L$(B) ("Yi" ?,L'(B) ("YI" ?,L'(B) ("U'" ?,L.(B) - ("/D" ?,L"(B) ("/Ch" ?,L+(B) ("/CH" ?,L+(B) - ("/G" ?,L#(B) ("/S" ?,L%(B) ("/K" ?,L,(B) - ("/I" ?,L&(B) ("/J" ?,L((B) ("/L" ?,L)(B) ("/N" ?,L*(B) ("/Z" ?,L/(B) -) - -;; From Yudit's `Belarusian input table according to STB955-94 -;; belarusian standard'. Alexander Mikhailian <mikhailian@altern.org> -(quail-define-package - "belarusian" "Belarusian" "$,1(v(B" ; fixme - nil - "Belarusian STB955-94 input, producing Unicode" - nil t t t t nil nil nil nil nil t) - -(quail-define-rules - ("<<" ?,A+(B) - (">>" ?,A;(B) - (",," ?$,1r}(B) - ("``" ?$,1r|(B) - ("C)" ?,A)(B) - ("x)" ?$,1s"(B) - (":)" ?$,2#:(B) - (":(" ?$,2#9(B) - ("C-" ?,A$(B) - ("E-" ?$,1tL(B) - ("L-" ?,A#(B) - ("~" ?$,1(!(B) - ("!" ?!) ("@" ?\") ("#" ?$,1uV(B) ("$" ?\;) ("%" ?%) ("^" ?:) ("&" ??) - ("*" ?*) - ("(" ?\() - (")" ?\)) - ("_" ?_) - ("+" ?+) ("Q" ?$,1(9(B) ("W" ?$,1(F(B) ("E" ?$,1(C(B) @@ -898,7 +1100,7 @@ ("L" ?$,1(4(B) (":" ?$,1(6(B) ("\"" ?$,1(M(B) - ("|" ?/) + ("|" ?|) ("Z" ?$,1(O(B) ("X" ?$,1(G(B) ("C" ?$,1(A(B) @@ -911,18 +1113,6 @@ ("?" ?,) ("`" ?$,1(q(B) - ("1" ?1) - ("2" ?2) - ("3" ?3) - ("4" ?4) - ("5" ?5) - ("6" ?6) - ("7" ?7) - ("8" ?8) - ("9" ?9) - ("0" ?0) - ("-" ?-) - ("=" ?=) ("q" ?$,1(Y(B) ("w" ?$,1(f(B) ("e" ?$,1(c(B) @@ -946,7 +1136,6 @@ ("l" ?$,1(T(B) (";" ?$,1(V(B) ("'" ?$,1(m(B) - ("\\" ?\\) ("z" ?$,1(o(B) ("x" ?$,1(g(B) ("c" ?$,1(a(B) @@ -956,57 +1145,24 @@ ("m" ?$,1(l(B) ("," ?$,1(Q(B) ("." ?$,1(n(B) - ("/" ?.) - - ("D-" ?$,1("(B) - ("G'" ?$,1(#(B) - ("E>" ?$,1($(B) - ("Z>" ?$,1(%(B) - ("I/ " ?$,1(8(B) - ("I:" ?$,1('(B) - ("J<" ?$,1(((B) - ("L>" ?$,1()(B) - ("N>" ?$,1(*(B) - ("C'" ?$,1(+(B) - ("K'" ?$,1(,(B) - ("D>" ?$,1(/(B) - - ("d-" ?$,1(r(B) - ("g'" ?$,1(s(B) - ("e>" ?$,1(t(B) - ("z>" ?$,1(u(B) - ("i/ " ?$,1(X(B) - ("i:" ?$,1(w(B) - ("j<" ?$,1(x(B) - ("l>" ?$,1(y(B) - ("c'" ?$,1({(B) - ("k'" ?$,1(|(B) - ("d>" ?$,1((B) - - ("G`" ?$,1)P(B) - ("g`" ?$,1)Q(B) - ("E<" ?$,1)"(B) - ("e<" ?$,1)#(B) - ("A<" ?$,1)*(B) - ("a<" ?$,1)+(B) - ("F`" ?$,1)2(B) - ("f`" ?$,1)3(B) - ("Y`" ?$,1)4(B) - ("y`" ?$,1)5(B)) + ("/" ?.)) ;; From `Bulgarian-PHO.kmap for Yudit', Alexander Shopov ;; <al_shopov@web.bg>. ;; Extra commentary and the indicator from an independent ;; (cyrillic-iso8859-5) implementation by Ognyan Kulev -;; <ogi@fmi.uni-sofia.bg>. +;; <ogi@fmi.uni-sofia.bg> and name changes from Anton Zinoviev +;; <anton@lml.bas.bg>. (quail-define-package - "bulgarian-pho" "Bulgarian" "$,1(6(1(D(B" + "bulgarian-phonetic" "Bulgarian" "$,1(6(1(D(B" nil - "Bulgarian Phonetic keyboard layout, producing Unicode + "Bulgarian Phonetic keyboard layout, producing Unicode. The layout is similar to `cyrillic-translit', but all Bulgarian -characters are typed with a single key." +characters are typed with a single key. + +Use /& for ,A'(B (Cyrillic paragraph) and /# for $,1uV(B." nil t t t t nil nil nil nil nil t) ;; $,1(O(B $,1(2(B $,1(5(B $,1(@(B $,1(B(B $,1(J(B $,1(C(B $,1(8(B $,1(>(B $,1(?(B $,1(H(B $,1(I(B @@ -1014,6 +1170,8 @@ ;; $,1(N(B $,1(7(B $,1(L(B $,1(F(B $,1(6(B $,1(1(B $,1(=(B $,1(<(B (quail-define-rules + ("/&" ?,A'(B) + ("/#" ?$,1uV(B) ("A" ?$,1(0(B) ("B" ?$,1(1(B) ("W" ?$,1(2(B) @@ -1073,8 +1231,87 @@ ("y" ?$,1(j(B) ("x" ?$,1(l(B) ("\\" ?$,1(n(B) + ("|" ?$,1(N(B) ("q" ?$,1(o(B)) +;; Based on an implementation by Ognyan Kulev <ogi@fmi.uni-sofia.bg>. +;; This follows XKB bg. + +(quail-define-package + "bulgarian-bds" "Bulgarian" "$,1(1(4(A(B" nil + "Bulgarian standard keyboard layout (BDS) + +This keyboard layout is standard for Bulgarian typewriters." + nil t t t t nil nil nil nil nil t) + +;; 1! 2? 3+ 4" 5% 6= 7: 8/ 9_ 0$,1uV(B -I .V +;; ,$,1(k(B $,1(C(B $,1(5(B $,1(8(B $,1(H(B $,1(I(B $,1(:(B $,1(A(B $,1(4(B $,1(7(B $,1(F(B ;,A'(B +;; $,1(l(B $,1(O(B $,1(0(B $,1(>(B $,1(6(B $,1(3(B $,1(B(B $,1(=(B $,1(2(B $,1(<(B $,1(G(B () +;; $,1(N(B $,1(9(B $,1(J(B $,1(M(B $,1(D(B $,1(E(B $,1(?(B $,1(@(B $,1(;(B $,1(1(B + +(quail-define-rules + + ("1" ?1) ("!" ?!) + ("2" ?2) + ("@" ??) + ("3" ?3) + ("#" ?+) + ("4" ?4) + ("$" ?\") + ("5" ?5) ("%" ?%) + ("6" ?6) + ("^" ?=) + ("7" ?7) + ("&" ?:) + ("8" ?8) + ("*" ?/) + ("9" ?9) + ("(" ?_) + ("0" ?0) + (")" ?$,1uV(B) + ("-" ?-) + ("_" ?I) + ("=" ?.) ("+" ?V) + + ("q" ?,) ("Q" ?$,1(k(B) + ("w" ?$,1(c(B) ("W" ?$,1(C(B) + ("e" ?$,1(U(B) ("E" ?$,1(5(B) + ("r" ?$,1(X(B) ("R" ?$,1(8(B) + ("t" ?$,1(h(B) ("T" ?$,1(H(B) + ("y" ?$,1(i(B) ("Y" ?$,1(I(B) + ("u" ?$,1(Z(B) ("U" ?$,1(:(B) + ("i" ?$,1(a(B) ("I" ?$,1(A(B) + ("o" ?$,1(T(B) ("O" ?$,1(4(B) + ("p" ?$,1(W(B) ("P" ?$,1(7(B) + ("[" ?$,1(f(B) ("{" ?$,1(F(B) + ("]" ?\;) + ("}" ?,A'(B) ;; not in XKB's bg + + ("a" ?$,1(l(B) ("A" ?$,1(L(B) + ("s" ?$,1(o(B) ("S" ?$,1(O(B) + ("d" ?$,1(P(B) ("D" ?$,1(0(B) + ("f" ?$,1(^(B) ("F" ?$,1(>(B) + ("g" ?$,1(V(B) ("G" ?$,1(6(B) + ("h" ?$,1(S(B) ("H" ?$,1(3(B) + ("j" ?$,1(b(B) ("J" ?$,1(B(B) + ("k" ?$,1(](B) ("K" ?$,1(=(B) + ("l" ?$,1(R(B) ("L" ?$,1(2(B) + (";" ?$,1(\(B) (":" ?$,1(<(B) + ("'" ?$,1(g(B) ("\"" ?$,1(G(B) + ("`" ?\() ("~" ?\)) + + ("z" ?$,1(n(B) ("Z" ?$,1(N(B) + ("x" ?$,1(Y(B) ("X" ?$,1(9(B) + ("c" ?$,1(j(B) ("C" ?$,1(J(B) + ("v" ?$,1(m(B) ("V" ?$,1(M(B) + ("b" ?$,1(d(B) ("B" ?$,1(D(B) + ("n" ?$,1(e(B) ("N" ?$,1(E(B) + ("m" ?$,1(_(B) ("M" ?$,1(?(B) + ("," ?$,1(`(B) ("<" ?$,1(@(B) + ("." ?$,1([(B) (">" ?$,1(;(B) + ("/" ?$,1(Q(B) ("?" ?$,1(1(B) + ("\\" ?') ("|" ?$,1(K(B)) + ;; Local Variables: ;; coding: iso-2022-7bit ;; End: