hu revision 797b363d
1154daed1Smrg// New style XKB layout for some widely used Hungarian keyboard layouts 2154daed1Smrg// 3154daed1Smrg// Based on old style 'xkb/symbols/hu" 4154daed1Smrg// 55a35480eSmrg// (C) 2002-2004 Soós Péter <sp@osb.hu> 6c067fea9Sghen// (C) 2010 Andras Timar <timar@fsf.hu> 7154daed1Smrg// 8154daed1Smrg// Permission is granted to anyone to use, distribute and modify 9154daed1Smrg// this file in any way, provided that the above copyright notice 10154daed1Smrg// is left intact and the author of the modification summarizes 11154daed1Smrg// the changes in this header. 12154daed1Smrg// 13154daed1Smrg// This file is distributed without any expressed or implied warranty. 14154daed1Smrg// 15154daed1Smrg// Changes: 16154daed1Smrg// 2004-04-17 - Moved to new style (only Unicode based layouts) 17154daed1Smrg// - Added consistent dead key support 18154daed1Smrg// - Fixed abovedot 19154daed1Smrg// - Added adiaeresis 20154daed1Smrg// - Added EuroSign and cent symbol 21c067fea9Sghen// 2010-04-23 - Added doublelowquotemark 22c067fea9Sghen// - Added rightdoublequotemark 23c067fea9Sghen// - Added endash 24c067fea9Sghen// 2010-05-13 - Added ellipsis 25154daed1Smrg 26154daed1Smrg 27154daed1Smrg// Default layout 28797b363dSmrgdefault partial 29154daed1Smrgxkb_symbols "basic" { 30154daed1Smrg include "hu(102_qwertz_comma_dead)" 31bfd7cbc1Smrg name[Group1] = "Hungarian"; 32154daed1Smrg}; 33154daed1Smrg 34154daed1Smrg// Standard layout 35154daed1Smrgpartial 36154daed1Smrgxkb_symbols "standard" { 37154daed1Smrg include "hu(102_qwertz_comma_dead)" 38bfd7cbc1Smrg name[Group1] = "Hungarian (standard)"; 39154daed1Smrg}; 40154daed1Smrg 41154daed1Smrg// Standard layout without dead key support 42154daed1Smrgpartial 43154daed1Smrgxkb_symbols "nodeadkeys" { 44154daed1Smrg include "hu(102_qwertz_comma_nodead)" 45bfd7cbc1Smrg name[Group1] = "Hungarian (eliminate dead keys)"; 46154daed1Smrg}; 47154daed1Smrg 48154daed1Smrg// Qwerty layout 49154daed1Smrgpartial 50154daed1Smrgxkb_symbols "qwerty" { 51154daed1Smrg include "hu(101_qwerty_comma_dead)" 52bfd7cbc1Smrg name[Group1] = "Hungarian (qwerty)"; 53154daed1Smrg}; 54154daed1Smrg 55154daed1Smrg// Main layouts 56154daed1Smrg 57154daed1Smrg// 101_qwertz_comma_dead 58154daed1Smrg// 101 key qwertz layout 59154daed1Smrg// with decimal comma on keypad 60154daed1Smrg// and with dead key support 61154daed1Smrgpartial 62154daed1Smrgxkb_symbols "101_qwertz_comma_dead" { 63bfd7cbc1Smrg name[Group1] = "Hungarian (101/qwertz/comma/dead keys)"; 64154daed1Smrg include "latin" 65154daed1Smrg include "hu(def_101)" 66154daed1Smrg include "hu(def_qwertz)" 67154daed1Smrg include "kpdl(comma)" 68154daed1Smrg include "hu(def_dead)" 69154daed1Smrg include "hu(def_common)" 70154daed1Smrg include "level3(ralt_switch)" 71154daed1Smrg}; 72154daed1Smrg 73154daed1Smrg// 101_qwertz_comma_nodead 74154daed1Smrg// 101 key qwertz layout 75154daed1Smrg// with decimal comma on keypad 76154daed1Smrg// and without dead key support 77154daed1Smrgpartial 78154daed1Smrgxkb_symbols "101_qwertz_comma_nodead" { 79bfd7cbc1Smrg name[Group1] = "Hungarian (101/qwertz/comma/eliminate dead keys)"; 80154daed1Smrg include "latin" 81154daed1Smrg include "hu(def_101)" 82154daed1Smrg include "hu(def_qwertz)" 83154daed1Smrg include "kpdl(comma)" 84154daed1Smrg include "hu(def_nodead)" 85154daed1Smrg include "hu(def_common)" 86154daed1Smrg include "level3(ralt_switch)" 87154daed1Smrg}; 88154daed1Smrg 89154daed1Smrg// 101_qwertz_dot_dead 90154daed1Smrg// 101 key qwertz layout 91154daed1Smrg// with decimal dot on keypad 92154daed1Smrg// and with dead key support 93154daed1Smrgpartial 94154daed1Smrgxkb_symbols "101_qwertz_dot_dead" { 95bfd7cbc1Smrg name[Group1] = "Hungarian (101/qwertz/dot/dead keys)"; 96154daed1Smrg include "latin" 97154daed1Smrg include "hu(def_101)" 98154daed1Smrg include "hu(def_qwertz)" 99154daed1Smrg include "hu(def_dot)" 100154daed1Smrg include "hu(def_dead)" 101154daed1Smrg include "hu(def_common)" 102154daed1Smrg include "level3(ralt_switch)" 103154daed1Smrg}; 104154daed1Smrg 105154daed1Smrg// 101_qwertz_dot_nodead 106154daed1Smrg// 101 key qwertz layout 107154daed1Smrg// with decimal dot on keypad 108154daed1Smrg// and without dead key support 109154daed1Smrgpartial 110154daed1Smrgxkb_symbols "101_qwertz_dot_nodead" { 111bfd7cbc1Smrg name[Group1] = "Hungarian (101/qwertz/dot/eliminate dead keys)"; 112154daed1Smrg include "latin" 113154daed1Smrg include "hu(def_101)" 114154daed1Smrg include "hu(def_qwertz)" 115154daed1Smrg include "hu(def_dot)" 116154daed1Smrg include "hu(def_nodead)" 117154daed1Smrg include "hu(def_common)" 118154daed1Smrg include "level3(ralt_switch)" 119154daed1Smrg}; 120154daed1Smrg 121154daed1Smrg// 101_qwerty_comma_dead 122154daed1Smrg// 101 key qwerty layout 123154daed1Smrg// with decimal comma on keypad 124154daed1Smrg// and with dead key support 125154daed1Smrgpartial 126154daed1Smrgxkb_symbols "101_qwerty_comma_dead" { 127bfd7cbc1Smrg name[Group1] = "Hungarian (101/qwerty/comma/dead keys)"; 128154daed1Smrg include "latin" 129154daed1Smrg include "hu(def_101)" 130154daed1Smrg include "hu(def_qwerty)" 131154daed1Smrg include "kpdl(comma)" 132154daed1Smrg include "hu(def_dead)" 133154daed1Smrg include "hu(def_common)" 134154daed1Smrg include "level3(ralt_switch)" 135154daed1Smrg}; 136154daed1Smrg 137154daed1Smrg// 101_qwerty_comma_nodead 138154daed1Smrg// 101 key qwerty layout 139154daed1Smrg// with decimal comma on keypad 140154daed1Smrg// and without dead key support 141154daed1Smrgpartial 142154daed1Smrgxkb_symbols "101_qwerty_comma_nodead" { 143bfd7cbc1Smrg name[Group1] = "Hungarian (101/qwerty/comma/eliminate dead keys)"; 144154daed1Smrg include "latin" 145154daed1Smrg include "hu(def_101)" 146154daed1Smrg include "hu(def_qwerty)" 147154daed1Smrg include "kpdl(comma)" 148154daed1Smrg include "hu(def_nodead)" 149154daed1Smrg include "hu(def_common)" 150154daed1Smrg include "level3(ralt_switch)" 151154daed1Smrg}; 152154daed1Smrg 153154daed1Smrg// 101_qwerty_dot_dead 154154daed1Smrg// 101 key qwerty layout 155154daed1Smrg// with decimal dot on keypad 156154daed1Smrg// and with dead key support 157154daed1Smrgpartial 158154daed1Smrgxkb_symbols "101_qwerty_dot_dead" { 159bfd7cbc1Smrg name[Group1] = "Hungarian (101/qwerty/dot/dead keys)"; 160154daed1Smrg include "latin" 161154daed1Smrg include "hu(def_101)" 162154daed1Smrg include "hu(def_qwerty)" 163154daed1Smrg include "hu(def_dot)" 164154daed1Smrg include "hu(def_dead)" 165154daed1Smrg include "hu(def_common)" 166154daed1Smrg include "level3(ralt_switch)" 167154daed1Smrg}; 168154daed1Smrg 169154daed1Smrg// 101_qwerty_dot_nodead 170154daed1Smrg// 101 key qwerty layout 171154daed1Smrg// with decimal dot on keypad 172154daed1Smrg// and without dead key support 173154daed1Smrgpartial 174154daed1Smrgxkb_symbols "101_qwerty_dot_nodead" { 175bfd7cbc1Smrg name[Group1] = "Hungarian (101/qwerty/dot/eliminate dead keys)"; 176154daed1Smrg include "latin" 177154daed1Smrg include "hu(def_101)" 178154daed1Smrg include "hu(def_qwerty)" 179154daed1Smrg include "hu(def_dot)" 180154daed1Smrg include "hu(def_nodead)" 181154daed1Smrg include "hu(def_common)" 182154daed1Smrg include "level3(ralt_switch)" 183154daed1Smrg}; 184154daed1Smrg 185154daed1Smrg// 102_qwertz_comma_dead 186154daed1Smrg// 102 key qwertz layout 187154daed1Smrg// with decimal comma on keypad 188154daed1Smrg// and with dead key support 189154daed1Smrgpartial 190154daed1Smrgxkb_symbols "102_qwertz_comma_dead" { 191bfd7cbc1Smrg name[Group1] = "Hungarian (102/qwertz/comma/dead keys)"; 192154daed1Smrg include "latin" 193154daed1Smrg include "hu(def_102)" 194154daed1Smrg include "hu(def_qwertz)" 195154daed1Smrg include "kpdl(comma)" 196154daed1Smrg include "hu(def_dead)" 197154daed1Smrg include "hu(def_common)" 198154daed1Smrg include "level3(ralt_switch)" 199154daed1Smrg}; 200154daed1Smrg 201154daed1Smrg// 102_qwertz_comma_nodead 202154daed1Smrg// 102 key qwertz layout 203154daed1Smrg// with decimal comma on keypad 204154daed1Smrg// and without dead key support 205154daed1Smrgpartial 206154daed1Smrgxkb_symbols "102_qwertz_comma_nodead" { 207bfd7cbc1Smrg name[Group1] = "Hungarian (102/qwertz/comma/eliminate dead keys)"; 208154daed1Smrg include "latin" 209154daed1Smrg include "hu(def_102)" 210154daed1Smrg include "hu(def_qwertz)" 211154daed1Smrg include "kpdl(comma)" 212154daed1Smrg include "hu(def_nodead)" 213154daed1Smrg include "hu(def_common)" 214154daed1Smrg include "level3(ralt_switch)" 215154daed1Smrg}; 216154daed1Smrg 217154daed1Smrg// 102_qwertz_dot_dead 218154daed1Smrg// 102 key qwertz layout 219154daed1Smrg// with decimal dot on keypad 220154daed1Smrg// and with dead key support 221154daed1Smrgpartial 222154daed1Smrgxkb_symbols "102_qwertz_dot_dead" { 223bfd7cbc1Smrg name[Group1] = "Hungarian (102/qwertz/dot/dead keys)"; 224154daed1Smrg include "latin" 225154daed1Smrg include "hu(def_102)" 226154daed1Smrg include "hu(def_qwertz)" 227154daed1Smrg include "hu(def_dot)" 228154daed1Smrg include "hu(def_dead)" 229154daed1Smrg include "hu(def_common)" 230154daed1Smrg include "level3(ralt_switch)" 231154daed1Smrg}; 232154daed1Smrg 233154daed1Smrg// 102_qwertz_dot_nodead 234154daed1Smrg// 102 key qwertz layout 235154daed1Smrg// with decimal dot on keypad 236154daed1Smrg// and without dead key support 237154daed1Smrgpartial 238154daed1Smrgxkb_symbols "102_qwertz_dot_nodead" { 239bfd7cbc1Smrg name[Group1] = "Hungarian (102/qwertz/dot/eliminate dead keys)"; 240154daed1Smrg include "latin" 241154daed1Smrg include "hu(def_102)" 242154daed1Smrg include "hu(def_qwertz)" 243154daed1Smrg include "hu(def_dot)" 244154daed1Smrg include "hu(def_nodead)" 245154daed1Smrg include "hu(def_common)" 246154daed1Smrg include "level3(ralt_switch)" 247154daed1Smrg}; 248154daed1Smrg 249154daed1Smrg// 102_qwerty_comma_dead 250154daed1Smrg// 102 key qwerty layout 251154daed1Smrg// with decimal comma on keypad 252154daed1Smrg// and with dead key support 253154daed1Smrgpartial 254154daed1Smrgxkb_symbols "102_qwerty_comma_dead" { 255bfd7cbc1Smrg name[Group1] = "Hungarian (102/qwerty/comma/dead keys)"; 256154daed1Smrg include "latin" 257154daed1Smrg include "hu(def_102)" 258154daed1Smrg include "hu(def_qwerty)" 259154daed1Smrg include "kpdl(comma)" 260154daed1Smrg include "hu(def_dead)" 261154daed1Smrg include "hu(def_common)" 262154daed1Smrg include "level3(ralt_switch)" 263154daed1Smrg}; 264154daed1Smrg 265154daed1Smrg// 102_qwerty_comma_nodead 266154daed1Smrg// 102 key qwerty layout 267154daed1Smrg// with decimal comma on keypad 268154daed1Smrg// and without dead key support 269154daed1Smrgpartial 270154daed1Smrgxkb_symbols "102_qwerty_comma_nodead" { 271bfd7cbc1Smrg name[Group1] = "Hungarian (102/qwerty/comma/eliminate dead keys)"; 272154daed1Smrg include "latin" 273154daed1Smrg include "hu(def_102)" 274154daed1Smrg include "hu(def_qwerty)" 275154daed1Smrg include "kpdl(comma)" 276154daed1Smrg include "hu(def_nodead)" 277154daed1Smrg include "hu(def_common)" 278154daed1Smrg include "level3(ralt_switch)" 279154daed1Smrg}; 280154daed1Smrg 281154daed1Smrg// 102_qwerty_dot_dead 282154daed1Smrg// 102 key qwerty layout 283154daed1Smrg// with decimal dot on keypad 284154daed1Smrg// and with dead key support 285154daed1Smrgpartial 286154daed1Smrgxkb_symbols "102_qwerty_dot_dead" { 287bfd7cbc1Smrg name[Group1] = "Hungarian (102/qwerty/dot/dead keys)"; 288154daed1Smrg include "latin" 289154daed1Smrg include "hu(def_102)" 290154daed1Smrg include "hu(def_qwerty)" 291154daed1Smrg include "hu(def_dot)" 292154daed1Smrg include "hu(def_dead)" 293154daed1Smrg include "hu(def_common)" 294154daed1Smrg include "level3(ralt_switch)" 295154daed1Smrg}; 296154daed1Smrg 297154daed1Smrg// 102_qwerty_dot_nodead 298154daed1Smrg// 102 key qwerty layout 299154daed1Smrg// with decimal dot on keypad 300154daed1Smrg// and without dead key support 301154daed1Smrgpartial 302154daed1Smrgxkb_symbols "102_qwerty_dot_nodead" { 303bfd7cbc1Smrg name[Group1] = "Hungarian (102/qwerty/dot/eliminate dead keys)"; 304154daed1Smrg include "latin" 305154daed1Smrg include "hu(def_102)" 306154daed1Smrg include "hu(def_qwerty)" 307154daed1Smrg include "hu(def_dot)" 308154daed1Smrg include "hu(def_nodead)" 309154daed1Smrg include "hu(def_common)" 310154daed1Smrg include "level3(ralt_switch)" 311154daed1Smrg}; 312154daed1Smrg 313154daed1Smrg// Partial layouts 314154daed1Smrg 315154daed1Smrg// def_102: 316154daed1Smrg// The standard Hungarian 102 key layout 317154daed1Smrghidden partial alphanumeric_keys 318154daed1Smrgxkb_symbols "def_102" { 319154daed1Smrg key <TLDE> { [ 0, section, notsign ] }; 320154daed1Smrg key <LSGT> { [ iacute, Iacute, less, greater ] }; 321154daed1Smrg 322154daed1Smrg}; 323154daed1Smrg 324154daed1Smrg// def_101: 325154daed1Smrg// An alternative layout for 101 key keyboards 326154daed1Smrghidden partial alphanumeric_keys 327154daed1Smrgxkb_symbols "def_101" { 328154daed1Smrg key <TLDE> { [ iacute, Iacute, 0, section ] }; 329154daed1Smrg key <LSGT> { [ less, greater ] }; 330154daed1Smrg}; 331154daed1Smrg 332154daed1Smrg// def_qwertz: 333154daed1Smrg// The standard Hungaryan qwertz layout 334154daed1Smrghidden partial alphanumeric_keys 335154daed1Smrgxkb_symbols "def_qwertz" { 336c067fea9Sghen key <AD06> { [ z, Z, endash ] }; 337154daed1Smrg key <AB01> { [ y, Y, greater ] }; 338154daed1Smrg}; 339154daed1Smrg 340154daed1Smrg 341154daed1Smrg// def_qwerty: 342154daed1Smrg// The qwerty layout for people who familiar with the standard US layout 343154daed1Smrghidden partial alphanumeric_keys 344154daed1Smrgxkb_symbols "def_qwerty" { 345c067fea9Sghen key <AD06> { [ y, Y, endash ] }; 346154daed1Smrg key <AB01> { [ z, Z, greater ] }; 347154daed1Smrg}; 348154daed1Smrg 349154daed1Smrg// def_dot: 350154daed1Smrg// The Hungarian standard is the comma on the keypad not decimal dot, 351154daed1Smrg// but programmers hate it 352154daed1Smrghidden partial keypad_keys 353154daed1Smrgxkb_symbols "def_dot" { 354154daed1Smrg key <KPDL> { [ KP_Delete, KP_Decimal ] }; 355154daed1Smrg}; 356797b363dSmrg 357154daed1Smrg 358154daed1Smrg// def_dead: 359154daed1Smrg// Dead keys support part 360154daed1Smrghidden partial alphanumeric_keys 361154daed1Smrgxkb_symbols "def_dead" { 362154daed1Smrg key <AE01> { [ 1, apostrophe, asciitilde, dead_tilde ] }; 363154daed1Smrg key <AE02> { [ 2, quotedbl, dead_caron, caron ] }; 364154daed1Smrg key <AE03> { [ 3, plus, asciicircum, dead_circumflex ] }; 365154daed1Smrg key <AE04> { [ 4, exclam, dead_breve, breve ] }; 366154daed1Smrg key <AE05> { [ 5, percent, dead_abovering, degree ] }; 367154daed1Smrg key <AE06> { [ 6, slash, dead_ogonek, ogonek ] }; 368154daed1Smrg key <AE07> { [ 7, equal, grave, dead_grave ] }; 369154daed1Smrg key <AE08> { [ 8, parenleft, dead_abovedot, abovedot ] }; 370154daed1Smrg key <AE09> { [ 9, parenright, dead_acute, acute ] }; 371154daed1Smrg key <AE10> { [ odiaeresis, Odiaeresis, dead_doubleacute, doubleacute ] }; 372154daed1Smrg key <AE11> { [ udiaeresis, Udiaeresis, dead_diaeresis, diaeresis ] }; 373154daed1Smrg key <AE12> { [ oacute, Oacute, dead_cedilla, cedilla ] }; 374154daed1Smrg}; 375154daed1Smrg 376154daed1Smrg// def_nodead: 377154daed1Smrg// Without dead keys support 378154daed1Smrghidden partial alphanumeric_keys 379154daed1Smrgxkb_symbols "def_nodead" { 380154daed1Smrg key <AE01> { [ 1, apostrophe, asciitilde ] }; 381154daed1Smrg key <AE02> { [ 2, quotedbl, caron ] }; 382154daed1Smrg key <AE03> { [ 3, plus, asciicircum ] }; 383154daed1Smrg key <AE04> { [ 4, exclam, breve ] }; 384154daed1Smrg key <AE05> { [ 5, percent, degree ] }; 385154daed1Smrg key <AE06> { [ 6, slash, ogonek ] }; 386154daed1Smrg key <AE07> { [ 7, equal, grave ] }; 387154daed1Smrg key <AE08> { [ 8, parenleft, abovedot ] }; 388154daed1Smrg key <AE09> { [ 9, parenright, acute ] }; 389154daed1Smrg key <AE10> { [ odiaeresis, Odiaeresis, doubleacute ] }; 390154daed1Smrg key <AE11> { [ udiaeresis, Udiaeresis, diaeresis ] }; 391154daed1Smrg key <AE12> { [ oacute, Oacute, cedilla ] }; 392154daed1Smrg}; 393154daed1Smrg 394154daed1Smrg 395154daed1Smrg// def_common: 396154daed1Smrg// The common part of all Hungarian layout above 397154daed1Smrghidden partial alphanumeric_keys 398154daed1Smrgxkb_symbols "def_common" { 399154daed1Smrg key <AD01> { [ q, Q, backslash ] }; 400154daed1Smrg key <AD02> { [ w, W, bar ] }; 401797b363dSmrg key <AD03> { [ e, E, Adiaeresis ] }; 402154daed1Smrg key <AD07> { [ u, U, EuroSign ] }; 403154daed1Smrg key <AD08> { [ i, I, Iacute, iacute ] }; 404c067fea9Sghen key <AD09> { [ o, O, doublelowquotemark ] }; 405c067fea9Sghen key <AD10> { [ p, P, rightdoublequotemark ] }; 406154daed1Smrg key <AD11> { [ odoubleacute, Odoubleacute, division ] }; 407154daed1Smrg key <AD12> { [ uacute, Uacute, multiply ] }; 408154daed1Smrg 409154daed1Smrg key <AC01> { [ a, A, adiaeresis, Adiaeresis ] }; 410154daed1Smrg key <AC02> { [ s, S, dstroke ] }; 411154daed1Smrg key <AC03> { [ d, D, Dstroke ] }; 412154daed1Smrg key <AC04> { [ f, F, bracketleft ] }; 413154daed1Smrg key <AC05> { [ g, G, bracketright ] }; 414154daed1Smrg key <AC07> { [ j, J, iacute, Iacute ] }; 415154daed1Smrg key <AC08> { [ k, K, lstroke ] }; 416154daed1Smrg key <AC09> { [ l, L, Lstroke ] }; 417154daed1Smrg key <AC10> { [ eacute, Eacute, dollar, cent ] }; 418154daed1Smrg key <AC11> { [ aacute, Aacute, ssharp ] }; 419154daed1Smrg 420154daed1Smrg key <BKSL> { [ udoubleacute, Udoubleacute, currency ] }; 421154daed1Smrg 422154daed1Smrg key <AB02> { [ x, X, numbersign ] }; 423154daed1Smrg key <AB03> { [ c, C, ampersand ] }; 424154daed1Smrg key <AB04> { [ v, V, at ] }; 425154daed1Smrg key <AB05> { [ b, B, braceleft ] }; 426154daed1Smrg key <AB06> { [ n, N, braceright ] }; 427154daed1Smrg key <AB07> { [ m, M, less ] }; 428154daed1Smrg key <AB08> { [ comma, question, semicolon ] }; 429bfd7cbc1Smrg key <AB09> { [ period, colon, greater ] }; 430154daed1Smrg key <AB10> { [ minus, underscore, asterisk ] }; 431154daed1Smrg 432154daed1Smrg}; 433