home *** CD-ROM | disk | FTP | other *** search
- // New style XKB layout for some widely used Hungarian keyboard layouts
- //
- // Based on old style 'xkb/symbols/hu"
- //
- // $XKeyboardConfig: xkbdesc/symbols/hu,v 1.8 2005/12/21 00:40:06 svu Exp $
- // (C) 2002-2004 So≤s PΘter <sp@osb.hu>
- //
- // Permission is granted to anyone to use, distribute and modify
- // this file in any way, provided that the above copyright notice
- // is left intact and the author of the modification summarizes
- // the changes in this header.
- //
- // This file is distributed without any expressed or implied warranty.
- //
- // Changes:
- // 2004-04-17 - Moved to new style (only Unicode based layouts)
- // - Added consistent dead key support
- // - Fixed abovedot
- // - Added adiaeresis
- // - Added EuroSign and cent symbol
-
-
- // Default layout
- default partial
- xkb_symbols "basic" {
- include "hu(102_qwertz_comma_dead)"
- name[Group1] = "Hungary";
- };
-
- // Standard layout
- partial
- xkb_symbols "standard" {
- include "hu(102_qwertz_comma_dead)"
- name[Group1] = "Hungary - Standard";
- };
-
- // Standard layout without dead key support
- partial
- xkb_symbols "nodeadkeys" {
- include "hu(102_qwertz_comma_nodead)"
- name[Group1] = "Hungary - Eliminate dead keys";
- };
-
- // Qwerty layout
- partial
- xkb_symbols "qwerty" {
- include "hu(101_qwerty_comma_dead)"
- name[Group1] = "Hungary - qwerty";
- };
-
- // Main layouts
-
- // 101_qwertz_comma_dead
- // 101 key qwertz layout
- // with decimal comma on keypad
- // and with dead key support
- partial
- xkb_symbols "101_qwertz_comma_dead" {
- name[Group1] = "Hungary - 101/qwertz/comma/Dead keys";
- include "latin"
- include "hu(def_101)"
- include "hu(def_qwertz)"
- include "keypad(comma)"
- include "hu(def_dead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 101_qwertz_comma_nodead
- // 101 key qwertz layout
- // with decimal comma on keypad
- // and without dead key support
- partial
- xkb_symbols "101_qwertz_comma_nodead" {
- name[Group1] = "Hungary - 101/qwertz/comma/Eliminate dead keys";
- include "latin"
- include "hu(def_101)"
- include "hu(def_qwertz)"
- include "keypad(comma)"
- include "hu(def_nodead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 101_qwertz_dot_dead
- // 101 key qwertz layout
- // with decimal dot on keypad
- // and with dead key support
- partial
- xkb_symbols "101_qwertz_dot_dead" {
- name[Group1] = "Hungary - 101/qwertz/dot/Dead keys";
- include "latin"
- include "hu(def_101)"
- include "hu(def_qwertz)"
- include "hu(def_dot)"
- include "hu(def_dead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 101_qwertz_dot_nodead
- // 101 key qwertz layout
- // with decimal dot on keypad
- // and without dead key support
- partial
- xkb_symbols "101_qwertz_dot_nodead" {
- name[Group1] = "Hungary - 101/qwertz/dot/Eliminate dead keys";
- include "latin"
- include "hu(def_101)"
- include "hu(def_qwertz)"
- include "hu(def_dot)"
- include "hu(def_nodead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 101_qwerty_comma_dead
- // 101 key qwerty layout
- // with decimal comma on keypad
- // and with dead key support
- partial
- xkb_symbols "101_qwerty_comma_dead" {
- name[Group1] = "Hungary - 101/qwerty/comma/Dead keys";
- include "latin"
- include "hu(def_101)"
- include "hu(def_qwerty)"
- include "keypad(comma)"
- include "hu(def_dead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 101_qwerty_comma_nodead
- // 101 key qwerty layout
- // with decimal comma on keypad
- // and without dead key support
- partial
- xkb_symbols "101_qwerty_comma_nodead" {
- name[Group1] = "Hungary - 101/qwerty/comma/Eliminate dead keys";
- include "latin"
- include "hu(def_101)"
- include "hu(def_qwerty)"
- include "keypad(comma)"
- include "hu(def_nodead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 101_qwerty_dot_dead
- // 101 key qwerty layout
- // with decimal dot on keypad
- // and with dead key support
- partial
- xkb_symbols "101_qwerty_dot_dead" {
- name[Group1] = "Hungary - 101/qwerty/dot/Dead keys";
- include "latin"
- include "hu(def_101)"
- include "hu(def_qwerty)"
- include "hu(def_dot)"
- include "hu(def_dead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 101_qwerty_dot_nodead
- // 101 key qwerty layout
- // with decimal dot on keypad
- // and without dead key support
- partial
- xkb_symbols "101_qwerty_dot_nodead" {
- name[Group1] = "Hungary - 101/qwerty/dot/Eliminate dead keys";
- include "latin"
- include "hu(def_101)"
- include "hu(def_qwerty)"
- include "hu(def_dot)"
- include "hu(def_nodead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 102_qwertz_comma_dead
- // 102 key qwertz layout
- // with decimal comma on keypad
- // and with dead key support
- partial
- xkb_symbols "102_qwertz_comma_dead" {
- name[Group1] = "Hungary - 102/qwertz/comma/Dead keys";
- include "latin"
- include "hu(def_102)"
- include "hu(def_qwertz)"
- include "keypad(comma)"
- include "hu(def_dead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 102_qwertz_comma_nodead
- // 102 key qwertz layout
- // with decimal comma on keypad
- // and without dead key support
- partial
- xkb_symbols "102_qwertz_comma_nodead" {
- name[Group1] = "Hungary - 102/qwertz/comma/Eliminate dead keys";
- include "latin"
- include "hu(def_102)"
- include "hu(def_qwertz)"
- include "keypad(comma)"
- include "hu(def_nodead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 102_qwertz_dot_dead
- // 102 key qwertz layout
- // with decimal dot on keypad
- // and with dead key support
- partial
- xkb_symbols "102_qwertz_dot_dead" {
- name[Group1] = "Hungary - 102/qwertz/dot/Dead keys";
- include "latin"
- include "hu(def_102)"
- include "hu(def_qwertz)"
- include "hu(def_dot)"
- include "hu(def_dead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 102_qwertz_dot_nodead
- // 102 key qwertz layout
- // with decimal dot on keypad
- // and without dead key support
- partial
- xkb_symbols "102_qwertz_dot_nodead" {
- name[Group1] = "Hungary - 102/qwertz/dot/Eliminate dead keys";
- include "latin"
- include "hu(def_102)"
- include "hu(def_qwertz)"
- include "hu(def_dot)"
- include "hu(def_nodead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 102_qwerty_comma_dead
- // 102 key qwerty layout
- // with decimal comma on keypad
- // and with dead key support
- partial
- xkb_symbols "102_qwerty_comma_dead" {
- name[Group1] = "Hungary - 102/qwerty/comma/Dead keys";
- include "latin"
- include "hu(def_102)"
- include "hu(def_qwerty)"
- include "keypad(comma)"
- include "hu(def_dead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 102_qwerty_comma_nodead
- // 102 key qwerty layout
- // with decimal comma on keypad
- // and without dead key support
- partial
- xkb_symbols "102_qwerty_comma_nodead" {
- name[Group1] = "Hungary - 102/qwerty/comma/Eliminate dead keys";
- include "latin"
- include "hu(def_102)"
- include "hu(def_qwerty)"
- include "keypad(comma)"
- include "hu(def_nodead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 102_qwerty_dot_dead
- // 102 key qwerty layout
- // with decimal dot on keypad
- // and with dead key support
- partial
- xkb_symbols "102_qwerty_dot_dead" {
- name[Group1] = "Hungary - 102/qwerty/dot/Dead keys";
- include "latin"
- include "hu(def_102)"
- include "hu(def_qwerty)"
- include "hu(def_dot)"
- include "hu(def_dead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // 102_qwerty_dot_nodead
- // 102 key qwerty layout
- // with decimal dot on keypad
- // and without dead key support
- partial
- xkb_symbols "102_qwerty_dot_nodead" {
- name[Group1] = "Hungary - 102/qwerty/dot/Eliminate dead keys";
- include "latin"
- include "hu(def_102)"
- include "hu(def_qwerty)"
- include "hu(def_dot)"
- include "hu(def_nodead)"
- include "hu(def_common)"
- include "level3(ralt_switch)"
- };
-
- // Partial layouts
-
- // def_102:
- // The standard Hungarian 102 key layout
- hidden partial alphanumeric_keys
- xkb_symbols "def_102" {
- key <TLDE> { [ 0, section, notsign ] };
- key <LSGT> { [ iacute, Iacute, less, greater ] };
-
- };
-
- // def_101:
- // An alternative layout for 101 key keyboards
- hidden partial alphanumeric_keys
- xkb_symbols "def_101" {
- key <TLDE> { [ iacute, Iacute, 0, section ] };
- key <LSGT> { [ less, greater ] };
- };
-
- // def_qwertz:
- // The standard Hungaryan qwertz layout
- hidden partial alphanumeric_keys
- xkb_symbols "def_qwertz" {
- key <AD06> { [ z, Z ] };
- key <AB01> { [ y, Y, greater ] };
- };
-
-
- // def_qwerty:
- // The qwerty layout for people who familiar with the standard US layout
- hidden partial alphanumeric_keys
- xkb_symbols "def_qwerty" {
- key <AD06> { [ y, Y ] };
- key <AB01> { [ z, Z, greater ] };
- };
-
- // def_dot:
- // The Hungarian standard is the comma on the keypad not decimal dot,
- // but programmers hate it
- hidden partial keypad_keys
- xkb_symbols "def_dot" {
- key <KPDL> { [ KP_Delete, KP_Decimal ] };
- };
-
-
- // def_dead:
- // Dead keys support part
- hidden partial alphanumeric_keys
- xkb_symbols "def_dead" {
- key <AE01> { [ 1, apostrophe, asciitilde, dead_tilde ] };
- key <AE02> { [ 2, quotedbl, dead_caron, caron ] };
- key <AE03> { [ 3, plus, asciicircum, dead_circumflex ] };
- key <AE04> { [ 4, exclam, dead_breve, breve ] };
- key <AE05> { [ 5, percent, dead_abovering, degree ] };
- key <AE06> { [ 6, slash, dead_ogonek, ogonek ] };
- key <AE07> { [ 7, equal, grave, dead_grave ] };
- key <AE08> { [ 8, parenleft, dead_abovedot, abovedot ] };
- key <AE09> { [ 9, parenright, dead_acute, acute ] };
- key <AE10> { [ odiaeresis, Odiaeresis, dead_doubleacute, doubleacute ] };
- key <AE11> { [ udiaeresis, Udiaeresis, dead_diaeresis, diaeresis ] };
- key <AE12> { [ oacute, Oacute, dead_cedilla, cedilla ] };
- };
-
- // def_nodead:
- // Without dead keys support
- hidden partial alphanumeric_keys
- xkb_symbols "def_nodead" {
- key <AE01> { [ 1, apostrophe, asciitilde ] };
- key <AE02> { [ 2, quotedbl, caron ] };
- key <AE03> { [ 3, plus, asciicircum ] };
- key <AE04> { [ 4, exclam, breve ] };
- key <AE05> { [ 5, percent, degree ] };
- key <AE06> { [ 6, slash, ogonek ] };
- key <AE07> { [ 7, equal, grave ] };
- key <AE08> { [ 8, parenleft, abovedot ] };
- key <AE09> { [ 9, parenright, acute ] };
- key <AE10> { [ odiaeresis, Odiaeresis, doubleacute ] };
- key <AE11> { [ udiaeresis, Udiaeresis, diaeresis ] };
- key <AE12> { [ oacute, Oacute, cedilla ] };
- };
-
-
- // def_common:
- // The common part of all Hungarian layout above
- hidden partial alphanumeric_keys
- xkb_symbols "def_common" {
- key <AD01> { [ q, Q, backslash ] };
- key <AD02> { [ w, W, bar ] };
- key <AD07> { [ u, U, EuroSign ] };
- key <AD08> { [ i, I, Iacute, iacute ] };
- key <AD11> { [ odoubleacute, Odoubleacute, division ] };
- key <AD12> { [ uacute, Uacute, multiply ] };
-
- key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
- key <AC02> { [ s, S, dstroke ] };
- key <AC03> { [ d, D, Dstroke ] };
- key <AC04> { [ f, F, bracketleft ] };
- key <AC05> { [ g, G, bracketright ] };
- key <AC07> { [ j, J, iacute, Iacute ] };
- key <AC08> { [ k, K, lstroke ] };
- key <AC09> { [ l, L, Lstroke ] };
- key <AC10> { [ eacute, Eacute, dollar, cent ] };
- key <AC11> { [ aacute, Aacute, ssharp ] };
-
- key <BKSL> { [ udoubleacute, Udoubleacute, currency ] };
-
- key <AB02> { [ x, X, numbersign ] };
- key <AB03> { [ c, C, ampersand ] };
- key <AB04> { [ v, V, at ] };
- key <AB05> { [ b, B, braceleft ] };
- key <AB06> { [ n, N, braceright ] };
- key <AB07> { [ m, M, less ] };
- key <AB08> { [ comma, question, semicolon ] };
- key <AB09> { [ period, colon, greater ] };
- key <AB10> { [ minus, underscore, asterisk ] };
-
- };
-