Home | History | Annotate | Line # | Download | only in symbols
bg revision 1.1.1.3
      1 //////////////////////////////////////////////////////////////////////////
      2 // Copyright (C) 1999, 2000, 2007, 2009 by Anton Zinoviev <anton (a] lml.bas.bg>
      3 //
      4 // This software may be used, modified, copied, distributed, and sold,
      5 // both in source and binary form provided that the above copyright
      6 // notice and these terms are retained. The name of the author may not
      7 // be used to endorse or promote products derived from this software
      8 // without prior permission.  THIS SOFTWARE IS PROVIDES "AS IS" AND
      9 // ANY EXPRESS OR IMPLIED WARRANTIES ARE DISCLAIMED.  IN NO EVENT
     10 // SHALL THE AUTHOR BE LIABLE FOR ANY DAMAGES ARISING IN ANY WAY OUT
     11 // OF THE USE OF THIS SOFTWARE.
     12 //
     13 ////////////////////////////////////////////////////////////////////////// 
     14 // Version 2.0
     15 
     16 // The following variants are defined in this file:
     17 
     18 // "bds" - the BDS keyboard layout compliant with the proposed
     19 //         Bulgarian state standard BDS 5237:2006
     20 
     21 // "phonetic" - Bulgarian phonetic layout with traditional position of
     22 //              the letters.
     23 
     24 // "bas_phonetic" - the phonetic keyboard layout compliant with the
     25 //                  proposed Bulgarian state standard BDS 5237:2006
     26 
     27 // "latin" - an extended variant of the QWERTY layout with symbols
     28 //           Bulgarian users will type while the keyboard is in Latin mode.
     29 
     30 // The reasons behind the layout of the symbols in levels 3 and 4 are
     31 // explained in http://arxiv.org/abs/0905.0484  (in Bulgarian).
     32 
     33 // Two notes for the maintainers of xkeyboard-config:
     34 
     35 // 1. Please do not use key names such as <LatQ> for the Bulgarian
     36 // phonetic layouts.  The placement of the symbols must stay always
     37 // the same regardless of which one of the alias sets in
     38 // xkb/keycodes/aliases is used.
     39 
     40 // 2. The layouts should not include level3(ralt_switch).
     41 
     42 ////////////////////////////////////////////////////////////////////////// 
     43 
     44 // Describes Bulgarian keyboard "BDS" modified according to the
     45 // the new state standard BDS 5237:2006 and extended with symbols in
     46 // levels 3 and 4.
     47 partial default alphanumeric_keys
     48 xkb_symbols "bds" {
     49 
     50   name[Group1]= "Bulgaria";
     51   
     52   key <TLDE> {   [ parenleft,         parenright,
     53 		   bracketleft,       bracketright        ]    };
     54   key <AE01> {   [ 1,                 exclam              ]    };
     55   key <AE02> {   [ 2,                 question            ]    };
     56   key <AE03> {   [ 3,                 plus,
     57 		   dagger,            dagger              ]    };
     58   key <AE04> {   [ 4,                 quotedbl            ]    };
     59   key <AE05> {   [ 5,                 percent,
     60 		   U2329,             U232A               ]    };
     61   key <AE06> {   [ 6,                 equal,
     62 		   emdash,            emdash              ]    };
     63   key <AE07> {   [ 7,                 colon,
     64 		   ellipsis,          ellipsis            ]    };
     65   key <AE08> {   [ 8,                 slash,
     66 		   U0300,             U0301               ]    };
     67   key <AE09> {   [ 9,                 endash              ]    };
     68   key <AE10> {   [ 0,                 numerosign          ]    };
     69   key <AE11> {   [ minus,             dollar,
     70 		   U2011,             EuroSign            ]    };
     71   key <AE12> {   [ period,            EuroSign            ]    };
     72 
     73 
     74   key <AD01> {   [ comma,             Cyrillic_yeru,
     75 		   rightsinglequotemark, leftsinglequotemark ] };
     76   key <AD02> {   [ Cyrillic_u,        Cyrillic_U          ]    };
     77   key <AD03> {   [ Cyrillic_ie,       Cyrillic_IE,
     78 		   Cyrillic_e,        Cyrillic_E          ]    };
     79   key <AD04> {   [ Cyrillic_i,        Cyrillic_I,
     80 		   U045D,             U040D               ]    };
     81   key <AD05> {   [ Cyrillic_sha,      Cyrillic_SHA        ]    };
     82   key <AD06> {   [ Cyrillic_shcha,    Cyrillic_SHCHA      ]    };
     83   key <AD07> {   [ Cyrillic_ka,       Cyrillic_KA,
     84 		   copyright,         copyright           ]    };
     85   key <AD08> {   [ Cyrillic_es,       Cyrillic_ES,
     86 		   copyright,         copyright           ]    };
     87   key <AD09> {   [ Cyrillic_de,       Cyrillic_DE         ]    };
     88   key <AD10> {   [ Cyrillic_ze,       Cyrillic_ZE         ]    };
     89   key <AD11> {   [ Cyrillic_tse,      Cyrillic_TSE        ]    };
     90   key <AD12> {   [ semicolon,         section             ]    };
     91 
     92 
     93   key <AC01> {   [ Cyrillic_softsign, U045D,
     94 		   Cyrillic_yeru,     Cyrillic_YERU       ]    };
     95   key <AC02> {   [ Cyrillic_ya,       Cyrillic_YA,
     96 		   U0463,             U0462               ]    };
     97   key <AC03> {   [ Cyrillic_a,        Cyrillic_A          ]    };
     98   key <AC04> {   [ Cyrillic_o,        Cyrillic_O          ]    };
     99   key <AC05> {   [ Cyrillic_zhe,      Cyrillic_ZHE        ]    };
    100   key <AC06> {   [ Cyrillic_ghe,      Cyrillic_GHE        ]    };
    101   key <AC07> {   [ Cyrillic_te,       Cyrillic_TE,
    102 		   trademark,         trademark           ]    };
    103   key <AC08> {   [ Cyrillic_en,       Cyrillic_EN         ]    };
    104   key <AC09> {   [ Cyrillic_ve,       Cyrillic_VE         ]    };
    105   key <AC10> {   [ Cyrillic_em,       Cyrillic_EM         ]    };
    106   key <AC11> {   [ Cyrillic_che,      Cyrillic_CHE        ]    };
    107   key <BKSL> {   [ doublelowquotemark, leftdoublequotemark,
    108 		   guillemotleft,     guillemotright      ]    };
    109 
    110 
    111   key <LSGT> {   [ U045D,             U040D               ]    };
    112   key <AB01> {   [ Cyrillic_yu,       Cyrillic_YU         ]    };
    113   key <AB02> {   [ Cyrillic_shorti,   Cyrillic_SHORTI,
    114 		   U046D,             U046C               ]    };
    115   key <AB03> {   [ Cyrillic_hardsign, Cyrillic_HARDSIGN,
    116 		   U046B,             U046A               ]    };
    117   key <AB04> {   [ Cyrillic_e,        Cyrillic_E          ]    };
    118   key <AB05> {   [ Cyrillic_ef,       Cyrillic_EF         ]    };
    119   key <AB06> {   [ Cyrillic_ha,       Cyrillic_HA         ]    };
    120   key <AB07> {   [ Cyrillic_pe,       Cyrillic_PE         ]    };
    121   key <AB08> {   [ Cyrillic_er,       Cyrillic_ER,
    122 		   registered,        registered          ]    };
    123   key <AB09> {   [ Cyrillic_el,       Cyrillic_EL         ]    };
    124   key <AB10> {   [ Cyrillic_be,       Cyrillic_BE         ]    };
    125 
    126 
    127   key <SPCE> {   [ space,             space,
    128 		   nobreakspace,      nobreakspace        ]    };
    129     
    130 
    131   key <KPDL> {   type[Group1] = "KEYPAD",
    132                  [ KP_Delete,         KP_Separator        ]    };
    133 };
    134 
    135 // This is improved variant of the traditional Bulgarian phonetic
    136 // keyboard.  Some unnecessary symbols in levels 1 and 2 are replaced
    137 // by more useful (the same way as in "bas_phonetic") and additional
    138 // symbols in levels 3 and 4 are added.
    139 partial alphanumeric_keys 
    140 xkb_symbols "phonetic" {
    141   name[Group1]= "Bulgaria - Traditional phonetic";
    142   
    143   key <TLDE> {   [ Cyrillic_che,      Cyrillic_CHE        ]    };
    144   key <AE01> {   [ 1,                 exclam              ]    };
    145   key <AE02> {   [ 2,                 at                  ]    };
    146   key <AE03> {   [ 3,                 numerosign          ]    };
    147   key <AE04> {   [ 4,                 dollar,
    148 		   EuroSign,          EuroSign            ]    };
    149   key <AE05> {   [ 5,                 percent             ]    };
    150   key <AE06> {   [ 6,                 EuroSign            ]    };
    151   key <AE07> {   [ 7,                 section             ]    };
    152   key <AE08> {   [ 8,                 asterisk            ]    };
    153   key <AE09> {   [ 9,                 parenleft,
    154 		   bracketleft,       U2329               ]    };
    155   key <AE10> {   [ 0,                 parenright,
    156 		   bracketright,      U232A               ]    };
    157   key <AE11> {   [ minus,             endash,
    158 		   U2011,             U2011               ]    };
    159   key <AE12> {   [ equal,             plus,
    160 		   emdash,            dagger              ]    };
    161 
    162   key <AD01> {   [ Cyrillic_ya,       Cyrillic_YA,
    163 		   U0463,             U0462               ]    };
    164   key <AD02> {   [ Cyrillic_ve,       Cyrillic_VE         ]    };
    165   key <AD03> {   [ Cyrillic_ie,       Cyrillic_IE,
    166 		   Cyrillic_e,        Cyrillic_E          ]    };
    167   key <AD04> {   [ Cyrillic_er,       Cyrillic_ER,
    168 		   registered,        registered          ]    };
    169   key <AD05> {   [ Cyrillic_te,       Cyrillic_TE,
    170 		   trademark,         trademark           ]    };
    171   key <AD06> {   [ Cyrillic_hardsign, Cyrillic_HARDSIGN,
    172 		   U046B,             U046A               ]    };
    173   key <AD07> {   [ Cyrillic_u,        Cyrillic_U          ]    };
    174   key <AD08> {   [ Cyrillic_i,        Cyrillic_I,
    175 		   U045D,             U040D               ]    };
    176   key <AD09> {   [ Cyrillic_o,        Cyrillic_O          ]    };
    177   key <AD10> {   [ Cyrillic_pe,       Cyrillic_PE         ]    };
    178   key <AD11> {   [ Cyrillic_sha,      Cyrillic_SHA        ]    };
    179   key <AD12> {   [ Cyrillic_shcha,    Cyrillic_SHCHA      ]    };
    180   
    181   
    182   key <AC01> {   [ Cyrillic_a,        Cyrillic_A          ]    };
    183   key <AC02> {   [ Cyrillic_es,       Cyrillic_ES,
    184 		   copyright,         copyright           ]    };
    185   key <AC03> {   [ Cyrillic_de,       Cyrillic_DE         ]    };
    186   key <AC04> {   [ Cyrillic_ef,       Cyrillic_EF         ]    };
    187   key <AC05> {   [ Cyrillic_ghe,      Cyrillic_GHE        ]    };
    188   key <AC06> {   [ Cyrillic_ha,       Cyrillic_HA         ]    };
    189   key <AC07> {   [ Cyrillic_shorti,   Cyrillic_SHORTI,
    190 		   U046D,             U046C               ]    };
    191   key <AC08> {   [ Cyrillic_ka,       Cyrillic_KA         ]    };
    192   key <AC09> {   [ Cyrillic_el,       Cyrillic_EL         ]    };
    193   key <AC10> {   [ semicolon,         colon,
    194 		   ellipsis,          ellipsis            ]    };
    195   key <AC11> {   [ apostrophe,        quotedbl,
    196 		   rightsinglequotemark, leftsinglequotemark ] };
    197   key <BKSL> {   [ Cyrillic_yu,       Cyrillic_YU         ]    };
    198   
    199   
    200   key <LSGT> {   [ U045D,             U040D               ]    };
    201   key <AB01> {   [ Cyrillic_ze,       Cyrillic_ZE         ]    };
    202   key <AB02> {   [ Cyrillic_softsign, U045D,
    203 		   Cyrillic_yeru,     Cyrillic_YERU       ]    };
    204   key <AB03> {   [ Cyrillic_tse,      Cyrillic_TSE,
    205 		   copyright,         copyright           ]    };
    206   key <AB04> {   [ Cyrillic_zhe,      Cyrillic_ZHE        ]    };
    207   key <AB05> {   [ Cyrillic_be,       Cyrillic_BE         ]    };
    208   key <AB06> {   [ Cyrillic_en,       Cyrillic_EN         ]    };
    209   key <AB07> {   [ Cyrillic_em,       Cyrillic_EM         ]    };
    210   key <AB08> {   [ comma,             doublelowquotemark,
    211 		   guillemotleft,     guillemotleft       ]    };
    212   key <AB09> {   [ period,            leftdoublequotemark,
    213 		   guillemotright,    guillemotright      ]    };
    214   key <AB10> {   [ slash,             question,
    215 		   U0300,             U0301               ]    };
    216 
    217 
    218   key <SPCE> {   [ space,             space,
    219 		   nobreakspace,      nobreakspace        ]    };
    220 
    221 
    222   key <KPDL> {   type[Group1] = "KEYPAD",
    223                  [ KP_Delete,           KP_Separator         ]    };
    224 
    225 };
    226 
    227 // This is the Bulgarian phonetic keyboard acording to the proposed
    228 // state standard BDS 5237:2006 with additional symbols in
    229 // levels 3 and 4.
    230 partial alphanumeric_keys 
    231 xkb_symbols "bas_phonetic" {
    232   include "bg(phonetic)"
    233   name[Group1]= "Bulgaria - New phonetic";
    234   
    235   key <TLDE> {   [ Cyrillic_yu,       Cyrillic_YU         ]    };
    236   key <AD01> {   [ Cyrillic_che,      Cyrillic_CHE        ]    };
    237   key <AD02> {   [ Cyrillic_sha,      Cyrillic_SHA        ]    };
    238   key <AD11> {   [ Cyrillic_ya,       Cyrillic_YA,
    239 		   U0463,             U0462               ]    };
    240   key <BKSL> {   [ Cyrillic_softsign, U045D,
    241 		   Cyrillic_yeru,     Cyrillic_YERU       ]    };
    242   key <AB02> {   [ Cyrillic_zhe,      Cyrillic_ZHE        ]    };
    243   key <AB04> {   [ Cyrillic_ve,       Cyrillic_VE         ]    };
    244 };
    245 
    246 
    247 // This is extended variant of the standard Latin QWERTY layout with
    248 // additional symbols in levels 3 and 4.
    249 partial hidden alphanumeric_keys 
    250 xkb_symbols "latin" {
    251   
    252   key <TLDE> {   [ grave,             asciitilde,
    253 		   U2248,             U2245               ]    };
    254   key <AE01> {   [ 1,                 exclam,
    255 		   notsign,           notsign             ]    };
    256   key <AE02> {   [ 2,                 at,
    257 		   twosuperior,       enfilledcircbullet  ]    };
    258   key <AE03> {   [ 3,                 numbersign,
    259 		   threesuperior,     notequal            ]    };
    260   key <AE04> {   [ 4,                 dollar,
    261 		   EuroSign,          sterling            ]    };
    262   key <AE05> {   [ 5,                 percent,
    263 		   U2030,             U2030               ]    };
    264   key <AE06> {   [ 6,                 asciicircum,
    265 		   logicaland,        logicalor           ]    };
    266   key <AE07> {   [ 7,                 ampersand,
    267 		   section,           section             ]    };
    268   key <AE08> {   [ 8,                 asterisk,
    269 		   infinity,          multiply            ]    };
    270   key <AE09> {   [ 9,                 parenleft,
    271 		   U2202,             nabla               ]    };
    272   key <AE10> {   [ 0,                 parenright,
    273 		   U2300,             U2300               ]    };
    274   key <AE11> {   [ minus,             underscore,
    275 		   U2011,             endash              ]    };
    276   key <AE12> {   [ equal,             plus,
    277 		   emdash,            plusminus           ]    };
    278 
    279 
    280   key <AD01> {   [ q,                 Q,
    281 		   Greek_THETA,       Greek_theta         ]    };
    282   key <AD02> {   [ w,                 W,
    283 		   Greek_OMEGA,       Greek_omega         ]    };
    284   key <AD03> {   [ e,                 E,
    285 		   U2203,             Greek_epsilon       ]    };
    286   key <AD04> {   [ r,                 R,
    287 		   registered,        Greek_rho           ]    };
    288   key <AD05> {   [ t,                 T,
    289 		   trademark,         Greek_tau           ]    };
    290   key <AD06> {   [ y,                 Y,
    291 		   yen,               Greek_upsilon       ]    };
    292   key <AD07> {   [ u,                 U,
    293 		   intersection,      union               ]    };
    294   key <AD08> {   [ i,                 I,
    295 		   integral,          Greek_iota          ]    };
    296   key <AD09> {   [ o,                 O,
    297 		   degree,            U222E               ]    };
    298   key <AD10> {   [ p,                 P,
    299 		   Greek_PI,          Greek_pi            ]    };
    300   key <AD11> {   [ bracketleft,       braceleft,
    301 		   U2286,             includedin          ]    };
    302   key <AD12> {   [ bracketright,      braceright,
    303 		   U2208,             U2209               ]    };
    304 
    305 
    306   key <AC01> {   [ a,                 A,
    307 		   U2200,             Greek_alpha         ]    };
    308   key <AC02> {   [ s,                 S,
    309 		   Greek_SIGMA,       Greek_sigma         ]    };
    310   key <AC03> {   [ d,                 D,
    311 		   Greek_DELTA,       Greek_delta         ]    };
    312   key <AC04> {   [ f,                 F,
    313 		   Greek_PHI,         Greek_phi           ]    };
    314   key <AC05> {   [ g,                 G,
    315 		   Greek_GAMMA,       Greek_gamma         ]    };
    316   key <AC06> {   [ h,                 H,
    317 		   U2225,             Greek_eta           ]    };
    318   key <AC07> {   [ j,                 J                   ]    };
    319   key <AC08> {   [ k,                 K,
    320 		   U03F0,             Greek_kappa         ]    };
    321   key <AC09> {   [ l,                 L,
    322 		   Greek_LAMBDA,      Greek_lambda        ]    };
    323   key <AC10> {   [ semicolon,         colon,
    324 		   division,          division            ]    };
    325   key <AC11> {   [ apostrophe,        quotedbl,
    326 		   leftdoublequotemark, rightdoublequotemark ] };
    327   key <BKSL> {   [ backslash,         bar,
    328 		   identical,         downtack            ]    };
    329 
    330 
    331   key <LSGT> {   [ less,              greater,
    332 		   U2266,             U2267               ]    };
    333   key <AB01> {   [ z,                 Z,
    334 		   U2220,             Greek_zeta          ]    };
    335   key <AB02> {   [ x,                 X,
    336 		   Greek_XI,          Greek_xi            ]    };
    337   key <AB03> {   [ c,                 C,
    338 		   copyright,         Greek_chi           ]    };
    339   key <AB04> {   [ v,                 V,
    340 		   Greek_PSI,         Greek_psi           ]    };
    341   key <AB05> {   [ b,                 B,
    342 		   U03D1,             Greek_beta          ]    };
    343   key <AB06> {   [ n,                 N,
    344 		   U207F,             Greek_nu            ]    };
    345   key <AB07> {   [ m,                 M,
    346 		   Greek_mu,          Greek_mu            ]    };
    347   key <AB08> {   [ comma,             less,
    348 		   U2266,             U21D4               ]    };
    349   key <AB09> {   [ period,            greater,
    350 		   U2267,             U21D2               ]    };
    351   key <AB10> {   [ slash,             question,
    352 		   leftsinglequotemark, rightsinglequotemark ] };
    353 
    354 
    355   key <SPCE> {   [ space,             space,
    356 		   nobreakspace,      nobreakspace        ]    };
    357 
    358 
    359   key <KPDL> {   type[Group1] = "KEYPAD",
    360                  [ KP_Delete,           KP_Decimal        ]    };
    361 };
    362 
    363