1// based on a keyboard map from an 'xkb/symbols/am' file 2 3default partial alphanumeric_keys 4xkb_symbols "basic" { 5 6 name[Group1]= "Armenian"; 7 8 key <TLDE> { [ Armenian_separation_mark, Armenian_exclam ] }; 9 key <LSGT> { [ question, Armenian_hyphen ] }; 10 key <BKSL> { [ guillemotright, guillemotleft ] }; 11 12 key <AE01> { [ Armenian_fe, Armenian_FE ] }; 13 key <AE02> { [ Armenian_dza, Armenian_DZA ] }; 14 key <AE03> { [ Armenian_hyphen, 0x1002014 ] }; 15 key <AE04> { [ comma, dollar ] }; 16 key <AE05> { [ Armenian_full_stop, 0x1002026 ] }; 17 key <AE06> { [ Armenian_question, percent ] }; 18 key <AE07> { [ 0x1002024, Armenian_ligature_ew ] }; 19 key <AE08> { [ Armenian_accent, Armenian_apostrophe ] }; 20 key <AE09> { [ parenright, parenleft ] }; 21 key <AE10> { [ Armenian_o, Armenian_O ] }; 22 key <AE11> { [ Armenian_e, Armenian_E ] }; 23 key <AE12> { [ Armenian_ghat, Armenian_GHAT ] }; 24 25 key <AD01> { [ Armenian_tche, Armenian_TCHE ] }; 26 key <AD02> { [ Armenian_pyur, Armenian_PYUR ] }; 27 key <AD03> { [ Armenian_ben, Armenian_BEN ] }; 28 key <AD04> { [ Armenian_se, Armenian_SE ] }; 29 key <AD05> { [ Armenian_men, Armenian_MEN ] }; 30 key <AD06> { [ Armenian_vo, Armenian_VO ] }; 31 key <AD07> { [ Armenian_vyun, Armenian_VYUN ] }; 32 key <AD08> { [ Armenian_ken, Armenian_KEN ] }; 33 key <AD09> { [ Armenian_at, Armenian_AT ] }; 34 key <AD10> { [ Armenian_to, Armenian_TO ] }; 35 key <AD11> { [ Armenian_tsa, Armenian_TSA ] }; 36 key <AD12> { [ Armenian_tso, Armenian_TSO ] }; 37 38 key <AC01> { [ Armenian_je, Armenian_JE ] }; 39 key <AC02> { [ Armenian_vev, Armenian_VEV ] }; 40 key <AC03> { [ Armenian_gim, Armenian_GIM ] }; 41 key <AC04> { [ Armenian_yech, Armenian_YECH ] }; 42 key <AC05> { [ Armenian_ayb, Armenian_AYB ] }; 43 key <AC06> { [ Armenian_nu, Armenian_NU ] }; 44 key <AC07> { [ Armenian_ini, Armenian_INI ] }; 45 key <AC08> { [ Armenian_tyun, Armenian_TYUN ] }; 46 key <AC09> { [ Armenian_ho, Armenian_HO ] }; 47 key <AC10> { [ Armenian_pe, Armenian_PE ] }; 48 key <AC11> { [ Armenian_re, Armenian_RE ] }; 49 50 key <AB01> { [ Armenian_zhe, Armenian_ZHE ] }; 51 key <AB02> { [ Armenian_da, Armenian_DA ] }; 52 key <AB03> { [ Armenian_cha, Armenian_CHA ] }; 53 key <AB04> { [ Armenian_hi, Armenian_HI ] }; 54 key <AB05> { [ Armenian_za, Armenian_ZA ] }; 55 key <AB06> { [ Armenian_lyun, Armenian_LYUN ] }; 56 key <AB07> { [ Armenian_ke, Armenian_KE ] }; 57 key <AB08> { [ Armenian_khe, Armenian_KHE ] }; 58 key <AB09> { [ Armenian_sha, Armenian_SHA ] }; 59 key <AB10> { [ Armenian_ra, Armenian_RA ] }; 60 61}; 62 63partial alphanumeric_keys 64xkb_symbols "olpc" { 65 include "am(basic)" 66 include "group(olpc)" 67}; 68 69xkb_symbols "phonetic" { 70 include "am(basic)" 71 name[Group1]= "Armenian (phonetic)"; 72 73 key <BKSL> { [ Armenian_sha, Armenian_SHA ] }; 74 75 key <AE01> { [ Armenian_e, Armenian_E ] }; 76 key <AE02> { [ Armenian_to, Armenian_TO ] }; 77 key <AE03> { [ Armenian_pyur, Armenian_PYUR ] }; 78 key <AE04> { [ Armenian_dza, Armenian_DZA ] }; 79 key <AE05> { [ Armenian_je, Armenian_JE ] }; 80 key <AE06> { [ Armenian_vyun, Armenian_VYUN ] }; 81 key <AE07> { [ Armenian_ligature_ew, 0x100058f ] }; 82 key <AE08> { [ Armenian_ra, Armenian_RA ] }; 83 key <AE09> { [ Armenian_cha, Armenian_CHA ] }; 84 key <AE10> { [ Armenian_tche, Armenian_TCHE ] }; 85 key <AE11> { [ Armenian_hyphen, 0x1002015 ] }; 86 key <AE12> { [ Armenian_zhe, Armenian_ZHE ] }; 87 88 key <LatQ> { [ Armenian_ke, Armenian_KE ] }; 89 key <LatW> { [ Armenian_vo, Armenian_VO ] }; 90 key <LatE> { [ Armenian_yech, Armenian_YECH ] }; 91 key <LatR> { [ Armenian_re, Armenian_RE ] }; 92 key <LatT> { [ Armenian_tyun, Armenian_TYUN ] }; 93 key <LatY> { [ Armenian_at, Armenian_AT ] }; 94 key <LatU> { [ Armenian_vyun, Armenian_VYUN ] }; 95 key <LatI> { [ Armenian_ini, Armenian_INI ] }; 96 key <LatO> { [ Armenian_o, Armenian_O ] }; 97 key <LatP> { [ Armenian_pe, Armenian_PE ] }; 98 key <AD11> { [ Armenian_khe, Armenian_KHE ] }; 99 key <AD12> { [ Armenian_tsa, Armenian_TSA ] }; 100 101 key <LatA> { [ Armenian_ayb, Armenian_AYB ] }; 102 key <LatS> { [ Armenian_se, Armenian_SE ] }; 103 key <LatD> { [ Armenian_da, Armenian_DA ] }; 104 key <LatF> { [ Armenian_fe, Armenian_FE ] }; 105 key <LatG> { [ Armenian_gim, Armenian_GIM ] }; 106 key <LatH> { [ Armenian_ho, Armenian_HO ] }; 107 key <LatJ> { [ Armenian_hi, Armenian_HI ] }; 108 key <LatK> { [ Armenian_ken, Armenian_KEN ] }; 109 key <LatL> { [ Armenian_lyun, Armenian_LYUN ] }; 110 key <AC10> { [ semicolon, Armenian_full_stop ] }; 111 key <AC11> { [ Armenian_accent, 0x1000022 ] }; 112 113 key <LatZ> { [ Armenian_za, Armenian_ZA ] }; 114 key <LatX> { [ Armenian_ghat, Armenian_GHAT ] }; 115 key <LatC> { [ Armenian_tso, Armenian_TSO ] }; 116 key <LatV> { [ Armenian_vev, Armenian_VEV ] }; 117 key <LatB> { [ Armenian_ben, Armenian_BEN ] }; 118 key <LatN> { [ Armenian_nu, Armenian_NU ] }; 119 key <LatM> { [ Armenian_men, Armenian_MEN ] }; 120 key <AB08> { [ 0x100002C, 0x10000AB ] }; 121 key <AB09> { [ 0x1002024, 0x10000BB ] }; 122 key <AB10> { [ 0x100002F, Armenian_question ] }; 123 124}; 125 126partial alphanumeric_keys 127xkb_symbols "phonetic-alt" { 128 include "am(phonetic)" 129 name[Group1]= "Armenian (alt. phonetic)"; 130 131 key <AE08> { [ Armenian_re, Armenian_RE ] }; 132 key <LatR> { [ Armenian_ra, Armenian_RA ] }; 133 134}; 135 136partial alphanumeric_keys 137xkb_symbols "olpc-phonetic" { 138 include "am(phonetic-alt)" 139 name[Group1]= "Armenian (OLPC, phonetic)"; 140 141 include "group(olpc)" 142}; 143 144partial alphanumeric_keys 145xkb_symbols "eastern" { 146 147 name[Group1]="Armenian (eastern)"; 148 149 // This is the closer phonetic transliteration for Eastern Armenian 150 // than the Windows XP layout for Eastern Armenian, which seems 151 // to have contained a bug, with the reversal of 'g' for keh and 'c' for gim. 152 // Also, AE01 (the colon) has been replaced with the Armenian_full_stop, 153 // and capital AE07 (ken) with the Armenian ligature ew. 154 155 key <TLDE> { [ Armenian_separation_mark, Armenian_exclam ] }; 156 key <AE01> { [ Armenian_full_stop, KP_1 ] }; 157 key <AE02> { [ Armenian_dza, Armenian_DZA ] }; 158 key <AE03> { [ Armenian_hi, Armenian_HI ] }; 159 key <AE04> { [ Armenian_accent, KP_3 ] }; 160 key <AE05> { [ comma, KP_4 ] }; 161 key <AE06> { [ minus, KP_9 ] }; 162 key <AE07> { [ period, Armenian_ligature_ew ] }; 163 key <AE08> { [ guillemotleft, parenleft ] }; 164 key <AE09> { [ guillemotright, parenright ] }; 165 key <AE10> { [ Armenian_o, Armenian_O ] }; 166 key <AE11> { [ Armenian_ra, Armenian_RA ] }; 167 key <AE12> { [ Armenian_zhe, Armenian_ZHE ] }; 168 169 key <LatQ> { [ Armenian_khe, Armenian_KHE ] }; 170 key <LatW> { [ Armenian_vyun, Armenian_VYUN ] }; 171 key <LatE> { [ Armenian_e, Armenian_E ] }; 172 key <LatR> { [ Armenian_re, Armenian_RE ] }; 173 key <LatT> { [ Armenian_tyun, Armenian_TYUN ] }; 174 key <LatY> { [ Armenian_yech, Armenian_YECH ] }; 175 key <LatU> { [ Armenian_at, Armenian_AT ] }; 176 key <LatI> { [ Armenian_ini, Armenian_INI ] }; 177 key <LatO> { [ Armenian_vo, Armenian_VO ] }; 178 key <LatP> { [ Armenian_pe, Armenian_PE ] }; 179 key <AD11> { [ Armenian_cha, Armenian_CHA ] }; 180 key <AD12> { [ Armenian_je, Armenian_JE ] }; 181 key <BKSL> { [ apostrophe, Armenian_question ] }; 182 183 key <LatA> { [ Armenian_ayb, Armenian_AYB ] }; 184 key <LatS> { [ Armenian_se, Armenian_SE ] }; 185 key <LatD> { [ Armenian_da, Armenian_DA ] }; 186 key <LatF> { [ Armenian_fe, Armenian_FE ] }; 187 key <LatG> { [ Armenian_gim, Armenian_GIM ] }; 188 key <LatH> { [ Armenian_ho, Armenian_HO ] }; 189 key <LatJ> { [ Armenian_tche, Armenian_TCHE ] }; 190 key <LatK> { [ Armenian_ken, Armenian_KEN ] }; 191 key <LatL> { [ Armenian_lyun, Armenian_LYUN ] }; 192 key <AC10> { [ Armenian_to, Armenian_TO ] }; 193 key <AC11> { [ Armenian_pyur, Armenian_PYUR ] }; 194 195 key <LatZ> { [ Armenian_za, Armenian_ZA ] }; 196 key <LatX> { [ Armenian_tso, Armenian_TSO ] }; 197 key <LatC> { [ Armenian_ke, Armenian_KE ] }; 198 key <LatV> { [ Armenian_vev, Armenian_VEV ] }; 199 key <LatB> { [ Armenian_ben, Armenian_BEN ] }; 200 key <LatN> { [ Armenian_nu, Armenian_NU ] }; 201 key <LatM> { [ Armenian_men, Armenian_MEN ] }; 202 key <AB08> { [ Armenian_sha, Armenian_SHA ] }; 203 key <AB09> { [ Armenian_ghat, Armenian_GHAT ] }; 204 key <AB10> { [ Armenian_tsa, Armenian_TSA ] }; 205 206}; 207 208partial alphanumeric_keys 209xkb_symbols "western" { 210 include "am(eastern)" 211 name[Group1]="Armenian (western)"; 212 213 // This is exactly the same layout for Western Armenian 214 // as in Windows XP, except: 215 // AE01 (the colon) has been replaced with the Armenian_full_stop and 216 // capital AE07 (ken) with the Armenian ligature ew 217 218 key <LatW> { [ Armenian_vev, Armenian_VEV ] }; 219 key <LatT> { [ Armenian_da, Armenian_DA ] }; 220 key <LatP> { [ Armenian_ben, Armenian_BEN ] }; 221 key <LatD> { [ Armenian_tyun, Armenian_TYUN ] }; 222 key <LatG> { [ Armenian_ken, Armenian_KEN ] }; 223 key <LatK> { [ Armenian_ke, Armenian_KE ] }; 224 key <LatC> { [ Armenian_gim, Armenian_GIM ] }; 225 key <LatV> { [ Armenian_vyun, Armenian_VYUN ] }; 226 key <LatB> { [ Armenian_pe, Armenian_PE ] }; 227 228}; 229 230partial alphanumeric_keys 231xkb_symbols "eastern-alt" { 232 include "am(eastern)" 233 name[Group1]="Armenian (alt. eastern)"; 234 235 // This replicates the Windows XP keyboard layout for Eastern 236 // Armenian exactly (including the bug), except: 237 // AE01 (the colon) has been replaced with the Armenian_full_stop and 238 // capital AE07 (ken) with the Armenian ligature ew 239 240 key <LatG> { [ Armenian_ke, Armenian_KE ] }; 241 key <LatC> { [ Armenian_gim, Armenian_GIM ] }; 242 243}; 244