cyrillic.el 36 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481
  1. ;;; cyrillic.el --- Quail package for inputting Cyrillic characters
  2. ;; Copyright (C) 1997-1998, 2001-2012 Free Software Foundation, Inc.
  3. ;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
  4. ;; 2006, 2007, 2008, 2009, 2010, 2011
  5. ;; National Institute of Advanced Industrial Science and Technology (AIST)
  6. ;; Registration Number H14PRO021
  7. ;; Author: TAKAHASHI Naoto <ntakahas@m17n.org>
  8. ;; Keywords: multilingual, input method, Cyrillic, i18n
  9. ;; This file is part of GNU Emacs.
  10. ;; GNU Emacs is free software: you can redistribute it and/or modify
  11. ;; it under the terms of the GNU General Public License as published by
  12. ;; the Free Software Foundation, either version 3 of the License, or
  13. ;; (at your option) any later version.
  14. ;; GNU Emacs is distributed in the hope that it will be useful,
  15. ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. ;; GNU General Public License for more details.
  18. ;; You should have received a copy of the GNU General Public License
  19. ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
  20. ;;; Commentary:
  21. ;; These methods use a mixture of 8859-5 and Unicode. Quail, used
  22. ;; with ucs-tables provides support for translating on the fly to
  23. ;; what's appropriate for aa buffer's file coding system, so the
  24. ;; encoding shouldn't matter too much provided it supports the
  25. ;; necessary characters.
  26. ;;; Code:
  27. (require 'quail)
  28. ;; This was `cyrillic-jcuken'. Alexander Mikhailian
  29. ;; <mikhailian@altern.org> says: "cyrillic-jcuken" is actually
  30. ;; russian. It is ok but a bit outdated. This layout has been used
  31. ;; in typewriters for ages but it has been superseded on desktops by
  32. ;; a variation of this layout, implemented in M$ Windows software.
  33. ;; The Windows layout is greatly preferred because of the comma and
  34. ;; period being placed more conveniently and, of course, because of
  35. ;; the popularity of Windows software. This layout is a common option
  36. ;; in X Windows and console layouts for GNU/Linux. [See
  37. ;; `russian-computer' below.]
  38. (quail-define-package
  39. "russian-typewriter" "Russian" ",L69(B" nil
  40. ",L9FC:5=(B Russian typewriter layout (ISO 8859-5 encoding)."
  41. nil t t t t nil nil nil nil nil t)
  42. ;; ,Lp(B1 -2 /3 "4 :5 ,6 .7 _8 ?9 %0 != ;\ |+
  43. ;; ,L9(B ,LF(B ,LC(B ,L:(B ,L5(B ,L=(B ,L3(B ,LH(B ,LI(B ,L7(B ,LE(B ,LJ(B )(
  44. ;; ,LD(B ,LK(B ,L2(B ,L0(B ,L?(B ,L@(B ,L>(B ,L;(B ,L4(B ,L6(B ,LM(B
  45. ;; ,LO(B ,LG(B ,LA(B ,L<(B ,L8(B ,LB(B ,LL(B ,L1(B ,LN(B ,L!(B
  46. (quail-define-rules
  47. ("1" ?,Lp(B)
  48. ("2" ?-)
  49. ("3" ?/)
  50. ("4" ?\")
  51. ("5" ?:)
  52. ("6" ?,)
  53. ("7" ?.)
  54. ("8" ?_)
  55. ("9" ??)
  56. ("0" ?%)
  57. ("-" ?!)
  58. ("=" ?\;)
  59. ("`" ?|)
  60. ("q" ?,LY(B)
  61. ("w" ?,Lf(B)
  62. ("e" ?,Lc(B)
  63. ("r" ?,LZ(B)
  64. ("t" ?,LU(B)
  65. ("y" ?,L](B)
  66. ("u" ?,LS(B)
  67. ("i" ?,Lh(B)
  68. ("o" ?,Li(B)
  69. ("p" ?,LW(B)
  70. ("[" ?,Le(B)
  71. ("]" ?,Lj(B)
  72. ("a" ?,Ld(B)
  73. ("s" ?,Lk(B)
  74. ("d" ?,LR(B)
  75. ("f" ?,LP(B)
  76. ("g" ?,L_(B)
  77. ("h" ?,L`(B)
  78. ("j" ?,L^(B)
  79. ("k" ?,L[(B)
  80. ("l" ?,LT(B)
  81. (";" ?,LV(B)
  82. ("'" ?,Lm(B)
  83. ("\\" ?\))
  84. ("z" ?,Lo(B)
  85. ("x" ?,Lg(B)
  86. ("c" ?,La(B)
  87. ("v" ?,L\(B)
  88. ("b" ?,LX(B)
  89. ("n" ?,Lb(B)
  90. ("m" ?,Ll(B)
  91. ("," ?,LQ(B)
  92. ("." ?,Ln(B)
  93. ("/" ?,Lq(B)
  94. ("!" ?1)
  95. ("@" ?2)
  96. ("#" ?3)
  97. ("$" ?4)
  98. ("%" ?5)
  99. ("^" ?6)
  100. ("&" ?7)
  101. ("*" ?8)
  102. ("(" ?9)
  103. (")" ?0)
  104. ("_" ?=)
  105. ("+" ?\\)
  106. ("~" ?+)
  107. ("Q" ?,L9(B)
  108. ("W" ?,LF(B)
  109. ("E" ?,LC(B)
  110. ("R" ?,L:(B)
  111. ("T" ?,L5(B)
  112. ("Y" ?,L=(B)
  113. ("U" ?,L3(B)
  114. ("I" ?,LH(B)
  115. ("O" ?,LI(B)
  116. ("P" ?,L7(B)
  117. ("{" ?,LE(B)
  118. ("}" ?,LJ(B)
  119. ("A" ?,LD(B)
  120. ("S" ?,LK(B)
  121. ("D" ?,L2(B)
  122. ("F" ?,L0(B)
  123. ("G" ?,L?(B)
  124. ("H" ?,L@(B)
  125. ("J" ?,L>(B)
  126. ("K" ?,L;(B)
  127. ("L" ?,L4(B)
  128. (":" ?,L6(B)
  129. ("\"" ?,LM(B)
  130. ("|" ?\()
  131. ("Z" ?,LO(B)
  132. ("X" ?,LG(B)
  133. ("C" ?,LA(B)
  134. ("V" ?,L<(B)
  135. ("B" ?,L8(B)
  136. ("N" ?,LB(B)
  137. ("M" ?,LL(B)
  138. ("<" ?,L1(B)
  139. (">" ?,LN(B)
  140. ("?" ?,L!(B)
  141. )
  142. ;; Maintain the obsolete name for now.
  143. (push (cons "cyrillic-jcuken"
  144. (cdr (assoc "russian-typewriter" quail-package-alist)))
  145. quail-package-alist)
  146. ;; This needs to be seen by quail-update-leim-list-file, but cannot be
  147. ;; commented out because quail-update-leim-list-file ignores
  148. ;; commented-out lines.
  149. (if nil
  150. (quail-define-package
  151. "cyrillic-jcuken" "Russian" ",L69(B" nil
  152. ",L9FC:5=(B Russian typewriter layout (ISO 8859-5 encoding)."))
  153. ;; See comment above. This is the variant `winkeys' from `ru' in XKB.
  154. (quail-define-package
  155. "russian-computer" "Russian" "RU" nil
  156. ",L9FC:5=(B Russian computer layout"
  157. nil t t t t nil nil nil nil nil t)
  158. ;; 1! 2" 3,Lp(B 4; 5% 6: 7? 8* 9( 0) -_ =+ \/ ,Lq!(B
  159. ;; ,L9(B ,LF(B ,LC(B ,L:(B ,L5(B ,L=(B ,L3(B ,LH(B ,LI(B ,L7(B ,LE(B ,LJ(B
  160. ;; ,LD(B ,LK(B ,L2(B ,L0(B ,L?(B ,L@(B ,L>(B ,L;(B ,L4(B ,L6(B ,LM(B
  161. ;; ,LO(B ,LG(B ,LA(B ,L<(B ,L8(B ,LB(B ,LL(B ,L1(B ,LN(B .,
  162. (quail-define-rules
  163. ("1" ?1)
  164. ("2" ?2)
  165. ("3" ?3)
  166. ("4" ?4)
  167. ("5" ?5)
  168. ("6" ?6)
  169. ("7" ?7)
  170. ("8" ?8)
  171. ("9" ?9)
  172. ("0" ?0)
  173. ("-" ?-)
  174. ("=" ?=)
  175. ("|" ?/)
  176. ("`" ?,Lq(B)
  177. ("q" ?,LY(B)
  178. ("w" ?,Lf(B)
  179. ("e" ?,Lc(B)
  180. ("r" ?,LZ(B)
  181. ("t" ?,LU(B)
  182. ("y" ?,L](B)
  183. ("u" ?,LS(B)
  184. ("i" ?,Lh(B)
  185. ("o" ?,Li(B)
  186. ("p" ?,LW(B)
  187. ("[" ?,Le(B)
  188. ("]" ?,Lj(B)
  189. ("a" ?,Ld(B)
  190. ("s" ?,Lk(B)
  191. ("d" ?,LR(B)
  192. ("f" ?,LP(B)
  193. ("g" ?,L_(B)
  194. ("h" ?,L`(B)
  195. ("j" ?,L^(B)
  196. ("k" ?,L[(B)
  197. ("l" ?,LT(B)
  198. (";" ?,LV(B)
  199. ("'" ?,Lm(B)
  200. ("\\" ?\\)
  201. ("z" ?,Lo(B)
  202. ("x" ?,Lg(B)
  203. ("c" ?,La(B)
  204. ("v" ?,L\(B)
  205. ("b" ?,LX(B)
  206. ("n" ?,Lb(B)
  207. ("m" ?,Ll(B)
  208. ("," ?,LQ(B)
  209. ("." ?,Ln(B)
  210. ("/" ?.)
  211. ("!" ?!)
  212. ("@" ?\")
  213. ("#" ?,Lp(B)
  214. ("$" ?\;)
  215. ("%" ?%)
  216. ("^" ?:)
  217. ("&" ??)
  218. ("*" ?*)
  219. ("(" ?()
  220. (")" ?))
  221. ("_" ?_)
  222. ("+" ?+)
  223. ("~" ?,L!(B)
  224. ("Q" ?,L9(B)
  225. ("W" ?,LF(B)
  226. ("E" ?,LC(B)
  227. ("R" ?,L:(B)
  228. ("T" ?,L5(B)
  229. ("Y" ?,L=(B)
  230. ("U" ?,L3(B)
  231. ("I" ?,LH(B)
  232. ("O" ?,LI(B)
  233. ("P" ?,L7(B)
  234. ("{" ?,LE(B)
  235. ("}" ?,LJ(B)
  236. ("A" ?,LD(B)
  237. ("S" ?,LK(B)
  238. ("D" ?,L2(B)
  239. ("F" ?,L0(B)
  240. ("G" ?,L?(B)
  241. ("H" ?,L@(B)
  242. ("J" ?,L>(B)
  243. ("K" ?,L;(B)
  244. ("L" ?,L4(B)
  245. (":" ?,L6(B)
  246. ("\"" ?,LM(B)
  247. ("|" ?|)
  248. ("Z" ?,LO(B)
  249. ("X" ?,LG(B)
  250. ("C" ?,LA(B)
  251. ("V" ?,L<(B)
  252. ("B" ?,L8(B)
  253. ("N" ?,LB(B)
  254. ("M" ?,LL(B)
  255. ("<" ?,L1(B)
  256. (">" ?,LN(B)
  257. ("?" ?,))
  258. ;; Mikhailian couldn't check the next two.
  259. ;; This seems to have the same layout for letters as mk in XKB, but at
  260. ;; least the top row is different.
  261. (quail-define-package
  262. "cyrillic-macedonian" "Cyrillic" ",L6(BM" nil
  263. ",L)*5@B7(B-,L#,(B keyboard layout based on JUS.I.K1.004"
  264. nil t t t t nil nil nil nil nil t)
  265. ;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <>
  266. ;; ,L)(B ,L*(B ,L5(B ,L@(B ,LB(B ,L7(B ,LC(B ,L8(B ,L>(B ,L?(B ,LH(B ,L#(B
  267. ;; ,L0(B ,LA(B ,L4(B ,LD(B ,L3(B ,LE(B ,L((B ,L:(B ,L;(B ,LG(B ,L,(B ,L6(B
  268. ;; ,L%(B ,L/(B ,LF(B ,L2(B ,L1(B ,L=(B ,L<(B ,; .: -_
  269. (quail-define-rules
  270. ("1" ?1)
  271. ("2" ?2)
  272. ("3" ?3)
  273. ("4" ?4)
  274. ("5" ?5)
  275. ("6" ?6)
  276. ("7" ?7)
  277. ("8" ?8)
  278. ("9" ?9)
  279. ("0" ?0)
  280. ("-" ?/)
  281. ("=" ?+)
  282. ("`" ?<)
  283. ("q" ?,Ly(B)
  284. ("w" ?,Lz(B)
  285. ("e" ?,LU(B)
  286. ("r" ?,L`(B)
  287. ("t" ?,Lb(B)
  288. ("y" ?,LW(B)
  289. ("u" ?,Lc(B)
  290. ("i" ?,LX(B)
  291. ("o" ?,L^(B)
  292. ("p" ?,L_(B)
  293. ("[" ?,Lh(B)
  294. ("]" ?,Ls(B)
  295. ("a" ?,LP(B)
  296. ("s" ?,La(B)
  297. ("d" ?,LT(B)
  298. ("f" ?,Ld(B)
  299. ("g" ?,LS(B)
  300. ("h" ?,Le(B)
  301. ("j" ?,Lx(B)
  302. ("k" ?,LZ(B)
  303. ("l" ?,L[(B)
  304. (";" ?,Lg(B)
  305. ("'" ?,L|(B)
  306. ("\\" ?,LV(B)
  307. ("z" ?,Lu(B)
  308. ("x" ?,L(B)
  309. ("c" ?,Lf(B)
  310. ("v" ?,LR(B)
  311. ("b" ?,LQ(B)
  312. ("n" ?,L](B)
  313. ("m" ?,L\(B)
  314. ("," ?,)
  315. ("." ?.)
  316. ("/" ?-)
  317. ("!" ?!)
  318. ("@" ?\")
  319. ("#" ?#)
  320. ("$" ?$)
  321. ("%" ?%)
  322. ("^" ?&)
  323. ("&" ?')
  324. ("*" ?\()
  325. ("(" ?\))
  326. (")" ?=)
  327. ("_" ??)
  328. ("+" ?*)
  329. ("~" ?>)
  330. ("Q" ?,L)(B)
  331. ("W" ?,L*(B)
  332. ("E" ?,L5(B)
  333. ("R" ?,L@(B)
  334. ("T" ?,LB(B)
  335. ("Y" ?,L7(B)
  336. ("U" ?,LC(B)
  337. ("I" ?,L8(B)
  338. ("O" ?,L>(B)
  339. ("P" ?,L?(B)
  340. ("{" ?,LH(B)
  341. ("}" ?,L#(B)
  342. ("A" ?,L0(B)
  343. ("S" ?,LA(B)
  344. ("D" ?,L4(B)
  345. ("F" ?,LD(B)
  346. ("G" ?,L3(B)
  347. ("H" ?,LE(B)
  348. ("J" ?,L((B)
  349. ("K" ?,L:(B)
  350. ("L" ?,L;(B)
  351. (":" ?,LG(B)
  352. ("\"" ?,L,(B)
  353. ("|" ?,L6(B)
  354. ("Z" ?,L%(B)
  355. ("X" ?,L/(B)
  356. ("C" ?,LF(B)
  357. ("V" ?,L2(B)
  358. ("B" ?,L1(B)
  359. ("N" ?,L=(B)
  360. ("M" ?,L<(B)
  361. ("<" ?\;)
  362. (">" ?:)
  363. ("?" ?_))
  364. ;;
  365. (quail-define-package
  366. "cyrillic-serbian" "Cyrillic" ",L6(BS" nil
  367. ",L)*5@B7(B-,L"+(B keyboard layout based on JUS.I.K1.005"
  368. nil t t t t nil nil nil nil nil t)
  369. ;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <>
  370. ;; ,L)(B ,L*(B ,L5(B ,L@(B ,LB(B ,L7(B ,LC(B ,L8(B ,L>(B ,L?(B ,LH(B ,L"(B
  371. ;; ,L0(B ,LA(B ,L4(B ,LD(B ,L3(B ,LE(B ,L((B ,L:(B ,L;(B ,LG(B ,L+(B ,L6(B
  372. ;; ,L%(B ,L/(B ,LF(B ,L2(B ,L1(B ,L=(B ,L<(B ,; .: -_
  373. (quail-define-rules
  374. ("1" ?1)
  375. ("2" ?2)
  376. ("3" ?3)
  377. ("4" ?4)
  378. ("5" ?5)
  379. ("6" ?6)
  380. ("7" ?7)
  381. ("8" ?8)
  382. ("9" ?9)
  383. ("0" ?0)
  384. ("-" ?/)
  385. ("=" ?+)
  386. ("`" ?<)
  387. ("q" ?,Ly(B)
  388. ("w" ?,Lz(B)
  389. ("e" ?,LU(B)
  390. ("r" ?,L`(B)
  391. ("t" ?,Lb(B)
  392. ("y" ?,LW(B)
  393. ("u" ?,Lc(B)
  394. ("i" ?,LX(B)
  395. ("o" ?,L^(B)
  396. ("p" ?,L_(B)
  397. ("[" ?,Lh(B)
  398. ("]" ?,Lr(B)
  399. ("a" ?,LP(B)
  400. ("s" ?,La(B)
  401. ("d" ?,LT(B)
  402. ("f" ?,Ld(B)
  403. ("g" ?,LS(B)
  404. ("h" ?,Le(B)
  405. ("j" ?,Lx(B)
  406. ("k" ?,LZ(B)
  407. ("l" ?,L[(B)
  408. (";" ?,Lg(B)
  409. ("'" ?,L{(B)
  410. ("\\" ?,LV(B)
  411. ("z" ?,Lu(B)
  412. ("x" ?,L(B)
  413. ("c" ?,Lf(B)
  414. ("v" ?,LR(B)
  415. ("b" ?,LQ(B)
  416. ("n" ?,L](B)
  417. ("m" ?,L\(B)
  418. ("," ?,)
  419. ("." ?.)
  420. ("/" ?-)
  421. ("!" ?!)
  422. ("@" ?\")
  423. ("#" ?#)
  424. ("$" ?$)
  425. ("%" ?%)
  426. ("^" ?&)
  427. ("&" ?')
  428. ("*" ?\()
  429. ("(" ?\))
  430. (")" ?=)
  431. ("_" ??)
  432. ("+" ?*)
  433. ("~" ?>)
  434. ("Q" ?,L)(B)
  435. ("W" ?,L*(B)
  436. ("E" ?,L5(B)
  437. ("R" ?,L@(B)
  438. ("T" ?,LB(B)
  439. ("Y" ?,L7(B)
  440. ("U" ?,LC(B)
  441. ("I" ?,L8(B)
  442. ("O" ?,L>(B)
  443. ("P" ?,L?(B)
  444. ("{" ?,LH(B)
  445. ("}" ?,L"(B)
  446. ("A" ?,L0(B)
  447. ("S" ?,LA(B)
  448. ("D" ?,L4(B)
  449. ("F" ?,LD(B)
  450. ("G" ?,L3(B)
  451. ("H" ?,LE(B)
  452. ("J" ?,L((B)
  453. ("K" ?,L:(B)
  454. ("L" ?,L;(B)
  455. (":" ?,LG(B)
  456. ("\"" ?,L+(B)
  457. ("|" ?,L6(B)
  458. ("Z" ?,L%(B)
  459. ("X" ?,L/(B)
  460. ("C" ?,LF(B)
  461. ("V" ?,L2(B)
  462. ("B" ?,L1(B)
  463. ("N" ?,L=(B)
  464. ("M" ?,L<(B)
  465. ("<" ?\;)
  466. (">" ?:)
  467. ("?" ?_))
  468. ;;
  469. ;; Alexander Mikhailian comments:
  470. ;; Having worked for several years as a Belarusian linguist, I still
  471. ;; can not find the origin of this layout which BTW does include
  472. ;; several characters that are not present in Belarusian and does not
  473. ;; include a few ones that do exist in Belarusian. Besides, the typo
  474. ;; in the name of this layout speaks for itself since Belarusian has
  475. ;; an outdated version of spelling which is "Byelorussian" and not
  476. ;; "beylorussian". I suggest that you just remove this layout.
  477. ;; [`derived from JUS.I.K1' according to an old Mule note -- fx]
  478. ;; (quail-define-package
  479. ;; "cyrillic-beylorussian" "Belarussian" ",L6(BB" nil
  480. ;; ",L)*5@B7(B-,L&.(B BEYLORUSSIAN (ISO 8859-5 encoding)"
  481. ;; nil t t t t nil nil nil nil nil t)
  482. ;; ;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <>
  483. ;; ;; ,L)(B ,L*(B ,L5(B ,L@(B ,LB(B ,L7(B ,LC(B ,L8(B ,L>(B ,L?(B ,LH(B ,L&(B
  484. ;; ;; ,L0(B ,LA(B ,L4(B ,LD(B ,L3(B ,LE(B ,L((B ,L:(B ,L;(B ,LG(B ,L.(B ,L6(B
  485. ;; ;; ,L%(B ,L/(B ,LF(B ,L2(B ,L1(B ,L=(B ,L<(B ,; .: -_
  486. ;; (quail-define-rules
  487. ;; ("-" ?/)
  488. ;; ("=" ?+)
  489. ;; ("`" ?<)
  490. ;; ("q" ?,Ly(B)
  491. ;; ("w" ?,Lz(B)
  492. ;; ("e" ?,LU(B)
  493. ;; ("r" ?,L`(B)
  494. ;; ("t" ?,Lb(B)
  495. ;; ("y" ?,LW(B)
  496. ;; ("u" ?,Lc(B)
  497. ;; ("i" ?,LX(B)
  498. ;; ("o" ?,L^(B)
  499. ;; ("p" ?,L_(B)
  500. ;; ("[" ?,Lh(B)
  501. ;; ("]" ?,Lv(B)
  502. ;; ("a" ?,LP(B)
  503. ;; ("s" ?,La(B)
  504. ;; ("d" ?,LT(B)
  505. ;; ("f" ?,Ld(B)
  506. ;; ("g" ?,LS(B)
  507. ;; ("h" ?,Le(B)
  508. ;; ("j" ?,Lx(B)
  509. ;; ("k" ?,LZ(B)
  510. ;; ("l" ?,L[(B)
  511. ;; (";" ?,Lg(B)
  512. ;; ("'" ?,L~(B)
  513. ;; ("\\" ?,LV(B)
  514. ;; ("z" ?,Lu(B)
  515. ;; ("x" ?,L(B)
  516. ;; ("c" ?,Lf(B)
  517. ;; ("v" ?,LR(B)
  518. ;; ("b" ?,LQ(B)
  519. ;; ("n" ?,L](B)
  520. ;; ("m" ?,L\(B)
  521. ;; ("/" ?-)
  522. ;; ("@" ?\")
  523. ;; ("^" ?&)
  524. ;; ("&" ?')
  525. ;; ("*" ?\()
  526. ;; ("(" ?\))
  527. ;; (")" ?=)
  528. ;; ("_" ??)
  529. ;; ("+" ?*)
  530. ;; ("~" ?>)
  531. ;; ("Q" ?,L)(B)
  532. ;; ("W" ?,L*(B)
  533. ;; ("E" ?,L5(B)
  534. ;; ("R" ?,L@(B)
  535. ;; ("T" ?,LB(B)
  536. ;; ("Y" ?,L7(B)
  537. ;; ("U" ?,LC(B)
  538. ;; ("I" ?,L8(B)
  539. ;; ("O" ?,L>(B)
  540. ;; ("P" ?,L?(B)
  541. ;; ("{" ?,LH(B)
  542. ;; ("}" ?,L&(B)
  543. ;; ("A" ?,L0(B)
  544. ;; ("S" ?,LA(B)
  545. ;; ("D" ?,L4(B)
  546. ;; ("F" ?,LD(B)
  547. ;; ("G" ?,L3(B)
  548. ;; ("H" ?,LE(B)
  549. ;; ("J" ?,L((B)
  550. ;; ("K" ?,L:(B)
  551. ;; ("L" ?,L;(B)
  552. ;; (":" ?,LG(B)
  553. ;; ("\"" ?,L.(B)
  554. ;; ("|" ?,L6(B)
  555. ;; ("Z" ?,L%(B)
  556. ;; ("X" ?,L/(B)
  557. ;; ("C" ?,LF(B)
  558. ;; ("V" ?,L2(B)
  559. ;; ("B" ?,L1(B)
  560. ;; ("N" ?,L=(B)
  561. ;; ("M" ?,L<(B)
  562. ;; ("<" ?\;)
  563. ;; (">" ?:)
  564. ;; ("?" ?_))
  565. ;;
  566. ;; Alexander Mikhailian reports the opinion of fellow Ukrainian
  567. ;; linguist Bogdan Babych <babych@altern.org>:
  568. ;; He had seen this layout on some oldish systems but that the vast
  569. ;; majority of the population uses a modified version of the M$ Windows
  570. ;; layout. In fact, Microsoft shipped for a while a layout that was lacking
  571. ;; two characters, precisely the "GHE_WITH_UPTURN" and the apostrophe. The
  572. ;; latest versions of Windows software do have the "GHE_WITH_UPTURN" in the
  573. ;; ukrainian keyboard layout but the apostrophe is still not there, whereas
  574. ;; there is one letter, "Cyrillic_YO", not used in ukrainian. Ukrainians
  575. ;; normally replace the "Cyrillic_YO" by the apostrophe sign and live
  576. ;; happily with this little change. [See "ukrainian-computer" below.]
  577. ;; Fixme: add GHE_WITH_UPTURN.
  578. (quail-define-package
  579. "cyrillic-ukrainian" "Ukrainian" ",L6(BU" nil
  580. ",L$'5@B7(B-,L&.(B UKRAINIAN
  581. Sorry, but 'ghe with upturn' is not included in ISO 8859-5."
  582. nil t t t t nil nil nil nil nil t)
  583. ;; 1! 2" 3# 4$ 5% 6& 7' 8( 9) 0= /? +* <>
  584. ;; ,L$(B ,L'(B ,L5(B ,L@(B ,LB(B ,L7(B ,LC(B ,L8(B ,L>(B ,L?(B ,LH(B ,L&(B
  585. ;; ,L0(B ,LA(B ,L4(B ,LD(B ,L3(B ,LE(B ,L((B ,L:(B ,L;(B ,LG(B ,L.(B ,L6(B
  586. ;; ,L%(B ,L/(B ,LF(B ,L2(B ,L1(B ,L=(B ,L<(B ,; .: -_
  587. (quail-define-rules
  588. ("1" ?1)
  589. ("2" ?2)
  590. ("3" ?3)
  591. ("4" ?4)
  592. ("5" ?5)
  593. ("6" ?6)
  594. ("7" ?7)
  595. ("8" ?8)
  596. ("9" ?9)
  597. ("0" ?0)
  598. ("-" ?/)
  599. ("=" ?+)
  600. ("`" ?<)
  601. ("q" ?,Lt(B)
  602. ("w" ?,Lw(B)
  603. ("e" ?,LU(B)
  604. ("r" ?,L`(B)
  605. ("t" ?,Lb(B)
  606. ("y" ?,LW(B)
  607. ("u" ?,Lc(B)
  608. ("i" ?,LX(B)
  609. ("o" ?,L^(B)
  610. ("p" ?,L_(B)
  611. ("[" ?,Lh(B)
  612. ("]" ?,Lv(B)
  613. ("a" ?,LP(B)
  614. ("s" ?,La(B)
  615. ("d" ?,LT(B)
  616. ("f" ?,Ld(B)
  617. ("g" ?,LS(B)
  618. ("h" ?,Le(B)
  619. ("j" ?,Lx(B)
  620. ("k" ?,LZ(B)
  621. ("l" ?,L[(B)
  622. (";" ?,Lg(B)
  623. ("'" ?,L~(B)
  624. ("\\" ?,LV(B)
  625. ("z" ?,Lu(B)
  626. ("x" ?,L(B)
  627. ("c" ?,Lf(B)
  628. ("v" ?,LR(B)
  629. ("b" ?,LQ(B)
  630. ("n" ?,L](B)
  631. ("m" ?,L\(B)
  632. ("," ?,)
  633. ("." ?.)
  634. ("/" ?-)
  635. ("!" ?!)
  636. ("@" ?\")
  637. ("#" ?#)
  638. ("$" ?$)
  639. ("%" ?%)
  640. ("^" ?&)
  641. ("&" ?')
  642. ("*" ?\()
  643. ("(" ?\))
  644. (")" ?=)
  645. ("_" ??)
  646. ("+" ?*)
  647. ("~" ?>)
  648. ("Q" ?,L$(B)
  649. ("W" ?,L'(B)
  650. ("E" ?,L5(B)
  651. ("R" ?,L@(B)
  652. ("T" ?,LB(B)
  653. ("Y" ?,L7(B)
  654. ("U" ?,LC(B)
  655. ("I" ?,L8(B)
  656. ("O" ?,L>(B)
  657. ("P" ?,L?(B)
  658. ("{" ?,LH(B)
  659. ("}" ?,L&(B)
  660. ("A" ?,L0(B)
  661. ("S" ?,LA(B)
  662. ("D" ?,L4(B)
  663. ("F" ?,LD(B)
  664. ("G" ?,L3(B)
  665. ("H" ?,LE(B)
  666. ("J" ?,L((B)
  667. ("K" ?,L:(B)
  668. ("L" ?,L;(B)
  669. (":" ?,LG(B)
  670. ("\"" ?,L.(B)
  671. ("|" ?,L6(B)
  672. ("Z" ?,L%(B)
  673. ("X" ?,L/(B)
  674. ("C" ?,LF(B)
  675. ("V" ?,L2(B)
  676. ("B" ?,L1(B)
  677. ("N" ?,L=(B)
  678. ("M" ?,L<(B)
  679. ("<" ?\;)
  680. (">" ?:)
  681. ("?" ?_))
  682. (quail-define-package
  683. "ukrainian-computer" "Ukrainian" "UK" nil
  684. "$,1(9(F(C(:(5(=(B Ukrainian (Unicode-based for use with KOI8-U encoding)."
  685. nil t t t t nil nil nil nil nil t)
  686. ;; ' 1! 2" 3$,1uV(B 4; 5% 6: 7? 8* 9( 0) -_ =+
  687. ;; $,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
  688. ;; $,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
  689. ;; $,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 .,
  690. (quail-define-rules
  691. ("1" ?1)
  692. ("2" ?2)
  693. ("3" ?3)
  694. ("4" ?4)
  695. ("5" ?5)
  696. ("6" ?6)
  697. ("7" ?7)
  698. ("8" ?8)
  699. ("9" ?9)
  700. ("0" ?0)
  701. ("-" ?-)
  702. ("=" ?=)
  703. ("`" ?')
  704. ("q" ?$,1(Y(B)
  705. ("w" ?$,1(f(B)
  706. ("e" ?$,1(c(B)
  707. ("r" ?$,1(Z(B)
  708. ("t" ?$,1(U(B)
  709. ("y" ?$,1(](B)
  710. ("u" ?$,1(S(B)
  711. ("i" ?$,1(h(B)
  712. ("o" ?$,1(i(B)
  713. ("p" ?$,1(W(B)
  714. ("[" ?$,1(e(B)
  715. ("]" ?$,1(w(B)
  716. ("a" ?$,1(d(B)
  717. ("s" ?$,1(v(B)
  718. ("d" ?$,1(R(B)
  719. ("f" ?$,1(P(B)
  720. ("g" ?$,1(_(B)
  721. ("h" ?$,1(`(B)
  722. ("j" ?$,1(^(B)
  723. ("k" ?$,1([(B)
  724. ("l" ?$,1(T(B)
  725. (";" ?$,1(V(B)
  726. ("'" ?$,1(t(B)
  727. ("z" ?$,1(o(B)
  728. ("x" ?$,1(g(B)
  729. ("c" ?$,1(a(B)
  730. ("v" ?$,1(\(B)
  731. ("b" ?$,1(X(B)
  732. ("n" ?$,1(b(B)
  733. ("m" ?$,1(l(B)
  734. ("," ?$,1(Q(B)
  735. ("." ?$,1(n(B)
  736. ("/" ?.)
  737. ("!" ?!)
  738. ("@" ?\")
  739. ("#" ?$,1uV(B)
  740. ("$" ?\;)
  741. ("%" ?%)
  742. ("^" ?:)
  743. ("&" ??)
  744. ("*" ?*)
  745. ("(" ?()
  746. (")" ?))
  747. ("_" ?_)
  748. ("+" ?+)
  749. ("~" ?')
  750. ("Q" ?$,1(9(B)
  751. ("W" ?$,1(F(B)
  752. ("E" ?$,1(C(B)
  753. ("R" ?$,1(:(B)
  754. ("T" ?$,1(5(B)
  755. ("Y" ?$,1(=(B)
  756. ("U" ?$,1(3(B)
  757. ("I" ?$,1(H(B)
  758. ("O" ?$,1(I(B)
  759. ("P" ?$,1(7(B)
  760. ("{" ?$,1(E(B)
  761. ("}" ?$,1('(B)
  762. ("A" ?$,1(D(B)
  763. ("S" ?$,1(&(B)
  764. ("D" ?$,1(2(B)
  765. ("F" ?$,1(0(B)
  766. ("G" ?$,1(?(B)
  767. ("H" ?$,1(@(B)
  768. ("J" ?$,1(>(B)
  769. ("K" ?$,1(;(B)
  770. ("L" ?$,1(4(B)
  771. (":" ?$,1(6(B)
  772. ("\"" ?$,1($(B)
  773. ("Z" ?$,1(O(B)
  774. ("X" ?$,1(G(B)
  775. ("C" ?$,1(A(B)
  776. ("V" ?$,1(<(B)
  777. ("B" ?$,1(8(B)
  778. ("N" ?$,1(B(B)
  779. ("M" ?$,1(L(B)
  780. ("<" ?$,1(1(B)
  781. (">" ?$,1(N(B)
  782. ("?" ?,)
  783. ("\\" ?$,1)Q(B)
  784. ("|" ?$,1)P(B))
  785. ;;
  786. ;; Alexander Mikhailian says this is of limited use. It has been
  787. ;; popular among emigrants or foreigners who have to type in Cyrillic
  788. ;; (mostly Russian) from time to time.
  789. (quail-define-package
  790. "cyrillic-yawerty" "Cyrillic" ",L6O(B" nil
  791. ",LO25@BK(B Roman transcription
  792. This layout is based on Roman transcription by phonemic resemblance.
  793. When preceded by a '/', the second and the third rows (number key row) change
  794. as follows.
  795. keytop | Q W E R T Y U I O P A S D
  796. --------+---------------------------------------
  797. input | ,L"(B ,L#(B ,L$(B ,L%(B ,L&(B ,L'(B ,L((B ,L)(B ,L*(B ,L+(B ,L,(B ,L.(B ,L/(B"
  798. nil t t t t nil nil nil nil nil t)
  799. ;; 1! 2,Lq(B 3,Lj(B 4,L!(B 5% 6^ 7& 8* 9( 0) -_ ,LG(B ,LN(B
  800. ;; ,LO(B ,L2(B ,L5(B ,L@(B ,LB(B ,LK(B ,LC(B ,L8(B ,L>(B ,L?(B ,LH(B ,LI(B
  801. ;; ,L0(B ,LA(B ,L4(B ,LD(B ,L3(B ,LE(B ,L9(B ,L:(B ,L;(B ;: '" ,LM(B
  802. ;; ,L7(B ,LL(B ,LF(B ,L6(B ,L1(B ,L=(B ,L<(B ,< .> /?
  803. ;; 1! 2,Lq(B 3,Lj(B 4,L!(B 5% 6^ 7& 8* 9( 0) -_ ,LG(B ,LN(B
  804. ;; ,L"(B ,L#(B ,L$(B ,L%(B ,L&(B ,L'(B ,L((B ,L)(B ,L*(B ,L+(B ,LH(B ,LI(B
  805. ;; ,L,(B ,L.(B ,L/(B ,LD(B ,L3(B ,LE(B ,L9(B ,L:(B ,L;(B ;: '" ,LM(B
  806. ;; ,L7(B ,LL(B ,LF(B ,L6(B ,L1(B ,L=(B ,L<(B ,< .> /?
  807. (quail-define-rules
  808. ("1" ?1)
  809. ("2" ?2)
  810. ("3" ?3)
  811. ("4" ?4)
  812. ("5" ?5)
  813. ("6" ?6)
  814. ("7" ?7)
  815. ("8" ?8)
  816. ("9" ?9)
  817. ("0" ?0)
  818. ("-" ?-)
  819. ("=" ?,Lg(B)
  820. ("`" ?,Ln(B)
  821. ("q" ?,Lo(B)
  822. ("w" ?,LR(B)
  823. ("e" ?,LU(B)
  824. ("r" ?,L`(B)
  825. ("t" ?,Lb(B)
  826. ("y" ?,Lk(B)
  827. ("u" ?,Lc(B)
  828. ("i" ?,LX(B)
  829. ("o" ?,L^(B)
  830. ("p" ?,L_(B)
  831. ("[" ?,Lh(B)
  832. ("]" ?,Li(B)
  833. ("a" ?,LP(B)
  834. ("s" ?,La(B)
  835. ("d" ?,LT(B)
  836. ("f" ?,Ld(B)
  837. ("g" ?,LS(B)
  838. ("h" ?,Le(B)
  839. ("j" ?,LY(B)
  840. ("k" ?,LZ(B)
  841. ("l" ?,L[(B)
  842. (";" ?\;)
  843. ("'" ?')
  844. ("\\" ?,Lm(B)
  845. ("z" ?,LW(B)
  846. ("x" ?,Ll(B)
  847. ("c" ?,Lf(B)
  848. ("v" ?,LV(B)
  849. ("b" ?,LQ(B)
  850. ("n" ?,L](B)
  851. ("m" ?,L\(B)
  852. ("," ?,)
  853. ("." ?.)
  854. ("/" ?/)
  855. ("!" ?!)
  856. ("@" ?,Lq(B)
  857. ("#" ?,Lj(B)
  858. ("$" ?,L!(B)
  859. ("%" ?%)
  860. ("^" ?^)
  861. ("&" ?&)
  862. ("*" ?*)
  863. ("(" ?\()
  864. (")" ?\))
  865. ("_" ?_)
  866. ("+" ?,LG(B)
  867. ("~" ?,LN(B)
  868. ("Q" ?,LO(B)
  869. ("W" ?,L2(B)
  870. ("E" ?,L5(B)
  871. ("R" ?,L@(B)
  872. ("T" ?,LB(B)
  873. ("Y" ?,LK(B)
  874. ("U" ?,LC(B)
  875. ("I" ?,L8(B)
  876. ("O" ?,L>(B)
  877. ("P" ?,L?(B)
  878. ("{" ?,LH(B)
  879. ("}" ?,LI(B)
  880. ("A" ?,L0(B)
  881. ("S" ?,LA(B)
  882. ("D" ?,L4(B)
  883. ("F" ?,LD(B)
  884. ("G" ?,L3(B)
  885. ("H" ?,LE(B)
  886. ("J" ?,L9(B)
  887. ("K" ?,L:(B)
  888. ("L" ?,L;(B)
  889. (":" ?:)
  890. ("\"" ?\")
  891. ("|" ?,LM(B)
  892. ("Z" ?,L7(B)
  893. ("X" ?,LL(B)
  894. ("C" ?,LF(B)
  895. ("V" ?,L6(B)
  896. ("B" ?,L1(B)
  897. ("N" ?,L=(B)
  898. ("M" ?,L<(B)
  899. ("<" ?<)
  900. (">" ?>)
  901. ("?" ??)
  902. ("/q" ?,Lr(B)
  903. ("/w" ?,Ls(B)
  904. ("/e" ?,Lt(B)
  905. ("/r" ?,Lu(B)
  906. ("/t" ?,Lv(B)
  907. ("/y" ?,Lw(B)
  908. ("/u" ?,Lx(B)
  909. ("/i" ?,Ly(B)
  910. ("/o" ?,Lz(B)
  911. ("/p" ?,L{(B)
  912. ("/a" ?,L|(B)
  913. ("/s" ?,L~(B)
  914. ("/d" ?,L(B)
  915. ("/Q" ?,L"(B)
  916. ("/W" ?,L#(B)
  917. ("/E" ?,L$(B)
  918. ("/R" ?,L%(B)
  919. ("/T" ?,L&(B)
  920. ("/Y" ?,L'(B)
  921. ("/U" ?,L((B)
  922. ("/I" ?,L)(B)
  923. ("/O" ?,L*(B)
  924. ("/P" ?,L+(B)
  925. ("/A" ?,L,(B)
  926. ("/S" ?,L.(B)
  927. ("/D" ?,L/(B))
  928. ;; This was provided by Valery Alexeev <valery@domovoy.math.uga.edu>.
  929. ;; Ognyan Kulev <ogi@fmi.uni-sofia.bg> wrote:
  930. ;; I would suggest future `cyrillic-translit' to be with the
  931. ;; modification of `cyrillic-translit-bulgarian' applied and the
  932. ;; latter to disappear. It could be used by people who write
  933. ;; bulgarian e-mails with latin letters for kick start (phonetic input
  934. ;; method is not so obvious as translit input method but each letter
  935. ;; is one keypress and a *lot* of people know it).
  936. ;; Anton Zinoviev <anton@lml.bas.bg> wrote:
  937. ;; I would say that the main idea for cyrillic-translit is to be
  938. ;; language-independent and universal. It should be able to generate all
  939. ;; Cyrillic symbols.
  940. (quail-define-package
  941. "cyrillic-translit" "Cyrillic" ",L6(Bt" t
  942. "Intuitively transliterated keyboard layout.
  943. Most convenient for entering Russian, but all Cyrillic characters
  944. are included. Should handle most cases. However:
  945. for ,Lf(B (TSE) use \"c\", never \"ts\"
  946. ,Li(B (SHCHA = Bulgarian SHT) = \"shch\", \"sj\", \"/sht\" or \"/t\",
  947. ,Lm(B (REVERSE ROUNDED E) = \"e\\\"
  948. ,Le(B (KHA) when after ,La(B (S) = \"x\" or \"kh\"
  949. ,Lj(B (HARD SIGN) = \"~\", ,LJ(B (CAPITAL HARD SIGN) = \"~~\",
  950. ,Ll(B (SOFT SIGN) = \"'\", ,LL(B (CAPITAL SOFT SIGN) = \"''\",
  951. ,Lo(B (YA) = \"ya\", \"ja\" or \"q\".
  952. Russian alphabet: a b v=w g d e yo=jo zh z i j=j' k l m n o p r s t
  953. u f h=kh=x c ch sh shch=sj=/s=/sht ~ y ' e\\ yu=ju ya=ja=q
  954. Also included are Ukrainian ,Lt(B (YE) = \"/e\", ,Lw(B (YI) = \"yi\",
  955. $,1)Q(B (GHE WITH UPTURN) = \"g'\",
  956. Belarusian ,L~(B (SHORT U) = \"u~\",
  957. Serbo-Croatian ,Lr(B (DJE) = \"/d\", ,L{(B (CHJE)= \"/ch\",
  958. Macedonian ,Ls(B (GJE) = \"/g\", ,Lu(B (DZE) = \"/s\", ,L|(B (KJE) = \"/k\",
  959. cyrillic ,Lv(B (I DECIMAL) = \"/i\", ,Lx(B (JE) = \"/j\",
  960. ,Ly(B (LJE) = \"/l\", ,Lz(B (NJE) = \"/n\" and ,L(B (DZE) =\"/z\"."
  961. nil t t t t nil nil nil nil nil t)
  962. (quail-define-rules
  963. ("a" ?,LP(B) ("b" ?,LQ(B) ("v" ?,LR(B) ("w" ?,LR(B) ("g" ?,LS(B) ("d" ?,LT(B)
  964. ("e" ?,LU(B) ("je" ?,LU(B)
  965. ("yo" ?,Lq(B) ("jo" ?,Lq(B)
  966. ("zh" ?,LV(B) ("z" ?,LW(B) ("i" ?,LX(B)
  967. ("j" ?,LY(B) ("j'" ?,LY(B) ("j`" ?,LY(B) ("k" ?,LZ(B) ("l" ?,L[(B)
  968. ("m" ?,L\(B) ("n" ?,L](B) ("o" ?,L^(B) ("p" ?,L_(B) ("r" ?,L`(B) ("s" ?,La(B) ("t" ?,Lb(B) ("u" ?,Lc(B)
  969. ("f" ?,Ld(B) ("x" ?,Le(B) ("h" ?,Le(B) ("kh" ?,Le(B)
  970. ("c" ?,Lf(B) ("ch" ?,Lg(B)
  971. ("sh" ?,Lh(B)
  972. ("shch" ?,Li(B) ("sj" ?,Li(B)
  973. ("/sht" ?,Li(B) ("/t" ?,Li(B)
  974. ("~" ?,Lj(B) ("y" ?,Lk(B) ("'" ?,Ll(B) ("`" ?,Ll(B)
  975. ("e\\" ?,Lm(B) ("e'" ?,Lm(B) ("e`" ?,Lm(B) ("@" ?,Lm(B)
  976. ("yu" ?,Ln(B) ("ju" ?,Ln(B)
  977. ("ya" ?,Lo(B) ("ja" ?,Lo(B) ("q" ?,Lo(B)
  978. ("A" ?,L0(B) ("B" ?,L1(B) ("V" ?,L2(B) ("W" ?,L2(B) ("G" ?,L3(B) ("D" ?,L4(B)
  979. ("E" ?,L5(B) ("Je" ?,L5(B) ("JE" ?,L5(B)
  980. ("Yo" ?,L!(B) ("YO" ?,L!(B) ("Jo" ?,L!(B) ("JO" ?,L!(B)
  981. ("Zh" ?,L6(B) ("ZH" ?,L6(B) ("Z" ?,L7(B) ("I" ?,L8(B)
  982. ("J" ?,L9(B) ("J'" ?,L9(B) ("J`" ?,L9(B) ("K" ?,L:(B) ("L" ?,L;(B)
  983. ("M" ?,L<(B) ("N" ?,L=(B) ("O" ?,L>(B) ("P" ?,L?(B) ("R" ?,L@(B) ("S" ?,LA(B) ("T" ?,LB(B) ("U" ?,LC(B)
  984. ("F" ?,LD(B) ("X" ?,LE(B) ("H" ?,LE(B) ("Kh" ?,LE(B) ("KH" ?,LE(B)
  985. ("C" ?,LF(B) ("Ch" ?,LG(B) ("CH" ?,LG(B)
  986. ("Sh" ?,LH(B) ("SH" ?,LH(B)
  987. ("Shch" ?,LI(B) ("SHCH" ?,LI(B) ("Sj" ?,LI(B) ("SJ" ?,LI(B)
  988. ("/Sht" ?,LI(B) ("/SHT" ?,LI(B) ("/T" ?,LI(B)
  989. ("~~" ?,LJ(B) ("Y" ?,LK(B) ("''" ?,LL(B)
  990. ("E\\" ?,LM(B) ("E'" ?,LM(B) ("E`" ?,LM(B) ("@@" ?,LM(B)
  991. ("Yu" ?,LN(B) ("YU" ?,LN(B) ("Ju" ?,LN(B) ("JU" ?,LN(B)
  992. ("Ya" ?,LO(B) ("YA" ?,LO(B) ("Ja" ?,LO(B) ("JA" ?,LO(B) ("Q" ?,LO(B)
  993. ("/e" ?,Lt(B) ("yi" ?,Lw(B) ("u'" ?,L~(B) ("u~" ?,L~(B)
  994. ("g'" ?$,1)Q(B)
  995. ("/d" ?,Lr(B) ("/ch" ?,L{(B)
  996. ("/g" ?,Ls(B) ("/s" ?,Lu(B) ("/k" ?,L|(B)
  997. ("/i" ?,Lv(B) ("/j" ?,Lx(B) ("/l" ?,Ly(B) ("/n" ?,Lz(B) ("/z" ?,L(B)
  998. ("/E" ?,L$(B) ("YE" ?,L$(B) ("Yi" ?,L'(B) ("YI" ?,L'(B) ("U'" ?,L.(B) ("U~" ?,L.(B)
  999. ("G'" ?$,1)P(B)
  1000. ("/D" ?,L"(B) ("/Ch" ?,L+(B) ("/CH" ?,L+(B)
  1001. ("/G" ?,L#(B) ("/S" ?,L%(B) ("/K" ?,L,(B)
  1002. ("/I" ?,L&(B) ("/J" ?,L((B) ("/L" ?,L)(B) ("/N" ?,L*(B) ("/Z" ?,L/(B)
  1003. ;; Combining accents as a separate character
  1004. ("//'" ?$(O+Z(B) ("//`" ?$(O+\(B)
  1005. ;; In the following two rules the accent is not a separate character
  1006. ("i`" ?$,1(}(B) ("I`" ?$,1(-(B)
  1007. ("/-" ?$(G!9(B) ;; EN DASH
  1008. ("/--" ?$(G!7(B) ;; EM DASH
  1009. ("/*" ?$(O#@(B) ;; BULLET
  1010. ("/." ?$,1s$(B) ;; ONE DOT LEADER
  1011. ("/.." ?$(G!-(B) ;; TWO DOT LEADER
  1012. ("/..." ?$A!-(B) ;; HORIZONTAL ELLIPSIS
  1013. ("/,," ?,Y%(B) ;; DOUBLE LOW-9 QUOTATION MARK
  1014. ("/," ?$,1rz(B) ;; SINGLE LOW-9 QUOTATION MARK
  1015. ("/''" ?,Y!(B) ;; RIGHT DOUBLE QUOTATION MARK
  1016. ("/'" ?,F"(B) ;; RIGHT SINGLE QUOTATION MARK
  1017. ("/``" ?,Y4(B) ;; LEFT DOUBLE QUOTATION MARK
  1018. ("/`" ?,F!(B) ;; LEFT SINGLE QUOTATION MARK
  1019. ("/<<" ?,A+(B) ;; LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
  1020. ("/>>" ?,A;(B) ;; RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
  1021. ("/&" ?,A'(B)
  1022. ("/ab" ?,A'(B) ; _,LPQ(B_,LWPf(B
  1023. ("/pa" ?,A'(B) ; _pa_ragraph
  1024. ("/#" ?,Lp(B)
  1025. ("/no" ?,Lp(B) ; _,L]^(B_,L\U`(B
  1026. ("/c" ?,A)(B)
  1027. ("/tm" ?$(D"o(B)
  1028. ("/reg" ?,A.(B)
  1029. ("/eu" ?,b$(B)
  1030. ("/ce" ?,A"(B)
  1031. ;; fractions
  1032. ("/78" ?$(C(~(B)
  1033. ("/58" ?$(C(}(B)
  1034. ("/38" ?$(C(|(B)
  1035. ("/18" ?$(C({(B)
  1036. ("/56" ?$,1v:(B)
  1037. ("/16" ?$,1v9(B)
  1038. ("/45" ?$,1v8(B)
  1039. ("/35" ?$,1v7(B)
  1040. ("/25" ?$,1v6(B)
  1041. ("/15" ?$(O'z(B)
  1042. ("/23" ?$(O'y(B)
  1043. ("/13" ?$(O'x(B)
  1044. ("/34" ?,A>(B)
  1045. ("/12" ?,A=(B)
  1046. ("/14" ?,A<(B)
  1047. ;; Roman numerals, commonly used for months and section/subsection numbers
  1048. ("/RI" ?$A"q(B)
  1049. ("/RII" ?$A"r(B)
  1050. ("/RIII" ?$A"s(B)
  1051. ("/RIV" ?$A"t(B)
  1052. ("/RV" ?$A"u(B)
  1053. ("/RVI" ?$A"v(B)
  1054. ("/RVII" ?$A"w(B)
  1055. ("/RVIII" ?$A"x(B)
  1056. ("/RIX" ?$A"y(B)
  1057. ("/RX" ?$A"z(B)
  1058. ("/RXI" ?$A"{(B)
  1059. ("/RXII" ?$A"|(B)
  1060. ("/ri" ?$(G&5(B)
  1061. ("/rii" ?$(G&6(B)
  1062. ("/riii" ?$(G&7(B)
  1063. ("/riv" ?$(G&8(B)
  1064. ("/rv" ?$(G&9(B)
  1065. ("/rvi" ?$(G&:(B)
  1066. ("/rvii" ?$(G&;(B)
  1067. ("/rviii" ?$(G&<(B)
  1068. ("/rix" ?$(G&=(B)
  1069. ("/rx" ?$(G&>(B)
  1070. ("/rxi" ?$(O,?(B)
  1071. ("/rxii" ?$(O,@(B)
  1072. )
  1073. ;; Originally from Yudit's `Belarusian input table according to
  1074. ;; STB955-94 belarusian standard' (not all) by Alexander Mikhailian
  1075. ;; <mikhailian@altern.org>, subsequently amended by AM.
  1076. (quail-define-package
  1077. "belarusian" "Belarusian" "BE" nil
  1078. "$,1(9(F(C(:(5(=(B keyboard layout registered as STB955-94 Belarusian standard.
  1079. Unicode based."
  1080. nil t t t t nil nil nil nil nil t)
  1081. ;; $,1(q(!(B 1! 2" 3N 4; 5% 6: 7? 8* 9( 0) -_ =+
  1082. ;; $,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 '
  1083. ;; $,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
  1084. ;; $,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 .,
  1085. (quail-define-rules
  1086. ("~" ?$,1(!(B)
  1087. ("@" ?\")
  1088. ("#" ?$,1uV(B)
  1089. ("$" ?\;)
  1090. ("%" ?%)
  1091. ("^" ?:)
  1092. ("&" ??)
  1093. ("Q" ?$,1(9(B)
  1094. ("W" ?$,1(F(B)
  1095. ("E" ?$,1(C(B)
  1096. ("R" ?$,1(:(B)
  1097. ("T" ?$,1(5(B)
  1098. ("Y" ?$,1(=(B)
  1099. ("U" ?$,1(3(B)
  1100. ("I" ?$,1(H(B)
  1101. ("O" ?$,1(.(B)
  1102. ("P" ?$,1(7(B)
  1103. ("{" ?$,1(E(B)
  1104. ("}" ?')
  1105. ("A" ?$,1(D(B)
  1106. ("S" ?$,1(K(B)
  1107. ("D" ?$,1(2(B)
  1108. ("F" ?$,1(0(B)
  1109. ("G" ?$,1(?(B)
  1110. ("H" ?$,1(@(B)
  1111. ("J" ?$,1(>(B)
  1112. ("K" ?$,1(;(B)
  1113. ("L" ?$,1(4(B)
  1114. (":" ?$,1(6(B)
  1115. ("\"" ?$,1(M(B)
  1116. ("|" ?|)
  1117. ("Z" ?$,1(O(B)
  1118. ("X" ?$,1(G(B)
  1119. ("C" ?$,1(A(B)
  1120. ("V" ?$,1(<(B)
  1121. ("B" ?$,1(&(B)
  1122. ("N" ?$,1(B(B)
  1123. ("M" ?$,1(L(B)
  1124. ("<" ?$,1(1(B)
  1125. (">" ?$,1(N(B)
  1126. ("?" ?,)
  1127. ("`" ?$,1(q(B)
  1128. ("q" ?$,1(Y(B)
  1129. ("w" ?$,1(f(B)
  1130. ("e" ?$,1(c(B)
  1131. ("r" ?$,1(Z(B)
  1132. ("t" ?$,1(U(B)
  1133. ("y" ?$,1(](B)
  1134. ("u" ?$,1(S(B)
  1135. ("i" ?$,1(h(B)
  1136. ("o" ?$,1(~(B)
  1137. ("p" ?$,1(W(B)
  1138. ("[" ?$,1(e(B)
  1139. ("]" ?')
  1140. ("a" ?$,1(d(B)
  1141. ("s" ?$,1(k(B)
  1142. ("d" ?$,1(R(B)
  1143. ("f" ?$,1(P(B)
  1144. ("g" ?$,1(_(B)
  1145. ("h" ?$,1(`(B)
  1146. ("j" ?$,1(^(B)
  1147. ("k" ?$,1([(B)
  1148. ("l" ?$,1(T(B)
  1149. (";" ?$,1(V(B)
  1150. ("'" ?$,1(m(B)
  1151. ("z" ?$,1(o(B)
  1152. ("x" ?$,1(g(B)
  1153. ("c" ?$,1(a(B)
  1154. ("v" ?$,1(\(B)
  1155. ("b" ?$,1(v(B)
  1156. ("n" ?$,1(b(B)
  1157. ("m" ?$,1(l(B)
  1158. ("," ?$,1(Q(B)
  1159. ("." ?$,1(n(B)
  1160. ("/" ?.))
  1161. (quail-define-package
  1162. "bulgarian-alt-phonetic" "Bulgarian" "$,1(1(=(D(B"
  1163. nil
  1164. "Bulgarian alternative Phonetic keyboard layout, producing Unicode.
  1165. This phonetic layout replaces all the Latin letters with Bulgarian
  1166. \(Cyrillic\) letters based on similarities in their pronunciation or look.
  1167. Note that, since the letters ',Li(B', ',Ll(B', ',Ln(B' and ',Lo(B' are attached to the
  1168. ']', '\', '`' and '[' keys respectively, Caps Lock does not affect them."
  1169. nil t t t t nil nil nil nil nil t)
  1170. ;; $,1(N(B 1! 2@ 3$,1uV(B 4$ 5% 6$,1tL(B 7,A'(B 8* 9( 0) -$,1rs(B =+ $,1(l(}(B
  1171. ;; $,1(G(B $,1(H(B $,1(5(B $,1(@(B $,1(B(B $,1(J(B $,1(C(B $,1(8(B $,1(>(B $,1(?(B $,1(O(B $,1(I(B
  1172. ;; ,L0(B $,1(A(B $,1(4(B $,1(D(B $,1(3(B $,1(E(B $,1(9(B $,1(:(B $,1(;(B :; '"
  1173. ;; $,1(7(B $,1(6(B $,1(F(B $,1(2(B $,1(1(B $,1(=(B $,1(<(B ,$,1r~(B .$,1r|(B /?
  1174. (quail-define-rules
  1175. ("#" ?,Lp(B)
  1176. ("&" ?,A'(B)
  1177. ("/#" ?#)
  1178. ("/&" ?&)
  1179. ("/<" ?<)
  1180. ("/>" ?>)
  1181. ("/[" ?\[)
  1182. ("/\\" ?\\)
  1183. ("/]" ?\])
  1184. ("/^" ?^)
  1185. ("/_" ?_)
  1186. ("/`" ?`)
  1187. ("/{" ?{)
  1188. ("/|" ?|)
  1189. ("/}" ?})
  1190. ("/~" ?~)
  1191. ("<" ?$,1r~(B)
  1192. (">" ?$,1r|(B)
  1193. ("A" ?$,1(0(B) ("a" ?$,1(P(B)
  1194. ("B" ?$,1(1(B) ("b" ?$,1(Q(B)
  1195. ("C" ?$,1(F(B) ("c" ?$,1(f(B)
  1196. ("D" ?$,1(4(B) ("d" ?$,1(T(B)
  1197. ("E" ?$,1(5(B) ("e" ?$,1(U(B)
  1198. ("F" ?$,1(D(B) ("f" ?$,1(d(B)
  1199. ("G" ?$,1(3(B) ("g" ?$,1(S(B)
  1200. ("H" ?$,1(E(B) ("h" ?$,1(e(B)
  1201. ("I" ?$,1(8(B) ("i" ?$,1(X(B)
  1202. ("J" ?$,1(9(B) ("j" ?$,1(Y(B)
  1203. ("K" ?$,1(:(B) ("k" ?$,1(Z(B)
  1204. ("L" ?$,1(;(B) ("l" ?$,1([(B)
  1205. ("M" ?$,1(<(B) ("m" ?$,1(\(B)
  1206. ("N" ?$,1(=(B) ("n" ?$,1(](B)
  1207. ("O" ?$,1(>(B) ("o" ?$,1(^(B)
  1208. ("P" ?$,1(?(B) ("p" ?$,1(_(B)
  1209. ("Q" ?$,1(G(B) ("q" ?$,1(g(B)
  1210. ("R" ?$,1(@(B) ("r" ?$,1(`(B)
  1211. ("S" ?$,1(A(B) ("s" ?$,1(a(B)
  1212. ("T" ?$,1(B(B) ("t" ?$,1(b(B)
  1213. ("U" ?$,1(C(B) ("u" ?$,1(c(B)
  1214. ("V" ?$,1(2(B) ("v" ?$,1(R(B)
  1215. ("W" ?$,1(H(B) ("w" ?$,1(h(B)
  1216. ("X" ?$,1(6(B) ("x" ?$,1(V(B)
  1217. ("Y" ?$,1(J(B) ("y" ?$,1(j(B)
  1218. ("Z" ?$,1(7(B) ("z" ?$,1(W(B)
  1219. ("[" ?$,1(o(B)
  1220. ("\\" ?$,1(l(B)
  1221. ("]" ?$,1(i(B)
  1222. ("^" ?$,1tL(B)
  1223. ("_" ?$,1rs(B)
  1224. ("`" ?$,1(n(B)
  1225. ("{" ?$,1(O(B)
  1226. ("|" ?$,1(}(B)
  1227. ("}" ?$,1(I(B)
  1228. ("~" ?$,1(N(B))
  1229. ;; From `Bulgarian-PHO.kmap for Yudit', Alexander Shopov
  1230. ;; <al_shopov@web.bg>.
  1231. ;; Extra commentary and the indicator from an independent
  1232. ;; (cyrillic-iso8859-5) implementation by Ognyan Kulev
  1233. ;; <ogi@fmi.uni-sofia.bg> and name changes from Anton Zinoviev
  1234. ;; <anton@lml.bas.bg>.
  1235. (quail-define-package
  1236. "bulgarian-phonetic" "Bulgarian" "$,1(6(1(D(B"
  1237. nil
  1238. "Bulgarian Phonetic keyboard layout, producing Unicode.
  1239. The layout is similar to `cyrillic-translit', but all Bulgarian
  1240. characters are typed with a single key.
  1241. Use /& for ,A'(B (Cyrillic paragraph) and /# for $,1uV(B.
  1242. The letters $,1(G(B, $,1(H(B, $,1(I(B and $,1(N(B are not affected by Caps Lock."
  1243. nil t t t t nil nil nil nil nil t)
  1244. ;; $,1(G(B
  1245. ;; $,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
  1246. ;; $,1(0(B $,1(A(B $,1(4(B $,1(D(B $,1(3(B $,1(E(B $,1(9(B $,1(:(B $,1(;(B $,1(N(B
  1247. ;; $,1(7(B $,1(L(B $,1(F(B $,1(6(B $,1(1(B $,1(=(B $,1(<(B
  1248. (quail-define-rules
  1249. ("/&" ?,A'(B)
  1250. ("/#" ?$,1uV(B)
  1251. ("A" ?$,1(0(B)
  1252. ("B" ?$,1(1(B)
  1253. ("W" ?$,1(2(B)
  1254. ("G" ?$,1(3(B)
  1255. ("D" ?$,1(4(B)
  1256. ("E" ?$,1(5(B)
  1257. ("V" ?$,1(6(B)
  1258. ("Z" ?$,1(7(B)
  1259. ("I" ?$,1(8(B)
  1260. ("J" ?$,1(9(B)
  1261. ("K" ?$,1(:(B)
  1262. ("L" ?$,1(;(B)
  1263. ("M" ?$,1(<(B)
  1264. ("N" ?$,1(=(B)
  1265. ("O" ?$,1(>(B)
  1266. ("P" ?$,1(?(B)
  1267. ("R" ?$,1(@(B)
  1268. ("S" ?$,1(A(B)
  1269. ("T" ?$,1(B(B)
  1270. ("U" ?$,1(C(B)
  1271. ("F" ?$,1(D(B)
  1272. ("H" ?$,1(E(B)
  1273. ("C" ?$,1(F(B)
  1274. ("~" ?$,1(G(B)
  1275. ("{" ?$,1(H(B)
  1276. ("}" ?$,1(I(B)
  1277. ("Y" ?$,1(J(B)
  1278. ("X" ?$,1(L(B)
  1279. ("|" ?$,1(N(B)
  1280. ("Q" ?$,1(O(B)
  1281. ("a" ?$,1(P(B)
  1282. ("b" ?$,1(Q(B)
  1283. ("w" ?$,1(R(B)
  1284. ("g" ?$,1(S(B)
  1285. ("d" ?$,1(T(B)
  1286. ("e" ?$,1(U(B)
  1287. ("v" ?$,1(V(B)
  1288. ("z" ?$,1(W(B)
  1289. ("i" ?$,1(X(B)
  1290. ("j" ?$,1(Y(B)
  1291. ("k" ?$,1(Z(B)
  1292. ("l" ?$,1([(B)
  1293. ("m" ?$,1(\(B)
  1294. ("n" ?$,1(](B)
  1295. ("o" ?$,1(^(B)
  1296. ("p" ?$,1(_(B)
  1297. ("r" ?$,1(`(B)
  1298. ("s" ?$,1(a(B)
  1299. ("t" ?$,1(b(B)
  1300. ("u" ?$,1(c(B)
  1301. ("f" ?$,1(d(B)
  1302. ("h" ?$,1(e(B)
  1303. ("c" ?$,1(f(B)
  1304. ("`" ?$,1(g(B)
  1305. ("[" ?$,1(h(B)
  1306. ("]" ?$,1(i(B)
  1307. ("y" ?$,1(j(B)
  1308. ("x" ?$,1(l(B)
  1309. ("\\" ?$,1(n(B)
  1310. ("q" ?$,1(o(B))
  1311. ;; Based on an implementation by Ognyan Kulev <ogi@fmi.uni-sofia.bg>.
  1312. ;; This follows XKB bg.
  1313. (quail-define-package
  1314. "bulgarian-bds" "Bulgarian" "$,1(1(4(A(B" nil
  1315. "Bulgarian standard keyboard layout (BDS)
  1316. This keyboard layout is standard for Bulgarian typewriters.
  1317. The letters $,1(F(B, $,1(<(B, $,1(G(B, $,1(@(B, $,1(;(B, $,1(1(B and $,1(K(B are not affected by Caps Lock.
  1318. In addition to original Bulgarian typewriter layout, keys \\ and |
  1319. are transformed into ' and $,1(K(B respectively. Some keyboards mark these
  1320. keys as being transformed into ( and ) respectively. For ( and ), use
  1321. ` and ~ respectively. This input method follows XKB."
  1322. nil t t t t nil nil nil nil nil t)
  1323. ;; () 1! 2? 3+ 4" 5% 6= 7: 8/ 9_ 0$,1uV(B -I .V
  1324. ;; ,$,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
  1325. ;; $,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(K(B
  1326. ;; $,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
  1327. (quail-define-rules
  1328. ("1" ?1) ("!" ?!)
  1329. ("2" ?2) ("@" ??)
  1330. ("3" ?3) ("#" ?+)
  1331. ("4" ?4) ("$" ?\")
  1332. ("5" ?5) ("%" ?%)
  1333. ("6" ?6) ("^" ?=)
  1334. ("7" ?7) ("&" ?:)
  1335. ("8" ?8) ("*" ?/)
  1336. ("9" ?9) ("(" ?_)
  1337. ("0" ?0) (")" ?$,1uV(B)
  1338. ("-" ?-) ("_" ?I)
  1339. ("=" ?.) ("+" ?V)
  1340. ("q" ?,) ("Q" ?$,1(k(B)
  1341. ("w" ?$,1(c(B) ("W" ?$,1(C(B)
  1342. ("e" ?$,1(U(B) ("E" ?$,1(5(B)
  1343. ("r" ?$,1(X(B) ("R" ?$,1(8(B)
  1344. ("t" ?$,1(h(B) ("T" ?$,1(H(B)
  1345. ("y" ?$,1(i(B) ("Y" ?$,1(I(B)
  1346. ("u" ?$,1(Z(B) ("U" ?$,1(:(B)
  1347. ("i" ?$,1(a(B) ("I" ?$,1(A(B)
  1348. ("o" ?$,1(T(B) ("O" ?$,1(4(B)
  1349. ("p" ?$,1(W(B) ("P" ?$,1(7(B)
  1350. ("[" ?$,1(f(B) ("{" ?$,1(F(B)
  1351. ("]" ?\;) ("}" ?,A'(B)
  1352. ("a" ?$,1(l(B) ("A" ?$,1(L(B)
  1353. ("s" ?$,1(o(B) ("S" ?$,1(O(B)
  1354. ("d" ?$,1(P(B) ("D" ?$,1(0(B)
  1355. ("f" ?$,1(^(B) ("F" ?$,1(>(B)
  1356. ("g" ?$,1(V(B) ("G" ?$,1(6(B)
  1357. ("h" ?$,1(S(B) ("H" ?$,1(3(B)
  1358. ("j" ?$,1(b(B) ("J" ?$,1(B(B)
  1359. ("k" ?$,1(](B) ("K" ?$,1(=(B)
  1360. ("l" ?$,1(R(B) ("L" ?$,1(2(B)
  1361. (";" ?$,1(\(B) (":" ?$,1(<(B)
  1362. ("'" ?$,1(g(B) ("\"" ?$,1(G(B)
  1363. ("`" ?\() ("~" ?\))
  1364. ("z" ?$,1(n(B) ("Z" ?$,1(N(B)
  1365. ("x" ?$,1(Y(B) ("X" ?$,1(9(B)
  1366. ("c" ?$,1(j(B) ("C" ?$,1(J(B)
  1367. ("v" ?$,1(m(B) ("V" ?$,1(M(B)
  1368. ("b" ?$,1(d(B) ("B" ?$,1(D(B)
  1369. ("n" ?$,1(e(B) ("N" ?$,1(E(B)
  1370. ("m" ?$,1(_(B) ("M" ?$,1(?(B)
  1371. ("," ?$,1(`(B) ("<" ?$,1(@(B)
  1372. ("." ?$,1([(B) (">" ?$,1(;(B)
  1373. ("/" ?$,1(Q(B) ("?" ?$,1(1(B)
  1374. ("\\" ?') ("|" ?$,1(K(B))
  1375. ;; Local Variables:
  1376. ;; coding: iso-2022-7bit
  1377. ;; End:
  1378. ;;; cyrillic.el ends here