1154daed1Smrg//////////////////////////////////////////////////////////////////////////
2c067fea9Sghen// Copyright (C) 1999, 2000, 2007, 2009 by Anton Zinoviev <anton@lml.bas.bg>
3154daed1Smrg//
4154daed1Smrg// This software may be used, modified, copied, distributed, and sold,
5c067fea9Sghen// both in source and binary form provided that the above copyright
6c067fea9Sghen// notice and these terms are retained. The name of the author may not
7c067fea9Sghen// be used to endorse or promote products derived from this software
8797b363dSmrg// without prior permission.  THIS SOFTWARE IS PROVIDED "AS IS" AND
9c067fea9Sghen// ANY EXPRESS OR IMPLIED WARRANTIES ARE DISCLAIMED.  IN NO EVENT
10c067fea9Sghen// SHALL THE AUTHOR BE LIABLE FOR ANY DAMAGES ARISING IN ANY WAY OUT
11c067fea9Sghen// OF THE USE OF THIS SOFTWARE.
12154daed1Smrg//
13797b363dSmrg//////////////////////////////////////////////////////////////////////////
14c067fea9Sghen// Version 2.0
15c067fea9Sghen
16c067fea9Sghen// The following variants are defined in this file:
17c067fea9Sghen
18c067fea9Sghen// "bds" - the BDS keyboard layout compliant with the proposed
19c067fea9Sghen//         Bulgarian state standard BDS 5237:2006
20c067fea9Sghen
21caa6d561Smrg// "bekl" - the „enhanced“ variant of the Bulgarian BDS keyboard,
22caa6d561Smrg//          proposed in May 2020.
23caa6d561Smrg
24797b363dSmrg// "phonetic" - the phonetic Bulgarian layout with the traditional position
25797b363dSmrg//              of the letters
26c067fea9Sghen
27c067fea9Sghen// "bas_phonetic" - the phonetic keyboard layout compliant with the
28c067fea9Sghen//                  proposed Bulgarian state standard BDS 5237:2006
29c067fea9Sghen
30797b363dSmrg// "latin" - an extended variant of the QWERTY layout with symbols that
31797b363dSmrg//           Bulgarian users will type while the keyboard is in Latin mode
32c067fea9Sghen
33c067fea9Sghen// The reasons behind the layout of the symbols in levels 3 and 4 are
34c067fea9Sghen// explained in http://arxiv.org/abs/0905.0484  (in Bulgarian).
35c067fea9Sghen
36c067fea9Sghen// Two notes for the maintainers of xkeyboard-config:
37c067fea9Sghen
38c067fea9Sghen// 1. Please do not use key names such as <LatQ> for the Bulgarian
39c067fea9Sghen// phonetic layouts.  The placement of the symbols must stay always
40c067fea9Sghen// the same regardless of which one of the alias sets in
41c067fea9Sghen// xkb/keycodes/aliases is used.
42c067fea9Sghen
43c067fea9Sghen// 2. The layouts should not include level3(ralt_switch).
44c067fea9Sghen
45797b363dSmrg//////////////////////////////////////////////////////////////////////////
46154daed1Smrg
47c067fea9Sghen// Describes Bulgarian keyboard "BDS" modified according to the
48c067fea9Sghen// the new state standard BDS 5237:2006 and extended with symbols in
49c067fea9Sghen// levels 3 and 4.
508157b447Smrgdefault partial alphanumeric_keys
51154daed1Smrgxkb_symbols "bds" {
52154daed1Smrg
53bfd7cbc1Smrg  name[Group1]= "Bulgarian";
54797b363dSmrg
55797b363dSmrg  key <TLDE> {[ parenleft,         parenright,        bracketleft,       bracketright        ]};
56797b363dSmrg  key <AE01> {[ 1,                 exclam                                                    ]};
57797b363dSmrg  key <AE02> {[ 2,                 question                                                  ]};
58797b363dSmrg  key <AE03> {[ 3,                 plus,              dagger,            dagger              ]};
59797b363dSmrg  key <AE04> {[ 4,                 quotedbl                                                  ]};
60797b363dSmrg  key <AE05> {[ 5,                 percent,           U2329,             U232A               ]};
61797b363dSmrg  key <AE06> {[ 6,                 equal,             emdash,            emdash              ]};
62797b363dSmrg  key <AE07> {[ 7,                 colon,             ellipsis,          ellipsis            ]};
63797b363dSmrg  key <AE08> {[ 8,                 slash,             U0300,             U0301               ]};
64797b363dSmrg  key <AE09> {[ 9,                 endash                                                    ]};
65797b363dSmrg  key <AE10> {[ 0,                 numerosign                                                ]};
66797b363dSmrg  key <AE11> {[ minus,             dollar,            U2011,             EuroSign            ]};
67797b363dSmrg  key <AE12> {[ period,            EuroSign                                                  ]};
68797b363dSmrg
69797b363dSmrg  key <AD01> {[ comma,             Cyrillic_yeru,  rightsinglequotemark, leftsinglequotemark ]};
70797b363dSmrg  key <AD02> {[ Cyrillic_u,        Cyrillic_U                                                ]};
71797b363dSmrg  key <AD03> {[ Cyrillic_ie,       Cyrillic_IE,       Cyrillic_e,        Cyrillic_E          ]};
72797b363dSmrg  key <AD04> {[ Cyrillic_i,        Cyrillic_I,        U045D,             U040D               ]};
73797b363dSmrg  key <AD05> {[ Cyrillic_sha,      Cyrillic_SHA                                              ]};
74797b363dSmrg  key <AD06> {[ Cyrillic_shcha,    Cyrillic_SHCHA                                            ]};
75797b363dSmrg  key <AD07> {[ Cyrillic_ka,       Cyrillic_KA,       copyright,         copyright           ]};
76797b363dSmrg  key <AD08> {[ Cyrillic_es,       Cyrillic_ES,       copyright,         copyright           ]};
77797b363dSmrg  key <AD09> {[ Cyrillic_de,       Cyrillic_DE                                               ]};
78797b363dSmrg  key <AD10> {[ Cyrillic_ze,       Cyrillic_ZE                                               ]};
79797b363dSmrg  key <AD11> {[ Cyrillic_tse,      Cyrillic_TSE                                              ]};
80797b363dSmrg  key <AD12> {[ semicolon,         section                                                   ]};
81797b363dSmrg
82797b363dSmrg  key <AC01> {[ Cyrillic_softsign, U045D,             Cyrillic_yeru,     Cyrillic_YERU       ]};
83797b363dSmrg  key <AC02> {[ Cyrillic_ya,       Cyrillic_YA,       U0463,             U0462               ]};
84797b363dSmrg  key <AC03> {[ Cyrillic_a,        Cyrillic_A                                                ]};
85797b363dSmrg  key <AC04> {[ Cyrillic_o,        Cyrillic_O                                                ]};
86797b363dSmrg  key <AC05> {[ Cyrillic_zhe,      Cyrillic_ZHE                                              ]};
87797b363dSmrg  key <AC06> {[ Cyrillic_ghe,      Cyrillic_GHE                                              ]};
88797b363dSmrg  key <AC07> {[ Cyrillic_te,       Cyrillic_TE,       trademark,         trademark           ]};
89797b363dSmrg  key <AC08> {[ Cyrillic_en,       Cyrillic_EN                                               ]};
90797b363dSmrg  key <AC09> {[ Cyrillic_ve,       Cyrillic_VE                                               ]};
91797b363dSmrg  key <AC10> {[ Cyrillic_em,       Cyrillic_EM                                               ]};
92797b363dSmrg  key <AC11> {[ Cyrillic_che,      Cyrillic_CHE                                              ]};
93797b363dSmrg  key <BKSL> {[ doublelowquotemark, leftdoublequotemark, guillemotleft,  guillemotright      ]};
94797b363dSmrg
95797b363dSmrg  key <LSGT> {[ U045D,             U040D                                                     ]};
96797b363dSmrg  key <AB01> {[ Cyrillic_yu,       Cyrillic_YU                                               ]};
97797b363dSmrg  key <AB02> {[ Cyrillic_shorti,   Cyrillic_SHORTI,   U046D,             U046C               ]};
98797b363dSmrg  key <AB03> {[ Cyrillic_hardsign, Cyrillic_HARDSIGN, U046B,             U046A               ]};
99797b363dSmrg  key <AB04> {[ Cyrillic_e,        Cyrillic_E                                                ]};
100797b363dSmrg  key <AB05> {[ Cyrillic_ef,       Cyrillic_EF                                               ]};
101797b363dSmrg  key <AB06> {[ Cyrillic_ha,       Cyrillic_HA                                               ]};
102797b363dSmrg  key <AB07> {[ Cyrillic_pe,       Cyrillic_PE                                               ]};
103797b363dSmrg  key <AB08> {[ Cyrillic_er,       Cyrillic_ER,       registered,        registered          ]};
104797b363dSmrg  key <AB09> {[ Cyrillic_el,       Cyrillic_EL                                               ]};
105797b363dSmrg  key <AB10> {[ Cyrillic_be,       Cyrillic_BE                                               ]};
106797b363dSmrg
107797b363dSmrg  key <SPCE> {[ space,             space,             nobreakspace,      nobreakspace        ]};
108797b363dSmrg
109797b363dSmrg  key <KPDL> { type[Group1] = "KEYPAD",             [ KP_Delete,         KP_Separator        ]};
110154daed1Smrg};
111154daed1Smrg
112caa6d561Smrg// This is a slightly enhanced variant of the Bulgarian BDS keyboard,
113caa6d561Smrg// proposed in May 2020 by a group of more than 500 linguists, teachers,
114caa6d561Smrg// writers, translators, IT specialists, professors and many more.
115caa6d561Smrgpartial alphanumeric_keys
116caa6d561Smrgxkb_symbols "bekl" {
117caa6d561Smrg
118caa6d561Smrg  include "bg(bds)"
119caa6d561Smrg
120caa6d561Smrg  name[Group1]= "Bulgarian (enhanced)";
121caa6d561Smrg
122caa6d561Smrg  key <AE02> {[ 2,                 question,          at,                at                  ]};
123caa6d561Smrg  key <AD01> {[ comma,             U02BC,          rightsinglequotemark, leftsinglequotemark ]};
124caa6d561Smrg  key <AB04> {[ U0463,             U0462                                                     ]};
125caa6d561Smrg};
126caa6d561Smrg
127caa6d561Smrg
128797b363dSmrg// This is an improved variant of the traditional Bulgarian phonetic
129c067fea9Sghen// keyboard.  Some unnecessary symbols in levels 1 and 2 are replaced
130797b363dSmrg// by more useful ones (similar as in "bas_phonetic") and additional
131797b363dSmrg// symbols are added in levels 3 and 4.
132797b363dSmrgpartial alphanumeric_keys
133154daed1Smrgxkb_symbols "phonetic" {
134bfd7cbc1Smrg  name[Group1]= "Bulgarian (traditional phonetic)";
135c067fea9Sghen
136797b363dSmrg  key <TLDE> {[ Cyrillic_che,      Cyrillic_CHE                                              ]};
137797b363dSmrg  key <AE01> {[ 1,                 exclam                                                    ]};
138797b363dSmrg  key <AE02> {[ 2,                 at                                                        ]};
139797b363dSmrg  key <AE03> {[ 3,                 numerosign                                                ]};
140797b363dSmrg  key <AE04> {[ 4,                 dollar,            EuroSign,          EuroSign            ]};
141797b363dSmrg  key <AE05> {[ 5,                 percent                                                   ]};
142797b363dSmrg  key <AE06> {[ 6,                 EuroSign                                                  ]};
143797b363dSmrg  key <AE07> {[ 7,                 section                                                   ]};
144797b363dSmrg  key <AE08> {[ 8,                 asterisk                                                  ]};
145797b363dSmrg  key <AE09> {[ 9,                 parenleft,         bracketleft,       U2329               ]};
146797b363dSmrg  key <AE10> {[ 0,                 parenright,        bracketright,      U232A               ]};
147797b363dSmrg  key <AE11> {[ minus,             endash,            U2011,             U2011               ]};
148797b363dSmrg  key <AE12> {[ equal,             plus,              emdash,            dagger              ]};
149797b363dSmrg
150797b363dSmrg  key <AD01> {[ Cyrillic_ya,       Cyrillic_YA,       U0463,             U0462               ]};
151797b363dSmrg  key <AD02> {[ Cyrillic_ve,       Cyrillic_VE                                               ]};
152797b363dSmrg  key <AD03> {[ Cyrillic_ie,       Cyrillic_IE,       Cyrillic_e,        Cyrillic_E          ]};
153797b363dSmrg  key <AD04> {[ Cyrillic_er,       Cyrillic_ER,       registered,        registered          ]};
154797b363dSmrg  key <AD05> {[ Cyrillic_te,       Cyrillic_TE,       trademark,         trademark           ]};
155797b363dSmrg  key <AD06> {[ Cyrillic_hardsign, Cyrillic_HARDSIGN, U046B,             U046A               ]};
156797b363dSmrg  key <AD07> {[ Cyrillic_u,        Cyrillic_U                                                ]};
157797b363dSmrg  key <AD08> {[ Cyrillic_i,        Cyrillic_I,        U045D,             U040D               ]};
158797b363dSmrg  key <AD09> {[ Cyrillic_o,        Cyrillic_O                                                ]};
159797b363dSmrg  key <AD10> {[ Cyrillic_pe,       Cyrillic_PE                                               ]};
160797b363dSmrg  key <AD11> {[ Cyrillic_sha,      Cyrillic_SHA                                              ]};
161797b363dSmrg  key <AD12> {[ Cyrillic_shcha,    Cyrillic_SHCHA                                            ]};
162797b363dSmrg
163797b363dSmrg  key <AC01> {[ Cyrillic_a,        Cyrillic_A                                                ]};
164797b363dSmrg  key <AC02> {[ Cyrillic_es,       Cyrillic_ES,       copyright,         copyright           ]};
165797b363dSmrg  key <AC03> {[ Cyrillic_de,       Cyrillic_DE                                               ]};
166797b363dSmrg  key <AC04> {[ Cyrillic_ef,       Cyrillic_EF                                               ]};
167797b363dSmrg  key <AC05> {[ Cyrillic_ghe,      Cyrillic_GHE                                              ]};
168797b363dSmrg  key <AC06> {[ Cyrillic_ha,       Cyrillic_HA                                               ]};
169797b363dSmrg  key <AC07> {[ Cyrillic_shorti,   Cyrillic_SHORTI,   U046D,             U046C               ]};
170797b363dSmrg  key <AC08> {[ Cyrillic_ka,       Cyrillic_KA                                               ]};
171797b363dSmrg  key <AC09> {[ Cyrillic_el,       Cyrillic_EL                                               ]};
172797b363dSmrg  key <AC10> {[ semicolon,         colon,             ellipsis,          ellipsis            ]};
173797b363dSmrg  key <AC11> {[ apostrophe,        quotedbl,       rightsinglequotemark, leftsinglequotemark ]};
174797b363dSmrg  key <BKSL> {[ Cyrillic_yu,       Cyrillic_YU                                               ]};
175797b363dSmrg
176797b363dSmrg  key <LSGT> {[ U045D,             U040D                                                     ]};
177797b363dSmrg  key <AB01> {[ Cyrillic_ze,       Cyrillic_ZE                                               ]};
178797b363dSmrg  key <AB02> {[ Cyrillic_softsign, U045D,             Cyrillic_yeru,     Cyrillic_YERU       ]};
179797b363dSmrg  key <AB03> {[ Cyrillic_tse,      Cyrillic_TSE,      copyright,         copyright           ]};
180797b363dSmrg  key <AB04> {[ Cyrillic_zhe,      Cyrillic_ZHE                                              ]};
181797b363dSmrg  key <AB05> {[ Cyrillic_be,       Cyrillic_BE                                               ]};
182797b363dSmrg  key <AB06> {[ Cyrillic_en,       Cyrillic_EN                                               ]};
183797b363dSmrg  key <AB07> {[ Cyrillic_em,       Cyrillic_EM                                               ]};
184bb3a541cSmrg  key <AB08> {[ comma,            doublelowquotemark, guillemotleft,     guillemotleft       ]};
185bb3a541cSmrg  key <AB09> {[ period,          leftdoublequotemark, guillemotright,    guillemotright      ]};
186797b363dSmrg  key <AB10> {[ slash,             question,          U0300,             U0301               ]};
187797b363dSmrg
188797b363dSmrg  key <SPCE> {[ space,             space,             nobreakspace,      nobreakspace        ]};
189797b363dSmrg
190797b363dSmrg  key <KPDL> { type[Group1] = "KEYPAD",             [ KP_Delete,         KP_Separator        ]};
191c067fea9Sghen};
192c067fea9Sghen
193797b363dSmrg// This is the Bulgarian phonetic keyboard according to the proposed
194797b363dSmrg// state standard BDS 5237:2006 with additional symbols in levels 3 and 4.
195797b363dSmrgpartial alphanumeric_keys
196c067fea9Sghenxkb_symbols "bas_phonetic" {
197c067fea9Sghen  include "bg(phonetic)"
198bfd7cbc1Smrg  name[Group1]= "Bulgarian (new phonetic)";
199797b363dSmrg
200797b363dSmrg  key <TLDE> {[ Cyrillic_yu,       Cyrillic_YU                                               ]};
201797b363dSmrg  key <AD01> {[ Cyrillic_che,      Cyrillic_CHE                                              ]};
202797b363dSmrg  key <AD02> {[ Cyrillic_sha,      Cyrillic_SHA                                              ]};
203797b363dSmrg  key <AD11> {[ Cyrillic_ya,       Cyrillic_YA,       U0463,             U0462               ]};
204797b363dSmrg  key <BKSL> {[ Cyrillic_softsign, U045D,             Cyrillic_yeru,     Cyrillic_YERU       ]};
205797b363dSmrg  key <AB02> {[ Cyrillic_zhe,      Cyrillic_ZHE                                              ]};
206797b363dSmrg  key <AB04> {[ Cyrillic_ve,       Cyrillic_VE                                               ]};
207c067fea9Sghen};
208c067fea9Sghen
209c067fea9Sghen
210797b363dSmrg// This is an extended variant of the standard Latin QWERTY layout with
211c067fea9Sghen// additional symbols in levels 3 and 4.
21221fe479eSmrghidden partial alphanumeric_keys
213c067fea9Sghenxkb_symbols "latin" {
214797b363dSmrg
215797b363dSmrg  key <TLDE> {[ grave,             asciitilde,        U2248,             U2245               ]};
216797b363dSmrg  key <AE01> {[ 1,                 exclam,            notsign,           notsign             ]};
217797b363dSmrg  key <AE02> {[ 2,                 at,                twosuperior,       enfilledcircbullet  ]};
218797b363dSmrg  key <AE03> {[ 3,                 numbersign,        threesuperior,     notequal            ]};
219797b363dSmrg  key <AE04> {[ 4,                 dollar,            EuroSign,          sterling            ]};
220797b363dSmrg  key <AE05> {[ 5,                 percent,           U2030,             U2030               ]};
221797b363dSmrg  key <AE06> {[ 6,                 asciicircum,       logicaland,        logicalor           ]};
222797b363dSmrg  key <AE07> {[ 7,                 ampersand,         section,           section             ]};
223797b363dSmrg  key <AE08> {[ 8,                 asterisk,          infinity,          multiply            ]};
224797b363dSmrg  key <AE09> {[ 9,                 parenleft,         U2202,             nabla               ]};
225797b363dSmrg  key <AE10> {[ 0,                 parenright,        U2300,             U2300               ]};
226797b363dSmrg  key <AE11> {[ minus,             underscore,        U2011,             endash              ]};
227797b363dSmrg  key <AE12> {[ equal,             plus,              emdash,            plusminus           ]};
228797b363dSmrg
229797b363dSmrg  key <AD01> {[ q,                 Q,                 Greek_THETA,       Greek_theta         ]};
230797b363dSmrg  key <AD02> {[ w,                 W,                 Greek_OMEGA,       Greek_omega         ]};
231797b363dSmrg  key <AD03> {[ e,                 E,                 U2203,             Greek_epsilon       ]};
232797b363dSmrg  key <AD04> {[ r,                 R,                 registered,        Greek_rho           ]};
233797b363dSmrg  key <AD05> {[ t,                 T,                 trademark,         Greek_tau           ]};
234797b363dSmrg  key <AD06> {[ y,                 Y,                 yen,               Greek_upsilon       ]};
235797b363dSmrg  key <AD07> {[ u,                 U,                 intersection,      union               ]};
236797b363dSmrg  key <AD08> {[ i,                 I,                 integral,          Greek_iota          ]};
237797b363dSmrg  key <AD09> {[ o,                 O,                 degree,            U222E               ]};
238797b363dSmrg  key <AD10> {[ p,                 P,                 Greek_PI,          Greek_pi            ]};
239797b363dSmrg  key <AD11> {[ bracketleft,       braceleft,         U2286,             includedin          ]};
240797b363dSmrg  key <AD12> {[ bracketright,      braceright,        U2208,             U2209               ]};
241797b363dSmrg
242797b363dSmrg  key <AC01> {[ a,                 A,                 U2200,             Greek_alpha         ]};
243797b363dSmrg  key <AC02> {[ s,                 S,                 Greek_SIGMA,       Greek_sigma         ]};
244797b363dSmrg  key <AC03> {[ d,                 D,                 Greek_DELTA,       Greek_delta         ]};
245797b363dSmrg  key <AC04> {[ f,                 F,                 Greek_PHI,         Greek_phi           ]};
246797b363dSmrg  key <AC05> {[ g,                 G,                 Greek_GAMMA,       Greek_gamma         ]};
247797b363dSmrg  key <AC06> {[ h,                 H,                 U2225,             Greek_eta           ]};
248797b363dSmrg  key <AC07> {[ j,                 J                                                         ]};
249797b363dSmrg  key <AC08> {[ k,                 K,                 U03F0,             Greek_kappa         ]};
250797b363dSmrg  key <AC09> {[ l,                 L,                 Greek_LAMBDA,      Greek_lambda        ]};
251797b363dSmrg  key <AC10> {[ semicolon,         colon,             division,          division            ]};
252797b363dSmrg  key <AC11> {[ apostrophe,        quotedbl,        leftdoublequotemark, rightdoublequotemark]};
253797b363dSmrg  key <BKSL> {[ backslash,         bar,               identical,         downtack            ]};
254797b363dSmrg
255797b363dSmrg  key <LSGT> {[ less,              greater,           U2266,             U2267               ]};
256797b363dSmrg  key <AB01> {[ z,                 Z,                 U2220,             Greek_zeta          ]};
257797b363dSmrg  key <AB02> {[ x,                 X,                 Greek_XI,          Greek_xi            ]};
258797b363dSmrg  key <AB03> {[ c,                 C,                 copyright,         Greek_chi           ]};
259797b363dSmrg  key <AB04> {[ v,                 V,                 Greek_PSI,         Greek_psi           ]};
260797b363dSmrg  key <AB05> {[ b,                 B,                 U03D1,             Greek_beta          ]};
261797b363dSmrg  key <AB06> {[ n,                 N,                 U207F,             Greek_nu            ]};
262797b363dSmrg  key <AB07> {[ m,                 M,                 Greek_mu,          Greek_mu            ]};
263797b363dSmrg  key <AB08> {[ comma,             less,              U2266,             U21D4               ]};
264797b363dSmrg  key <AB09> {[ period,            greater,           U2267,             U21D2               ]};
265797b363dSmrg  key <AB10> {[ slash,             question,        leftsinglequotemark, rightsinglequotemark]};
266797b363dSmrg
267797b363dSmrg  key <SPCE> {[ space,             space,             nobreakspace,      nobreakspace        ]};
268797b363dSmrg
269797b363dSmrg  key <KPDL> { type[Group1] = "KEYPAD",             [ KP_Delete,         KP_Decimal          ]};
270154daed1Smrg};
271