diff options
Diffstat (limited to 'symbols/bg')
-rw-r--r-- | symbols/bg | 442 |
1 files changed, 297 insertions, 145 deletions
@@ -1,212 +1,364 @@ ////////////////////////////////////////////////////////////////////////// -// Copyright (C) 1999, 2000, 2005 by Anton Zinoviev <anton@lml.bas.bg> +// Copyright (C) 1999, 2000, 2007, 2009 by Anton Zinoviev <anton@lml.bas.bg> // // This software may be used, modified, copied, distributed, and sold, -// in both source and binary form provided that the above copyright -// and these terms are retained. Under no circumstances is the author -// responsible for the proper functioning of this software, nor does -// the author assume any responsibility for damages incurred with its -// use. +// both in source and binary form provided that the above copyright +// notice and these terms are retained. The name of the author may not +// be used to endorse or promote products derived from this software +// without prior permission. THIS SOFTWARE IS PROVIDES "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES ARE DISCLAIMED. IN NO EVENT +// SHALL THE AUTHOR BE LIABLE FOR ANY DAMAGES ARISING IN ANY WAY OUT +// OF THE USE OF THIS SOFTWARE. // ////////////////////////////////////////////////////////////////////////// -// Version 1.9-BAN +// Version 2.0 +// The following variants are defined in this file: + +// "bds" - the BDS keyboard layout compliant with the proposed +// Bulgarian state standard BDS 5237:2006 + +// "phonetic" - Bulgarian phonetic layout with traditional position of +// the letters. + +// "bas_phonetic" - the phonetic keyboard layout compliant with the +// proposed Bulgarian state standard BDS 5237:2006 + +// "latin" - an extended variant of the QWERTY layout with symbols +// Bulgarian users will type while the keyboard is in Latin mode. + +// The reasons behind the layout of the symbols in levels 3 and 4 are +// explained in http://arxiv.org/abs/0905.0484 (in Bulgarian). + +// Two notes for the maintainers of xkeyboard-config: + +// 1. Please do not use key names such as <LatQ> for the Bulgarian +// phonetic layouts. The placement of the symbols must stay always +// the same regardless of which one of the alias sets in +// xkb/keycodes/aliases is used. + +// 2. The layouts should not include level3(ralt_switch). + +////////////////////////////////////////////////////////////////////////// + +// Describes Bulgarian keyboard "BDS" modified according to the +// the new state standard BDS 5237:2006 and extended with symbols in +// levels 3 and 4. partial default alphanumeric_keys xkb_symbols "bds" { + name[Group1]= "Bulgaria"; -key.type[Group1] = "TWO_LEVEL"; - key <TLDE> { [ parenleft, parenright ] }; + key <TLDE> { [ parenleft, parenright, + bracketleft, bracketright ] }; key <AE01> { [ 1, exclam ] }; key <AE02> { [ 2, question ] }; - key <AE03> { [ 3, plus ] }; + key <AE03> { [ 3, plus, + dagger, dagger ] }; key <AE04> { [ 4, quotedbl ] }; - key <AE05> { [ 5, percent ] }; - key <AE06> { [ 6, equal ] }; - key <AE07> { [ 7, colon ] }; - key <AE08> { [ 8, slash ] }; - key <AE09> { [ 9, emdash ] }; + key <AE05> { [ 5, percent, + U2329, U232A ] }; + key <AE06> { [ 6, equal, + emdash, emdash ] }; + key <AE07> { [ 7, colon, + ellipsis, ellipsis ] }; + key <AE08> { [ 8, slash, + U0300, U0301 ] }; + key <AE09> { [ 9, endash ] }; key <AE10> { [ 0, numerosign ] }; - key <AE11> { [ minus, dollar ] }; + key <AE11> { [ minus, dollar, + U2011, EuroSign ] }; key <AE12> { [ period, EuroSign ] }; - key <AD01> { [ comma, Cyrillic_yeru ] }; -key.type[Group1] = "ALPHABETIC"; + + key <AD01> { [ comma, Cyrillic_yeru, + rightsinglequotemark, leftsinglequotemark ] }; key <AD02> { [ Cyrillic_u, Cyrillic_U ] }; - key <AD03> { [ Cyrillic_ie, Cyrillic_IE ] }; - key <AD04> { [ Cyrillic_i, Cyrillic_I ] }; + key <AD03> { [ Cyrillic_ie, Cyrillic_IE, + Cyrillic_e, Cyrillic_E ] }; + key <AD04> { [ Cyrillic_i, Cyrillic_I, + U045D, U040D ] }; key <AD05> { [ Cyrillic_sha, Cyrillic_SHA ] }; key <AD06> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; - key <AD07> { [ Cyrillic_ka, Cyrillic_KA ] }; - key <AD08> { [ Cyrillic_es, Cyrillic_ES ] }; + key <AD07> { [ Cyrillic_ka, Cyrillic_KA, + copyright, copyright ] }; + key <AD08> { [ Cyrillic_es, Cyrillic_ES, + copyright, copyright ] }; key <AD09> { [ Cyrillic_de, Cyrillic_DE ] }; key <AD10> { [ Cyrillic_ze, Cyrillic_ZE ] }; key <AD11> { [ Cyrillic_tse, Cyrillic_TSE ] }; -key.type[Group1] = "TWO_LEVEL"; key <AD12> { [ semicolon, section ] }; -key.type[Group1] = "ALPHABETIC"; - key <AC01> { [ Cyrillic_softsign, U045D ] }; - key <AC02> { [ Cyrillic_ya, Cyrillic_YA ] }; + + key <AC01> { [ Cyrillic_softsign, U045D, + Cyrillic_yeru, Cyrillic_YERU ] }; + key <AC02> { [ Cyrillic_ya, Cyrillic_YA, + U0463, U0462 ] }; key <AC03> { [ Cyrillic_a, Cyrillic_A ] }; key <AC04> { [ Cyrillic_o, Cyrillic_O ] }; key <AC05> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; key <AC06> { [ Cyrillic_ghe, Cyrillic_GHE ] }; - key <AC07> { [ Cyrillic_te, Cyrillic_TE ] }; + key <AC07> { [ Cyrillic_te, Cyrillic_TE, + trademark, trademark ] }; key <AC08> { [ Cyrillic_en, Cyrillic_EN ] }; key <AC09> { [ Cyrillic_ve, Cyrillic_VE ] }; key <AC10> { [ Cyrillic_em, Cyrillic_EM ] }; key <AC11> { [ Cyrillic_che, Cyrillic_CHE ] }; + key <BKSL> { [ doublelowquotemark, leftdoublequotemark, + guillemotleft, guillemotright ] }; + + key <LSGT> { [ U045D, U040D ] }; key <AB01> { [ Cyrillic_yu, Cyrillic_YU ] }; - key <AB02> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; - key <AB03> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; + key <AB02> { [ Cyrillic_shorti, Cyrillic_SHORTI, + U046D, U046C ] }; + key <AB03> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, + U046B, U046A ] }; key <AB04> { [ Cyrillic_e, Cyrillic_E ] }; key <AB05> { [ Cyrillic_ef, Cyrillic_EF ] }; key <AB06> { [ Cyrillic_ha, Cyrillic_HA ] }; key <AB07> { [ Cyrillic_pe, Cyrillic_PE ] }; - key <AB08> { [ Cyrillic_er, Cyrillic_ER ] }; + key <AB08> { [ Cyrillic_er, Cyrillic_ER, + registered, registered ] }; key <AB09> { [ Cyrillic_el, Cyrillic_EL ] }; key <AB10> { [ Cyrillic_be, Cyrillic_BE ] }; - -key.type[Group1] = "TWO_LEVEL"; - key <BKSL> { [ doublelowquotemark,leftdoublequotemark ] }; - key <LSGT> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; - // End alphanumeric section - + key <SPCE> { [ space, space, + nobreakspace, nobreakspace ] }; + + key <KPDL> { type[Group1] = "KEYPAD", [ KP_Delete, KP_Separator ] }; - }; +// This is improved variant of the traditional Bulgarian phonetic +// keyboard. Some unnecessary symbols in levels 1 and 2 are replaced +// by more useful (the same way as in "bas_phonetic") and additional +// symbols in levels 3 and 4 are added. partial alphanumeric_keys xkb_symbols "phonetic" { - - name[Group1]= "Bulgaria - Traditional Phonetic"; + name[Group1]= "Bulgaria - Traditinal phonetic"; key <TLDE> { [ Cyrillic_che, Cyrillic_CHE ] }; key <AE01> { [ 1, exclam ] }; key <AE02> { [ 2, at ] }; - key <AE03> { [ 3, numbersign ] }; - key <AE04> { [ 4, dollar ] }; + key <AE03> { [ 3, numerosign ] }; + key <AE04> { [ 4, dollar, + EuroSign, EuroSign ] }; key <AE05> { [ 5, percent ] }; - key <AE06> { [ 6, asciicircum ] }; - key <AE07> { [ 7, ampersand ] }; + key <AE06> { [ 6, EuroSign ] }; + key <AE07> { [ 7, section ] }; key <AE08> { [ 8, asterisk ] }; - key <AE09> { [ 9, parenleft ] }; - key <AE10> { [ 0, parenright ] }; - key <AE11> { [ minus, underscore ] }; - key <AE12> { [ equal, plus ] }; - - key <LatQ> { [ Cyrillic_ya, Cyrillic_YA ] }; - key <LatW> { [ Cyrillic_ve, Cyrillic_VE ] }; - key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] }; - key <LatR> { [ Cyrillic_er, Cyrillic_ER ] }; - key <LatT> { [ Cyrillic_te, Cyrillic_TE ] }; - key <LatY> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; - key <LatU> { [ Cyrillic_u, Cyrillic_U ] }; - key <LatI> { [ Cyrillic_i, Cyrillic_I ] }; - key <LatO> { [ Cyrillic_o, Cyrillic_O ] }; - key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] }; + key <AE09> { [ 9, parenleft, + bracketleft, U2329 ] }; + key <AE10> { [ 0, parenright, + bracketright, U232A ] }; + key <AE11> { [ minus, endash, + U2011, U2011 ] }; + key <AE12> { [ equal, plus, + emdash, dagger ] }; + + key <AD01> { [ Cyrillic_ya, Cyrillic_YA, + U0463, U0462 ] }; + key <AD02> { [ Cyrillic_ve, Cyrillic_VE ] }; + key <AD03> { [ Cyrillic_ie, Cyrillic_IE, + Cyrillic_e, Cyrillic_E ] }; + key <AD04> { [ Cyrillic_er, Cyrillic_ER, + registered, registered ] }; + key <AD05> { [ Cyrillic_te, Cyrillic_TE, + trademark, trademark ] }; + key <AD06> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, + U046B, U046A ] }; + key <AD07> { [ Cyrillic_u, Cyrillic_U ] }; + key <AD08> { [ Cyrillic_i, Cyrillic_I, + U045D, U040D ] }; + key <AD09> { [ Cyrillic_o, Cyrillic_O ] }; + key <AD10> { [ Cyrillic_pe, Cyrillic_PE ] }; key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] }; key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; - - key <LatA> { [ Cyrillic_a, Cyrillic_A ] }; - key <LatS> { [ Cyrillic_es, Cyrillic_ES ] }; - key <LatD> { [ Cyrillic_de, Cyrillic_DE ] }; - key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] }; - key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] }; - key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] }; - key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; - key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] }; - key <LatL> { [ Cyrillic_el, Cyrillic_EL ] }; - key <AC10> { [ semicolon, colon ] }; - key <AC11> { [ quoteright, quotedbl ] }; + + + key <AC01> { [ Cyrillic_a, Cyrillic_A ] }; + key <AC02> { [ Cyrillic_es, Cyrillic_ES, + copyright, copyright ] }; + key <AC03> { [ Cyrillic_de, Cyrillic_DE ] }; + key <AC04> { [ Cyrillic_ef, Cyrillic_EF ] }; + key <AC05> { [ Cyrillic_ghe, Cyrillic_GHE ] }; + key <AC06> { [ Cyrillic_ha, Cyrillic_HA ] }; + key <AC07> { [ Cyrillic_shorti, Cyrillic_SHORTI, + U046D, U046C ] }; + key <AC08> { [ Cyrillic_ka, Cyrillic_KA ] }; + key <AC09> { [ Cyrillic_el, Cyrillic_EL ] }; + key <AC10> { [ semicolon, colon, + ellipsis, ellipsis ] }; + key <AC11> { [ apostrophe, quotedbl, + rightsinglequotemark, leftsinglequotemark ] }; key <BKSL> { [ Cyrillic_yu, Cyrillic_YU ] }; + + + key <LSGT> { [ U045D, U040D ] }; + key <AB01> { [ Cyrillic_ze, Cyrillic_ZE ] }; + key <AB02> { [ Cyrillic_softsign, U045D, + Cyrillic_yeru, Cyrillic_YERU ] }; + key <AB03> { [ Cyrillic_tse, Cyrillic_TSE, + copyright, copyright ] }; + key <AB04> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; + key <AB05> { [ Cyrillic_be, Cyrillic_BE ] }; + key <AB06> { [ Cyrillic_en, Cyrillic_EN ] }; + key <AB07> { [ Cyrillic_em, Cyrillic_EM ] }; + key <AB08> { [ comma, doublelowquotemark, + guillemotleft, guillemotleft ] }; + key <AB09> { [ period, leftdoublequotemark, + guillemotright, guillemotright ] }; + key <AB10> { [ slash, question, + U0300, U0301 ] }; - key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] }; - key <LatX> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; - key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] }; - key <LatV> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; - key <LatB> { [ Cyrillic_be, Cyrillic_BE ] }; - key <LatN> { [ Cyrillic_en, Cyrillic_EN ] }; - key <LatM> { [ Cyrillic_em, Cyrillic_EM ] }; - key <AB08> { [ comma, less ] }; - key <AB09> { [ period, greater ] }; - key <AB10> { [ slash, question ] }; - // End alphanumeric section + key <SPCE> { [ space, space, + nobreakspace, nobreakspace ] }; + + + key <KPDL> { type[Group1] = "KEYPAD", + [ KP_Delete, KP_Separator ] }; }; -partial alphanumeric_keys +// This is the Bulgarian phonetic keyboard acording to the proposed +// state standard BDS 5237:2006 with additional symbols in +// levels 3 and 4. +partial alphanumeric_keys xkb_symbols "bas_phonetic" { - name[Group1]= "Bulgaria - Standard Phonetic"; - -key.type[Group1] = "ALPHABETIC"; - key <TLDE> { [ Cyrillic_yu, Cyrillic_YU ] }; -key.type[Group1] = "TWO_LEVEL"; - key <AE01> { [ 1, exclam ] }; - key <AE02> { [ 2, at ] }; - key <AE03> { [ 3, numerosign ] }; - key <AE04> { [ 4, dollar ] }; - key <AE05> { [ 5, percent ] }; - key <AE06> { [ 6, EuroSign ] }; - key <AE07> { [ 7, section ] }; - key <AE08> { [ 8, asterisk ] }; - key <AE09> { [ 9, parenleft ] }; - key <AE10> { [ 0, parenright ] }; - key <AE11> { [ minus, emdash ] }; - key <AE12> { [ equal, plus ] }; - -key.type[Group1] = "ALPHABETIC"; - key <LatQ> { [ Cyrillic_che, Cyrillic_CHE ] }; - key <LatW> { [ Cyrillic_sha, Cyrillic_SHA ] }; - key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] }; - key <LatR> { [ Cyrillic_er, Cyrillic_ER ] }; - key <LatT> { [ Cyrillic_te, Cyrillic_TE ] }; - key <LatY> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; - key <LatU> { [ Cyrillic_u, Cyrillic_U ] }; - key <LatI> { [ Cyrillic_i, Cyrillic_I ] }; - key <LatO> { [ Cyrillic_o, Cyrillic_O ] }; - key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] }; - key <AD11> { [ Cyrillic_ya, Cyrillic_YA ] }; - key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; - - key <LatA> { [ Cyrillic_a, Cyrillic_A ] }; - key <LatS> { [ Cyrillic_es, Cyrillic_ES ] }; - key <LatD> { [ Cyrillic_de, Cyrillic_DE ] }; - key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] }; - key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] }; - key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] }; - key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; - key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] }; - key <LatL> { [ Cyrillic_el, Cyrillic_EL ] }; -key.type[Group1] = "TWO_LEVEL"; - key <AC10> { [ semicolon, colon ] }; - key <AC11> { [ apostrophe, quotedbl ] }; -key.type[Group1] = "ALPHABETIC"; - key <BKSL> { [ Cyrillic_softsign, U045D ] }; - - key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] }; - key <LatX> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; - key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] }; - key <LatV> { [ Cyrillic_ve, Cyrillic_VE ] }; - key <LatB> { [ Cyrillic_be, Cyrillic_BE ] }; - key <LatN> { [ Cyrillic_en, Cyrillic_EN ] }; - key <LatM> { [ Cyrillic_em, Cyrillic_EM ] }; -key.type[Group1] = "TWO_LEVEL"; - key <AB08> { [ comma, doublelowquotemark ] }; - key <AB09> { [ period, leftdoublequotemark ] }; - key <AB10> { [ slash, question ] }; - - key <LSGT> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; - - // End alphanumeric section + include "bg(phonetic)" + name[Group1]= "Bulgaria - New phonetic"; + + key <TLDE> { [ Cyrillic_yu, Cyrillic_YU ] }; + key <AD01> { [ Cyrillic_che, Cyrillic_CHE ] }; + key <AD02> { [ Cyrillic_sha, Cyrillic_SHA ] }; + key <AD11> { [ Cyrillic_ya, Cyrillic_YA, + U0463, U0462 ] }; + key <BKSL> { [ Cyrillic_softsign, U045D, + Cyrillic_yeru, Cyrillic_YERU ] }; + key <AB02> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; + key <AB04> { [ Cyrillic_ve, Cyrillic_VE ] }; +}; + + +// This is extended variant of the standard Latin QWERTY layout with +// additional symbols in levels 3 and 4. +partial hidden alphanumeric_keys +xkb_symbols "latin" { + + name[Group1]= "Bulgaria - Latin"; + + key <TLDE> { [ grave, asciitilde, + U2248, U2245 ] }; + key <AE01> { [ 1, exclam, + notsign, notsign ] }; + key <AE02> { [ 2, at, + twosuperior, enfilledcircbullet ] }; + key <AE03> { [ 3, numbersign, + threesuperior, notequal ] }; + key <AE04> { [ 4, dollar, + EuroSign, sterling ] }; + key <AE05> { [ 5, percent, + U2030, U2030 ] }; + key <AE06> { [ 6, asciicircum, + logicaland, logicalor ] }; + key <AE07> { [ 7, ampersand, + section, section ] }; + key <AE08> { [ 8, asterisk, + infinity, multiply ] }; + key <AE09> { [ 9, parenleft, + U2202, nabla ] }; + key <AE10> { [ 0, parenright, + U2300, U2300 ] }; + key <AE11> { [ minus, underscore, + U2011, endash ] }; + key <AE12> { [ equal, plus, + emdash, plusminus ] }; + + + key <AD01> { [ q, Q, + Greek_THETA, Greek_theta ] }; + key <AD02> { [ w, W, + Greek_OMEGA, Greek_omega ] }; + key <AD03> { [ e, E, + U2203, Greek_epsilon ] }; + key <AD04> { [ r, R, + registered, Greek_rho ] }; + key <AD05> { [ t, T, + trademark, Greek_tau ] }; + key <AD06> { [ y, Y, + yen, Greek_upsilon ] }; + key <AD07> { [ u, U, + intersection, union ] }; + key <AD08> { [ i, I, + integral, Greek_iota ] }; + key <AD09> { [ o, O, + degree, U222E ] }; + key <AD10> { [ p, P, + Greek_PI, Greek_pi ] }; + key <AD11> { [ bracketleft, braceleft, + U2286, includedin ] }; + key <AD12> { [ bracketright, braceright, + U2208, U2209 ] }; + + + key <AC01> { [ a, A, + U2200, Greek_alpha ] }; + key <AC02> { [ s, S, + Greek_SIGMA, Greek_sigma ] }; + key <AC03> { [ d, D, + Greek_DELTA, Greek_delta ] }; + key <AC04> { [ f, F, + Greek_PHI, Greek_phi ] }; + key <AC05> { [ g, G, + Greek_GAMMA, Greek_gamma ] }; + key <AC06> { [ h, H, + U2225, Greek_eta ] }; + key <AC07> { [ j, J ] }; + key <AC08> { [ k, K, + U03F0, Greek_kappa ] }; + key <AC09> { [ l, L, + Greek_LAMBDA, Greek_lambda ] }; + key <AC10> { [ semicolon, colon, + division, division ] }; + key <AC11> { [ apostrophe, quotedbl, + leftdoublequotemark, rightdoublequotemark ] }; + key <BKSL> { [ backslash, bar, + identical, downtack ] }; + + + key <LSGT> { [ less, greater, + U2266, U2267 ] }; + key <AB01> { [ z, Z, + U2220, Greek_zeta ] }; + key <AB02> { [ x, X, + Greek_XI, Greek_xi ] }; + key <AB03> { [ c, C, + copyright, Greek_chi ] }; + key <AB04> { [ v, V, + Greek_PSI, Greek_psi ] }; + key <AB05> { [ b, B, + U03D1, Greek_beta ] }; + key <AB06> { [ n, N, + U207F, Greek_nu ] }; + key <AB07> { [ m, M, + Greek_mu, Greek_mu ] }; + key <AB08> { [ comma, less, + U2266, U21D4 ] }; + key <AB09> { [ period, greater, + U2267, U21D2 ] }; + key <AB10> { [ slash, question, + leftsinglequotemark, rightsinglequotemark ] }; + + + key <SPCE> { [ space, space, + nobreakspace, nobreakspace ] }; + key <KPDL> { type[Group1] = "KEYPAD", - [ KP_Delete, KP_Separator ] }; + [ KP_Delete, KP_Decimal ] }; }; |