1default partial alphanumeric_keys 2xkb_symbols "basic" { 3 4 // This layout conforms to a new Czech compromise standard 5 // designed to satisfy most Unix, Windows and Mac users. 6 // 2001 by Kamil Toman <ktoman@email.cz> 7 8 include "latin" 9 name[Group1]= "Czech"; 10 11 key <TLDE> { [ semicolon, dead_abovering, grave, asciitilde ] }; 12 key <AE01> { [ plus, 1, exclam, dead_tilde ] }; 13 key <AE02> { [ ecaron, 2, at, dead_caron ] }; 14 key <AE03> { [ scaron, 3, numbersign, dead_circumflex ] }; 15 key <AE04> { [ ccaron, 4, dollar, dead_breve ] }; 16 key <AE05> { [ rcaron, 5, percent, dead_abovering]}; 17 key <AE06> { [ zcaron, 6, asciicircum, dead_ogonek ] }; 18 key <AE07> { [ yacute, 7, ampersand, dead_grave ] }; 19 key <AE08> { [ aacute, 8, asterisk, dead_abovedot] }; 20 key <AE09> { [ iacute, 9, braceleft, dead_acute ] }; 21 key <AE10> { [ eacute, 0, braceright, dead_doubleacute ] }; 22 key <AE11> { [ equal, percent, NoSymbol, dead_diaeresis]}; 23 key <AE12> { [dead_acute, dead_caron, dead_macron, dead_cedilla ] }; 24 25 key <AD01> { [ q, Q, backslash, NoSymbol ] }; 26 key <AD02> { [ w, W, bar, Nosymbol ] }; 27 key <AD03> { [ e, E, EuroSign, NoSymbol ] }; 28 key <AD04> { [ r, R, NoSymbol, NoSymbol ] }; 29 key <AD05> { [ t, T, NoSymbol, NoSymbol ] }; 30 key <AD06> { [ z, Z, NoSymbol, NoSymbol ] }; 31 key <AD07> { [ u, U, NoSymbol, NoSymbol ] }; 32 key <AD08> { [ i, I, NoSymbol, NoSymbol ] }; 33 key <AD09> { [ o, O, NoSymbol, NoSymbol ] }; 34 key <AD10> { [ p, P, NoSymbol, NoSymbol ] }; 35 36 key <AD11> { [ uacute, slash, bracketleft, division ] }; 37 key <AD12> { [parenright, parenleft, bracketright, multiply ] }; 38 39 key <AC01> { [ a, A, asciitilde, NoSymbol ] }; 40 key <AC02> { [ s, S, dstroke, NoSymbol ] }; 41 key <AC03> { [ d, D, Dstroke, NoSymbol ] }; 42 key <AC04> { [ f, F, bracketleft, NoSymbol ] }; 43 key <AC05> { [ g, G, bracketright, NoSymbol ] }; 44 key <AC06> { [ h, H, grave, NoSymbol ] }; 45 key <AC07> { [ j, J, apostrophe, NoSymbol ] }; 46 key <AC08> { [ k, K, lstroke, NoSymbol ] }; 47 key <AC09> { [ l, L, Lstroke, NoSymbol ] }; 48 49 key <AC10> { [ uring, quotedbl, dollar, NoSymbol ] }; 50 key <AC11> { [ section, exclam, apostrophe, ssharp ] }; 51 key <AC12> { [ EuroSign, dead_diaeresis, NoSymbol, NoSymbol ] }; 52 key <BKSL> { [dead_diaeresis, apostrophe, backslash, bar ] }; 53 54 key <LSGT> { [ backslash, bar, slash, NoSymbol ] }; 55 key <AB01> { [ y, Y, degree, NoSymbol ] }; 56 key <AB02> { [ x, X, numbersign, Nosymbol ] }; 57 key <AB03> { [ c, C, ampersand, NoSymbol ] }; 58 key <AB04> { [ v, V, at, NoSymbol ] }; 59 key <AB05> { [ b, B, braceleft, NoSymbol ] }; 60 key <AB06> { [ n, N, braceright, NoSymbol ] }; 61 key <AB07> { [ m, M, asciicircum, NoSymbol ] }; 62 key <AB08> { [ comma, question, less, NoSymbol ] }; 63 key <AB09> { [ period, colon, greater, NoSymbol ] }; 64 key <AB10> { [ minus, underscore, asterisk, NoSymbol ] }; 65 66 key <SPCE> { [ space, space, space, space ] }; 67 68 include "level3(ralt_switch)" 69}; 70 71xkb_symbols "bksl" { 72 73 // Use <BKSL> instead of <LSGT> (useful for keyboards without <LSGT> key). 74 75 include "cz(basic)" 76 name[Group1]= "Czech (with <\|> key)"; 77 78 key <BKSL> { [ backslash, bar, slash, NoSymbol ] }; 79}; 80 81partial alphanumeric_keys 82xkb_symbols "qwerty" { 83 84 // This layout represents the actual Czech keyboards; 85 // it complies with the symbols printed on the keys. 86 // 2011 by Lukáš Mojžíš <lmojzis@grenames.cz> 87 88 include "cz(basic)" 89 name[Group1]= "Czech (QWERTY)"; 90 91 key <AB01> { [ z, Z, degree, NoSymbol ] }; 92 key <AC10> { [ uring, quotedbl, semicolon, colon ] }; 93 key <AC11> { [ section, exclam, apostrophe, ssharp ] }; 94 key <AD06> { [ y, Y, NoSymbol, NoSymbol ] }; 95 key <AD11> { [ uacute, slash, bracketleft, braceleft ] }; 96 key <AD12> { [parenright, parenleft, bracketright, braceright ] }; 97 key <AE09> { [ iacute, 9, parenleft, dead_acute ] }; 98 key <AE10> { [ eacute, 0, parenright, dead_doubleacute ] }; 99}; 100 101xkb_symbols "qwerty_bksl" { 102 103 // Use <BKSL> instead of <LSGT> (useful for keyboards without <LSGT> key). 104 105 include "cz(qwerty)" 106 name[Group1]= "Czech (QWERTY, extended backslash)"; 107 108 key <BKSL> { [ backslash, bar, slash, NoSymbol ] }; 109}; 110 111partial alphanumeric_keys 112xkb_symbols "qwerty-mac" { 113 114 // This layout corresponds to the Apple's Czech - QWERTY. 115 // 2018 by Jakub Jirutka <jakub@jirutka.cz> 116 117 include "latin" 118 name[Group1]= "Czech (QWERTY, Macintosh)"; 119 120 key <TLDE> { [ less, greater, lessthanequal, greaterthanequal]}; 121 key <AE01> { [ plus, 1, grave, notsign ] }; 122 key <AE02> { [ ecaron, 2, at, enfilledcircbullet]}; 123 key <AE03> { [ scaron, 3, numbersign, notequal ] }; 124 key <AE04> { [ ccaron, 4, dollar, sterling ] }; 125 key <AE05> { [ rcaron, 5, asciitilde, U25CA ] }; 126 key <AE06> { [ zcaron, 6, asciicircum, dagger ] }; 127 key <AE07> { [ yacute, 7, ampersand, paragraph ] }; 128 key <AE08> { [ aacute, 8, asterisk, division ] }; 129 key <AE09> { [ iacute, 9, braceleft, guillemotleft] }; 130 key <AE10> { [ eacute, 0, braceright, guillemotright]}; 131 key <AE11> { [ equal, percent, dead_abovering, dead_cedilla]}; 132 key <AE12> { [dead_acute, dead_caron, dead_circumflex, dead_macron]}; 133 134 key <AD01> { [ q, Q, NoSymbol, NoSymbol ] }; 135 key <AD02> { [ w, W, eabovedot, Eabovedot ] }; 136 key <AD03> { [ e, E, eogonek, Eogonek ] }; 137 key <AD04> { [ r, R, EuroSign, registered ] }; 138 key <AD05> { [ t, T, NoSymbol, trademark ] }; 139 key <AD06> { [ y, Y, NoSymbol, NoSymbol ] }; 140 key <AD07> { [ u, U, NoSymbol, NoSymbol ] }; 141 key <AD08> { [ i, I, NoSymbol, NoSymbol ] }; 142 key <AD09> { [ o, O, NoSymbol, NoSymbol ] }; 143 key <AD10> { [ p, P, NoSymbol, NoSymbol ] }; 144 145 key <AD11> { [ uacute, slash, bracketleft, less ] }; 146 key <AD12> { [parenright, parenleft, bracketright, greater ] }; 147 148 key <AC01> { [ a, A, aogonek, Aogonekl ] }; 149 key <AC02> { [ s, S, ssharp, U2211 ] }; 150 key <AC03> { [ d, D, partialderivate, U2206 ] }; 151 key <AC04> { [ f, F, NoSymbol, NoSymbol ] }; 152 key <AC05> { [ g, G, NoSymbol, NoSymbol ] }; 153 key <AC06> { [ h, H, leftsinglequotemark, leftdoublequotemark]}; 154 key <AC07> { [ j, J, rightsinglequotemark, rightdoublequotemark]}; 155 key <AC08> { [ k, K, NoSymbol, NoSymbol ] }; 156 key <AC09> { [ l, L, lstroke, Lstroke ] }; 157 158 key <AC10> { [ uring, quotedbl, semicolon, ellipsis ] }; 159 key <AC11> { [ section, exclam, apostrophe, dead_tilde ] }; 160 key <BKSL> { [dead_diaeresis, grave, dead_diaeresis, dead_doubleacute]}; 161 162 key <LSGT> { [ backslash, bar, NoSymbol, NoSymbol ] }; 163 key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 164 key <AB02> { [ x, X, NoSymbol, NoSymbol ] }; 165 key <AB03> { [ c, C, NoSymbol, copyright ] }; 166 key <AB04> { [ v, V, NoSymbol, squareroot ] }; 167 key <AB05> { [ b, B, NoSymbol, NoSymbol ] }; 168 key <AB06> { [ n, N, singlelowquotemark, doublelowquotemark]}; 169 key <AB07> { [ m, M, NoSymbol, NoSymbol ] }; 170 key <AB08> { [ comma, question, less, lessthanequal] }; 171 key <AB09> { [ period, colon, greater, greaterthanequal]}; 172 key <AB10> { [ minus, underscore, endash, emdash ] }; 173 174 key <SPCE> { [ space, space, nobreakspace, nobreakspace ] }; 175 176 include "level3(ralt_switch)" 177}; 178 179partial alphanumeric_keys alternate_group 180xkb_symbols "ucw" { 181 182 // This layout is usually used as the second group, 183 // it contains accented characters only, no 'latin' set. 184 // 2008 by Milan Vancura <mvancura@suse.cz> 185 186 name[Group1]= "Czech (UCW, only accented letters)"; 187 188 key <AB01> { [zcaron, Zcaron ] }; 189 key <AB02> { [ssharp, U1E9E ] }; 190 key <AB03> { [ccaron, Ccaron ] }; 191 key <AB04> { [ccedilla, Ccedilla ] }; 192 key <AB05> { [ntilde, Ntilde ] }; 193 key <AB06> { [ncaron, Ncaron ] }; 194 key <AB07> { [lacute, Lacute ] }; 195 196 key <AC01> { [aacute, Aacute ] }; 197 key <AC02> { [scaron, Scaron ] }; 198 key <AC03> { [dcaron, Dcaron ] }; 199 key <AC04> { [ediaeresis, Ediaeresis ] }; 200 key <AC05> { [racute, Racute ] }; 201 key <AC06> { [uacute, Uacute ] }; 202 key <AC07> { [udiaeresis, Udiaeresis ] }; 203 key <AC08> { [ocircumflex, Ocircumflex ] }; 204 key <AC09> { [lcaron, Lcaron ] }; 205 206 key <AD01> { [adiaeresis, Adiaeresis ] }; 207 key <AD02> { [ecaron, Ecaron ] }; 208 key <AD03> { [eacute, Eacute ] }; 209 key <AD04> { [rcaron, Rcaron ] }; 210 key <AD05> { [tcaron, Tcaron ] }; 211 key <AD06> { [yacute, Yacute ] }; 212 key <AD07> { [uring, Uring ] }; 213 key <AD08> { [iacute, Iacute ] }; 214 key <AD09> { [oacute, Oacute ] }; 215 key <AD10> { [odiaeresis, Odiaeresis ] }; 216}; 217 218partial alphanumeric_keys 219xkb_symbols "dvorak-ucw" { 220 221 // US Dvorak layout extended with UCW, 222 // AltGr produces accented characters. 223 224 include "us(dvorak)" 225 name[Group1]= "Czech (US, Dvorak, UCW support)"; 226 227 key <AB03> { [ j, J, eacute, Eacute ] }; 228 key <AB04> { [ k, K, uacute, Uacute ] }; 229 key <AB10> { [ z, Z, zcaron, Zcaron ] }; 230 231 key <AC01> { [ a, A, aacute, Aacute ] }; 232 key <AC02> { [ o, O, oacute, Oacute ] }; 233 key <AC03> { [ e, E, ecaron, Ecaron ] }; 234 key <AC04> { [ u, U, uring, Uring ] }; 235 key <AC05> { [ i, I, iacute, Iacute ] }; 236 key <AC06> { [ d, D, dcaron, Dcaron ] }; 237 key <AC08> { [ t, T, tcaron, Tcaron ] }; 238 key <AC09> { [ n, N, ncaron, Ncaron ] }; 239 key <AC10> { [ s, S, scaron, Scaron ] }; 240 241 key <AD05> { [ y, Y, yacute, Yacute ] }; 242 key <AD08> { [ c, C, ccaron, Ccaron ] }; 243 key <AD09> { [ r, R, rcaron, Rcaron ] }; 244 245 include "level3(ralt_switch)" 246}; 247 248// phonetic layout for Russian letters on an CZ (QWERTY) keyboard 249// originaly created by Pavel Sorejs <sorejs@gmail.com> 250 251partial alphanumeric_keys 252xkb_symbols "rus" { 253 254 include "cz(qwerty)" 255 name[Group1]= "Russian (Czech, phonetic)"; 256 257 key <AE01> { [ plus, ampersand, 1 , 1 ] }; 258 key <AE02> { [ Cyrillic_hardsign, 2, 2 , 2 ] }; 259 key <AE03> { [ Cyrillic_sha, Cyrillic_SHA, 3 , 3 ] }; 260 key <AE04> { [ Cyrillic_che, Cyrillic_CHE, 4 , 4 ] }; 261 key <AE05> { [ Cyrillic_shcha, Cyrillic_SHCHA, 5 , 5 ] }; 262 key <AE06> { [ Cyrillic_zhe, Cyrillic_ZHE, 6 , 6 ] }; 263 key <AE07> { [ quotedbl, 4, 7 , 7 ] }; 264 key <AE08> { [ section, 5, 8 , 8 ] }; 265 key <AE09> { [ dollar, 6, 9 , 9 ] }; 266 key <AE10> { [ equal, 7, 0 , 0 ] }; 267 key <AE11> { [ percent, 8 ] }; 268 key <AE12> { [ apostrophe, 9 ] }; 269 270 key <AB08> { [ comma, question ] }; 271 key <AB09> { [ period, exclam ] }; 272 key <AB10> { [ minus, slash ] }; 273 274 key <AC11> { [ semicolon, colon ] }; 275 276 key <LSGT> { [ bar, brokenbar ] }; 277 278 key <TLDE> { [ Cyrillic_io, Cyrillic_IO ] }; 279 280 281 key <AD01> { [ numerosign, 1, q, Q ] }; 282 key <AD02> { [ Cyrillic_yu, Cyrillic_YU, w, W ] }; 283 key <AD03> { [ Cyrillic_ie, Cyrillic_IE, e, E ] }; 284 key <AD04> { [ Cyrillic_er, Cyrillic_ER, r, R ] }; 285 key <AD05> { [ Cyrillic_te, Cyrillic_TE, t, T ] }; 286 key <AD06> { [ Cyrillic_yeru, Cyrillic_YERU, y, Y ] }; 287 key <AD07> { [ Cyrillic_u, Cyrillic_U, u, U ] }; 288 key <AD08> { [ Cyrillic_i, Cyrillic_I, i, I ] }; 289 key <AD09> { [ Cyrillic_o, Cyrillic_O, o, O ] }; 290 key <AD10> { [ Cyrillic_pe, Cyrillic_PE, p, P ] }; 291 key <AD11> { [ Cyrillic_e, Cyrillic_E, bracketleft, division ] }; 292 key <AD12> { [ parenright, parenleft, bracketright, multiply ] }; 293 294 key <AC01> { [ Cyrillic_a, Cyrillic_A, a, A ] }; 295 key <AC02> { [ Cyrillic_es, Cyrillic_ES, s, S ] }; 296 key <AC03> { [ Cyrillic_de, Cyrillic_DE, d, D ] }; 297 key <AC04> { [ Cyrillic_ef, Cyrillic_EF, f, F ] }; 298 key <AC05> { [ Cyrillic_ghe, Cyrillic_GHE, g, G ] }; 299 key <AC06> { [ Cyrillic_ha, Cyrillic_HA, h, H ] }; 300 key <AC07> { [ Cyrillic_shorti, Cyrillic_SHORTI, j, J ] }; 301 key <AC08> { [ Cyrillic_ka, Cyrillic_KA, k, K ] }; 302 key <AC09> { [ Cyrillic_el, Cyrillic_EL, l, L ] }; 303 key <AC10> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, less, greater ] }; 304 305 key <AB01> { [ Cyrillic_ze, Cyrillic_ZE, z, Z ] }; 306 key <AB02> { [ Cyrillic_ya, Cyrillic_YA, x, X ] }; 307 key <AB03> { [ Cyrillic_tse, Cyrillic_TSE, c, C ] }; 308 key <AB04> { [ Cyrillic_ve, Cyrillic_VE, v, V ] }; 309 key <AB05> { [ Cyrillic_be, Cyrillic_BE, b, B ] }; 310 key <AB06> { [ Cyrillic_en, Cyrillic_EN, n, N ] }; 311 key <AB07> { [ Cyrillic_em, Cyrillic_EM, m, M ] }; 312 313 key <BKSL> { [ backslash, brokenbar ] }; 314 315 include "level3(ralt_switch)" 316}; 317 318// EXTRAS: 319 320partial alphanumeric_keys 321 xkb_symbols "sun_type6" { 322 include "sun_vndr/cz(sun_type6)" 323}; 324 325xkb_symbols "prog" { 326 // cz-prog 1.0 2019-05-15 by Viktor Grešák <vgresak@gmail.com> and Tomáš Hudec <Tommy.Hudec@gmail.com> 327 // 328 // Programmer keyboard. Based on the US layout with accented Czech letters and dead keys. 329 // Using AltGr and a key from the 1st row generates original level 2 US key as level 3 except TLDE and AE12. 330 // Using AltGr+Shift on accented letters generates its uppercase variant. 331 // Using AltGr or AltGr+Shift on letters which have accent in Czech but are not on the 1st row directly accessible generate accented letters, 332 // i.e. [d, D], [t, T], [n, N], [o, O] generate with AltGr and AltGr+Shift: [dcaron, Dcaron], [tcaron, Tcaron], [ncaron, Ncaron], [oacute, Oacute]. 333 // Other Czech letters besides alphanumeric keys (like uacute, uring) are generated using AltGr. 334 335 name[Group1]="Czech (programming)"; 336 337 key <AB01> { [ z, Z ] }; 338 key <AB02> { [ x, X ] }; 339 key <AB03> { [ c, C ] }; 340 key <AB04> { [ v, V ] }; 341 key <AB05> { [ b, B ] }; 342 key <AB06> { [ n, N, ncaron, Ncaron ] }; 343 key <AB07> { [ m, M ] }; 344 key <AB08> { [ comma, less, multiply ] }; 345 key <AB09> { [ period, greater, division ] }; 346 key <AB10> { [ slash, question, dead_abovedot ] }; 347 key <AC01> { [ a, A ] }; 348 key <AC02> { [ s, S ] }; 349 key <AC03> { [ d, D, dcaron, Dcaron ] }; 350 key <AC04> { [ f, F ] }; 351 key <AC05> { [ g, G ] }; 352 key <AC06> { [ h, H ] }; 353 key <AC07> { [ j, J ] }; 354 key <AC08> { [ k, K ] }; 355 key <AC09> { [ l, L ] }; 356 key <AC10> { [ semicolon, colon, uring, Uring ] }; 357 key <AC11> { [ apostrophe, quotedbl, section ] }; 358 key <AD01> { [ q, Q ] }; 359 key <AD02> { [ w, W ] }; 360 key <AD03> { [ e, E ] }; 361 key <AD04> { [ r, R ] }; 362 key <AD05> { [ t, T, tcaron, Tcaron ] }; 363 key <AD06> { [ y, Y ] }; 364 key <AD07> { [ u, U ] }; 365 key <AD08> { [ i, I ] }; 366 key <AD09> { [ o, O, oacute, Oacute ] }; 367 key <AD10> { [ p, P ] }; 368 key <AD11> { [ bracketleft, braceleft, uacute, Uacute ] }; 369 key <AD12> { [ bracketright, braceright ] }; 370 key <AE01> { [ plus, 1, exclam, NoSymbol ] }; 371 key <AE02> { [ ecaron, 2, at, Ecaron ] }; 372 key <AE03> { [ scaron, 3, numbersign, Scaron ] }; 373 key <AE04> { [ ccaron, 4, dollar, Ccaron ] }; 374 key <AE05> { [ rcaron, 5, percent, Rcaron ] }; 375 key <AE06> { [ zcaron, 6, asciicircum, Zcaron ] }; 376 key <AE07> { [ yacute, 7, ampersand, Yacute ] }; 377 key <AE08> { [ aacute, 8, asterisk, Aacute ] }; 378 key <AE09> { [ iacute, 9, parenleft, Iacute ] }; 379 key <AE10> { [ eacute, 0, parenright, Eacute ] }; 380 key <AE11> { [ equal, minus, underscore, U2212 ] }; 381 key <AE12> { [ dead_acute, dead_caron, plusminus, notequal ] }; 382 key <BKSL> { [ backslash, bar, dead_diaeresis ] }; 383 key <BKSP> { [ BackSpace, BackSpace ] }; 384 key <CAPS> { [ Caps_Lock ] }; 385 key <COMP> { [ Menu, Multi_key ] }; 386 key <LALT> { [ Alt_L, Meta_L ] }; 387 key <LCTL> { [ Control_L ] }; 388 key <LFSH> { [ Shift_L ] }; 389 key <LWIN> { [ Super_L ] }; 390 key <RALT> { [ ISO_Level3_Shift ] }; 391 key <RCTL> { [ Control_R ] }; 392 key <RTRN> { [ Return ] }; 393 key <RTSH> { [ Shift_R ] }; 394 key <RWIN> { [ Super_R ] }; 395 key <SPCE> { [ space ] }; 396 key <TAB> { [ Tab, ISO_Left_Tab ] }; 397 key <TLDE> { [ grave, asciitilde ] }; 398 399 include "level3(ralt_switch)" 400}; 401 402xkb_symbols "typo" { 403 // cz-typo 1.0 2019-05-15 by Viktor Grešák <vgresak@gmail.com> and Tomáš Hudec <Tommy.Hudec@gmail.com> 404 // 405 // Contains typographic symbols in third and fourth level. 406 // It is intended to be used in conjuction with other existing layout, e.g. setxkbmap -symbols "pc+cz(basic)+cz(typo)+inet(evdev)" 407 408 name[Group1]="Czech (typographic)"; 409 410 key <AB01> { [ NoSymbol, NoSymbol, degree, U2300 ] }; 411 key <AB02> { [ NoSymbol, NoSymbol, multiply, U22C5 ] }; 412 key <AB03> { [ NoSymbol, NoSymbol, ampersand, copyright ] }; 413 key <AB04> { [ NoSymbol, NoSymbol, at, ordfeminine ] }; 414 key <AB05> { [ NoSymbol, NoSymbol, enfilledcircbullet, enopencircbullet ] }; 415 key <AB07> { [ NoSymbol, NoSymbol, U203A, U2039 ] }; 416 key <AB08> { [ NoSymbol, NoSymbol, doublelowquotemark, leftdoublequotemark ] }; 417 key <AB09> { [ NoSymbol, NoSymbol, ellipsis, rightdoublequotemark ] }; 418 key <AB10> { [ NoSymbol, NoSymbol, endash, emdash ] }; 419 key <AC04> { [ NoSymbol, NoSymbol, UFB00, UFB05 ] }; 420 key <AC06> { [ NoSymbol, NoSymbol, U2010, U2011 ] }; 421 key <AC07> { [ NoSymbol, NoSymbol, guillemotright, guillemotleft ] }; 422 key <AC08> { [ NoSymbol, NoSymbol, dagger, doubledagger ] }; 423 key <AC09> { [ NoSymbol, NoSymbol, UFB02, UFB04 ] }; 424 key <AC11> { [ NoSymbol, NoSymbol, NoSymbol, UFB03 ] }; 425 key <AD04> { [ NoSymbol, NoSymbol, U2030, registered ] }; 426 key <AD06> { [ NoSymbol, NoSymbol, leftarrow ] }; 427 key <AD07> { [ NoSymbol, NoSymbol, downarrow, uparrow ] }; 428 key <AD08> { [ NoSymbol, NoSymbol, rightarrow, UFB01 ] }; 429 key <AD10> { [ NoSymbol, NoSymbol, minutes, seconds ] }; 430 key <AE01> { [ NoSymbol, NoSymbol, NoSymbol, rightsinglequotemark ] }; 431 key <AE11> { [ NoSymbol, NoSymbol, underscore, U2212 ] }; 432 key <SPCE> { [ space, space, space, nobreakspace ] }; 433 key <TLDE> { [ NoSymbol, NoSymbol, singlelowquotemark, leftsinglequotemark ] }; 434}; 435 436xkb_symbols "coder" { 437 438 // US layout with Czech chars under AltGr 439 // for touch-typing programmers who need to write Czech occasionally 440 // https://github.com/michalkahle/czech-coder-xkb 441 442 include "us" 443 name[Group1]= "Czech (coder)"; 444 445 key <TLDE>{[ grave, asciitilde, semicolon, dead_abovering ]}; 446 key <AE02>{[ 2, at, ecaron, Ecaron ]}; 447 key <AE03>{[ 3, numbersign, scaron, Scaron ]}; 448 key <AE04>{[ 4, dollar, ccaron, Ccaron ]}; 449 key <AE05>{[ 5, percent, rcaron, Rcaron ]}; 450 key <AE06>{[ 6, asciicircum, zcaron, Zcaron ]}; 451 key <AE07>{[ 7, ampersand, yacute, Yacute ]}; 452 key <AE08>{[ 8, asterisk, aacute, Aacute ]}; 453 key <AE09>{[ 9, parenleft, iacute, Iacute ]}; 454 key <AE10>{[ 0, parenright, eacute, Eacute ]}; 455 key <AE12>{[ equal, plus, dead_acute, dead_caron ]}; 456 457 key <AD03>{[ e, E, e, EuroSign ]}; 458 key <AD11>{[ bracketleft, braceleft, uacute, Uacute ]}; 459 460 key <AC10>{[ semicolon, colon, uring, Uring ]}; 461 key <AC11>{[ apostrophe, quotedbl, section, quotedbl ]}; 462 key <BKSL>{[ backslash, bar, dead_diaeresis, apostrophe ]}; 463 464 include "level3(ralt_switch)" 465}; 466 467xkb_symbols "prog_typo" { 468 // cz-prog-typo 1.0 2019-06-17 by Viktor Grešák <vgresak@gmail.com> and Tomáš Hudec <Tommy.Hudec@gmail.com> 469 // 470 // Programmer + Typographic keyboard. Based on the US layout with accented Czech letters and dead keys. 471 // Using AltGr and a key from the 1st row generates original level 2 US key as level 3 except TLDE and AE12. 472 // Using AltGr+Shift on accented letters generates its uppercase variant. 473 // Using AltGr or AltGr+Shift on letters which have accent in Czech but are not on the 1st row directly accessible generate accented letters, 474 // i.e. [d, D], [t, T], [n, N], [o, O] generate with AltGr and AltGr+Shift: [dcaron, Dcaron], [tcaron, Tcaron], [ncaron, Ncaron], [oacute, Oacute]. 475 // Other Czech letters besides alphanumeric keys (like uacute, uring) are generated using AltGr. 476 // 477 // Contains typographic symbols in third and fourth level. 478 479 name[Group1]="Czech (programming, typographic)"; 480 481 include "cz(prog)" 482 include "cz(typo)" 483}; 484