From 481fca2e77a44d0f0cd56c2732645726eec9dc6f Mon Sep 17 00:00:00 2001 From: marha Date: Sat, 19 Jun 2010 12:15:27 +0000 Subject: xserver and xkeyboard-config git update 19/6/2010 --- xorg-server/xkbdata.src/symbols/ctrl | 89 +- xorg-server/xkbdata.src/symbols/de | 4 +- xorg-server/xkbdata.src/symbols/fr | 2 +- xorg-server/xkbdata.src/symbols/gb | 386 +++--- xorg-server/xkbdata.src/symbols/us | 2298 +++++++++++++++++----------------- 5 files changed, 1404 insertions(+), 1375 deletions(-) (limited to 'xorg-server/xkbdata.src/symbols') diff --git a/xorg-server/xkbdata.src/symbols/ctrl b/xorg-server/xkbdata.src/symbols/ctrl index e9c4efff5..80930bc12 100644 --- a/xorg-server/xkbdata.src/symbols/ctrl +++ b/xorg-server/xkbdata.src/symbols/ctrl @@ -1,41 +1,48 @@ -// $XKeyboardConfig$ - -// $XFree86: xc/programs/xkbcomp/symbols/ctrl,v 3.2 2003/10/24 20:38:20 tsi Exp $ -// -// eliminate the caps lock key completely (replace with control) -partial modifier_keys -xkb_symbols "nocaps" { - replace key { [ Control_L, Control_L ] }; - modifier_map Control { , }; -}; - -// swap the caps lock key with the left control key -partial modifier_keys -xkb_symbols "swapcaps" { - replace key { [ Control_L ] }; - replace key { [ Caps_Lock ] }; -}; - -// moves the control key to the middle row and the caps lock -// to the bottom row. Only works if the geometry or keycodes -// file has defined appropriate aliases for the keys in question. -partial modifier_keys -xkb_symbols "ctrl_ac" { - replace key { [ Control_L ] }; - replace key { [ Caps_Lock ] }; -}; - -// Moves the control key to the bottom row and the caps lock -// to the middle row. Only works if the geometry or keycodes -// file has defined appropriate aliases for the keys in question. -partial modifier_keys -xkb_symbols "ctrl_aa" { - replace key { [ Control_L ] }; - replace key { [ Caps_Lock ] }; -}; - -// Right Ctrl works as Right Alt -partial modifier_keys -xkb_symbols "ctrl_ra" { - key { symbols[Group1]= [ Alt_R ] }; -}; +// $XKeyboardConfig$ + +// $XFree86: xc/programs/xkbcomp/symbols/ctrl,v 3.2 2003/10/24 20:38:20 tsi Exp $ +// +// eliminate the caps lock key completely (replace with control) +partial modifier_keys +xkb_symbols "nocaps" { + replace key { [ Control_L, Control_L ] }; + modifier_map Control { , }; +}; + +// swap the caps lock key with the left control key +partial modifier_keys +xkb_symbols "swapcaps" { + replace key { [ Control_L ] }; + replace key { [ Caps_Lock ] }; +}; + +// moves the control key to the middle row and the caps lock +// to the bottom row. Only works if the geometry or keycodes +// file has defined appropriate aliases for the keys in question. +partial modifier_keys +xkb_symbols "ctrl_ac" { + replace key { [ Control_L ] }; + replace key { [ Caps_Lock ] }; +}; + +// Moves the control key to the bottom row and the caps lock +// to the middle row. Only works if the geometry or keycodes +// file has defined appropriate aliases for the keys in question. +partial modifier_keys +xkb_symbols "ctrl_aa" { + replace key { [ Control_L ] }; + replace key { [ Caps_Lock ] }; +}; + +// Right Ctrl works as Right Alt +partial modifier_keys +xkb_symbols "ctrl_ra" { + key { symbols[Group1]= [ Alt_R ] }; +}; + +// Menu works as Right Ctrl +partial modifier_keys +xkb_symbols "ctrl_menu" { + replace key { [ Control_R, Control_R ] }; + modifier_map Control { Control_L, }; +}; diff --git a/xorg-server/xkbdata.src/symbols/de b/xorg-server/xkbdata.src/symbols/de index c442e00ab..d70bccd5d 100644 --- a/xorg-server/xkbdata.src/symbols/de +++ b/xorg-server/xkbdata.src/symbols/de @@ -230,8 +230,6 @@ xkb_symbols "sundeadkeys" { partial alphanumeric_keys modifier_keys keypad_keys xkb_symbols "neo_base" { - name[Group1]= "Germany - Neo 2"; - // Levels in Neo jargon // -------------------------------------------------------------- // Ebene 1: normal @@ -386,6 +384,8 @@ xkb_symbols "neo" { include "de(neo_base)" + name[Group1]= "Germany - Neo 2"; + include "shift(both_capslock)" include "level3(caps_switch)" include "level3(bksl_switch)" diff --git a/xorg-server/xkbdata.src/symbols/fr b/xorg-server/xkbdata.src/symbols/fr index 5039ca93c..37038bee4 100644 --- a/xorg-server/xkbdata.src/symbols/fr +++ b/xorg-server/xkbdata.src/symbols/fr @@ -50,7 +50,7 @@ xkb_symbols "olpc" { // Contact: Sayamindu Dasgupta include "fr(basic)" - name[Group1]="France - OLPC"; + name[Group1]="France"; key { [ z, Z, VoidSymbol, guillemotleft ] }; diff --git a/xorg-server/xkbdata.src/symbols/gb b/xorg-server/xkbdata.src/symbols/gb index 9352f503d..f7e5bbe66 100644 --- a/xorg-server/xkbdata.src/symbols/gb +++ b/xorg-server/xkbdata.src/symbols/gb @@ -1,182 +1,204 @@ -// $XKeyboardConfig$ - -// based on a keyboard map from an 'xkb/symbols/gb' file -// -// $XFree86: xc/programs/xkbcomp/symbols/gb,v 1.6 2003/10/04 10:25:14 pascal Exp $ - -partial default alphanumeric_keys -xkb_symbols "basic" { - - // Describes the differences between a very simple en_US - // keyboard and a very simple U.K. keyboard layout defined by - // the SVR4 European Language Supplement and sometimes also - // known as the IBM 166 layout. - - include "latin" - - name[Group1]="United Kingdom"; - - key { [ 2, quotedbl, twosuperior, oneeighth ] }; - key { [ 3, sterling, threesuperior, sterling ] }; - key { [ 4, dollar, EuroSign, onequarter ] }; - - key { [apostrophe, at, dead_circumflex, dead_caron] }; - key { [ grave, notsign, bar, bar ] }; - - key { [numbersign, asciitilde, dead_grave, dead_breve ] }; - key { [ backslash, bar, bar, brokenbar ] }; - - include "level3(ralt_switch_multikey)" -}; - -partial alphanumeric_keys -xkb_symbols "intl" { - - // Describes the differences between a very simple en_US - // keyboard and a very simple U.K. keyboard layout with - // dead keys. By Phil Jones (philjones1@blueyonder.co.uk) - - // Includes the following keys: - // dead_grave - // dead_acute - // dead_circumflex - // dead_tilde - // dead_diaeresis - - include "latin" - - name[Group1]="United Kingdom - International (with dead keys)"; - - key { [ 2, dead_diaeresis, twosuperior, onehalf ] }; - key { [ 3, sterling, threesuperior, onethird ] }; - key { [ 4, dollar, EuroSign, onequarter ] }; - key { [ 6, dead_circumflex, NoSymbol, onesixth ] }; - - key { [ dead_acute, at, apostrophe, bar ] }; - key { [ dead_grave, notsign, bar, bar ] }; - - key { [ numbersign, dead_tilde, bar, bar ] }; - key { [ backslash, bar, bar, bar ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "extd" { - // Clone of the Microsoft "United Kingdom - Extended" layout, which - // includes dead keys for: grave; diaeresis; circumflex; tilde; and - // accute. It also enables direct access to accute characters using - // the Multi_key (Alt Gr). - // - // Taken from... - // "Windows Keyboard Layouts" - // http://msdn.microsoft.com/en-us/goglobal/bb964651.aspx - // - // -- Jonathan Miles - - include "latin" - - name[Group1]="United Kingdom - Extended - Winkeys"; - - // Alphanumeric section - key { [ dead_grave, notsign, brokenbar, NoSymbol ] }; - - key { [ 2, quotedbl, dead_diaeresis, onehalf ] }; - key { [ 3, sterling, threesuperior, onethird ] }; - key { [ 4, dollar, EuroSign, onequarter ] }; - key { [ 6, asciicircum, dead_circumflex, NoSymbol ] }; - - key { [ w, W, wacute, Wacute ] }; - key { [ e, E, eacute, Eacute ] }; - key { [ y, Y, yacute, Yacute ] }; - key { [ u, U, uacute, Uacute ] }; - key { [ i, I, iacute, Iacute ] }; - key { [ o, O, oacute, Oacute ] }; - - key { [ a, A, aacute, Aacute ] }; - key { [ apostrophe, at, dead_acute, NoSymbol ] }; - - key { [ c, C, ccedilla, Ccedilla ] }; - - key { [ numbersign, asciitilde, dead_tilde, NoSymbol ] }; - key { [ backslash, bar, NoSymbol, NoSymbol ] }; - // End alphanumeric section - - include "level3(ralt_switch)" -}; - -// Describe the differences between the US Colemak layout -// and a UK variant. By Andy Buckley (andy@insectnation.org) - -partial alphanumeric_keys -xkb_symbols "colemak" { - include "us(colemak)" - - name[Group1]="United Kingdom - Colemak"; - - key { [ 2, quotedbl, twosuperior, oneeighth ] }; - key { [ 3, sterling, threesuperior, sterling ] }; - key { [ 4, dollar, EuroSign, onequarter ] }; - - key { [apostrophe, at, dead_circumflex, dead_caron] }; - key { [ grave, notsign, bar, bar ] }; - - key { [numbersign, asciitilde, dead_grave, dead_breve ] }; - key { [ backslash, bar, bar, brokenbar ] }; - - include "level3(ralt_switch_multikey)" -}; - - -// Dvorak (UK) keymap (by odaen) allowing the usage of -// the £ and ? key and swapping the @ and " keys. - -partial alphanumeric_keys -xkb_symbols "dvorak" { - include "us(dvorak-alt-intl)" - - name[Group1]="United Kingdom - Dvorak"; - - key { [ apostrophe, at ] }; - key { [ 2, quotedbl, twosuperior, NoSymbol ] }; - key { [ 3, sterling, threesuperior, NoSymbol ] }; - key { [ numbersign, asciitilde ] }; - key { [ backslash, bar ] }; - key { [ grave, notsign, bar, bar ] }; -}; - -// Dvorak letter positions, but punctuation all in the normal UK positions. -partial alphanumeric_keys -xkb_symbols "dvorakukp" { - include "gb(dvorak)" - - name[Group1]="United Kingdom - Dvorak (UK Punctuation)"; - - key { [ minus, underscore ] }; - key { [ equal, plus ] }; - key { [ bracketleft, braceleft ] }; - key { [ bracketright, braceright ] }; - key { [ slash, question ] }; - key { [apostrophe, at, dead_circumflex, dead_caron] }; -}; - -// Copied from macintosh_vndr/gb -partial alphanumeric_keys -xkb_symbols "mac" { - - // Describes the differences between a very simple en_US - // keyboard and a very simple U.K. keyboard layout - - include "latin" - - name[Group1]= "United Kingdom - Macintosh"; - - key { [ 2, at, EuroSign ] }; - key { [ 3, sterling, numbersign ] }; - - // End alphanumeric section - - include "level3(ralt_switch)" -}; - - +// $XKeyboardConfig$ + +// based on a keyboard map from an 'xkb/symbols/gb' file +// +// $XFree86: xc/programs/xkbcomp/symbols/gb,v 1.6 2003/10/04 10:25:14 pascal Exp $ + +partial default alphanumeric_keys +xkb_symbols "basic" { + + // Describes the differences between a very simple en_US + // keyboard and a very simple U.K. keyboard layout defined by + // the SVR4 European Language Supplement and sometimes also + // known as the IBM 166 layout. + + include "latin" + + name[Group1]="United Kingdom"; + + key { [ 2, quotedbl, twosuperior, oneeighth ] }; + key { [ 3, sterling, threesuperior, sterling ] }; + key { [ 4, dollar, EuroSign, onequarter ] }; + + key { [apostrophe, at, dead_circumflex, dead_caron] }; + key { [ grave, notsign, bar, bar ] }; + + key { [numbersign, asciitilde, dead_grave, dead_breve ] }; + key { [ backslash, bar, bar, brokenbar ] }; + + include "level3(ralt_switch_multikey)" +}; + +partial alphanumeric_keys +xkb_symbols "intl" { + + // Describes the differences between a very simple en_US + // keyboard and a very simple U.K. keyboard layout with + // dead keys. By Phil Jones (philjones1@blueyonder.co.uk) + + // Includes the following keys: + // dead_grave + // dead_acute + // dead_circumflex + // dead_tilde + // dead_diaeresis + + include "latin" + + name[Group1]="United Kingdom - International (with dead keys)"; + + key { [ 2, dead_diaeresis, twosuperior, onehalf ] }; + key { [ 3, sterling, threesuperior, onethird ] }; + key { [ 4, dollar, EuroSign, onequarter ] }; + key { [ 6, dead_circumflex, NoSymbol, onesixth ] }; + + key { [ dead_acute, at, apostrophe, bar ] }; + key { [ dead_grave, notsign, bar, bar ] }; + + key { [ numbersign, dead_tilde, bar, bar ] }; + key { [ backslash, bar, bar, bar ] }; + + include "level3(ralt_switch)" +}; + +partial alphanumeric_keys +xkb_symbols "extd" { + // Clone of the Microsoft "United Kingdom - Extended" layout, which + // includes dead keys for: grave; diaeresis; circumflex; tilde; and + // accute. It also enables direct access to accute characters using + // the Multi_key (Alt Gr). + // + // Taken from... + // "Windows Keyboard Layouts" + // http://msdn.microsoft.com/en-us/goglobal/bb964651.aspx + // + // -- Jonathan Miles + + include "latin" + + name[Group1]="United Kingdom - Extended - Winkeys"; + + // Alphanumeric section + key { [ dead_grave, notsign, brokenbar, NoSymbol ] }; + + key { [ 2, quotedbl, dead_diaeresis, onehalf ] }; + key { [ 3, sterling, threesuperior, onethird ] }; + key { [ 4, dollar, EuroSign, onequarter ] }; + key { [ 6, asciicircum, dead_circumflex, NoSymbol ] }; + + key { [ w, W, wacute, Wacute ] }; + key { [ e, E, eacute, Eacute ] }; + key { [ y, Y, yacute, Yacute ] }; + key { [ u, U, uacute, Uacute ] }; + key { [ i, I, iacute, Iacute ] }; + key { [ o, O, oacute, Oacute ] }; + + key { [ a, A, aacute, Aacute ] }; + key { [ apostrophe, at, dead_acute, NoSymbol ] }; + + key { [ c, C, ccedilla, Ccedilla ] }; + + key { [ numbersign, asciitilde, dead_tilde, NoSymbol ] }; + key { [ backslash, bar, NoSymbol, NoSymbol ] }; + // End alphanumeric section + + include "level3(ralt_switch)" +}; + +// Describe the differences between the US Colemak layout +// and a UK variant. By Andy Buckley (andy@insectnation.org) + +partial alphanumeric_keys +xkb_symbols "colemak" { + include "us(colemak)" + + name[Group1]="United Kingdom - Colemak"; + + key { [ 2, quotedbl, twosuperior, oneeighth ] }; + key { [ 3, sterling, threesuperior, sterling ] }; + key { [ 4, dollar, EuroSign, onequarter ] }; + + key { [apostrophe, at, dead_circumflex, dead_caron] }; + key { [ grave, notsign, bar, bar ] }; + + key { [numbersign, asciitilde, dead_grave, dead_breve ] }; + key { [ backslash, bar, bar, brokenbar ] }; + + include "level3(ralt_switch_multikey)" +}; + + +// Dvorak (UK) keymap (by odaen) allowing the usage of +// the £ and ? key and swapping the @ and " keys. + +partial alphanumeric_keys +xkb_symbols "dvorak" { + include "us(dvorak-alt-intl)" + + name[Group1]="United Kingdom - Dvorak"; + + key { [ apostrophe, at ] }; + key { [ 2, quotedbl, twosuperior, NoSymbol ] }; + key { [ 3, sterling, threesuperior, NoSymbol ] }; + key { [ numbersign, asciitilde ] }; + key { [ backslash, bar ] }; + key { [ grave, notsign, bar, bar ] }; +}; + +// Dvorak letter positions, but punctuation all in the normal UK positions. +partial alphanumeric_keys +xkb_symbols "dvorakukp" { + include "gb(dvorak)" + + name[Group1]="United Kingdom - Dvorak (UK Punctuation)"; + + key { [ minus, underscore ] }; + key { [ equal, plus ] }; + key { [ bracketleft, braceleft ] }; + key { [ bracketright, braceright ] }; + key { [ slash, question ] }; + key { [apostrophe, at, dead_circumflex, dead_caron] }; +}; + +// Copied from macintosh_vndr/gb +partial alphanumeric_keys +xkb_symbols "mac" { + + // Describes the differences between a very simple en_US + // keyboard and a very simple U.K. keyboard layout + + include "latin" + + name[Group1]= "United Kingdom - Macintosh"; + + key { [ 2, at, EuroSign ] }; + key { [ 3, sterling, numbersign ] }; + + // End alphanumeric section + + include "level3(ralt_switch)" +}; + + +partial alphanumeric_keys +xkb_symbols "mac_intl" { + + include "latin" + + name[Group1]="United Kingdom - Macintosh (International)"; + + key { [ 2, at, EuroSign, onehalf ] }; + key { [ 3, sterling, twosuperior, onethird ] }; + key { [ 4, dollar, threesuperior, onequarter ] }; + key { [ 6, dead_circumflex, NoSymbol, onesixth ] }; + key { [ o, O, oe, OE ] }; + + key { [ dead_acute, dead_diaeresis, dead_diaeresis, bar ] }; //dead_doubleacute + key { [ section, plusminus, notsign, notsign ] }; //dead_grave + + key { [ backslash, bar, numbersign, bar ] }; + key { [ dead_grave, dead_tilde, brokenbar, bar ] }; + + include "level3(ralt_switch)" +}; + diff --git a/xorg-server/xkbdata.src/symbols/us b/xorg-server/xkbdata.src/symbols/us index 5e8a04eb7..e2c40a4e5 100644 --- a/xorg-server/xkbdata.src/symbols/us +++ b/xorg-server/xkbdata.src/symbols/us @@ -1,1149 +1,1149 @@ -// $XKeyboardConfig$ - -// -// $XdotOrg: xc/programs/xkbcomp/symbols/us,v 1.1.4.3 2004/03/05 13:41:33 eich Exp $ -// $XFree86: xc/programs/xkbcomp/symbols/us,v 1.6 2003/10/31 14:32:05 pascal Exp $ - -default -partial alphanumeric_keys modifier_keys -xkb_symbols "basic" { - - name[Group1]= "USA"; - - // Alphanumeric section - key { [ grave, asciitilde ] }; - key { [ 1, exclam ] }; - key { [ 2, at ] }; - key { [ 3, numbersign ] }; - key { [ 4, dollar ] }; - key { [ 5, percent ] }; - key { [ 6, asciicircum ] }; - key { [ 7, ampersand ] }; - key { [ 8, asterisk ] }; - key { [ 9, parenleft ] }; - key { [ 0, parenright ] }; - key { [ minus, underscore ] }; - key { [ equal, plus ] }; - - key { [ q, Q ] }; - key { [ w, W ] }; - key { [ e, E ] }; - key { [ r, R ] }; - key { [ t, T ] }; - key { [ y, Y ] }; - key { [ u, U ] }; - key { [ i, I ] }; - key { [ o, O ] }; - key { [ p, P ] }; - key { [ bracketleft, braceleft ] }; - key { [ bracketright, braceright ] }; - - key { [ a, A ] }; - key { [ s, S ] }; - key { [ d, D ] }; - key { [ f, F ] }; - key { [ g, G ] }; - key { [ h, H ] }; - key { [ j, J ] }; - key { [ k, K ] }; - key { [ l, L ] }; - key { [ semicolon, colon ] }; - key { [ apostrophe, quotedbl ] }; - - key { [ z, Z ] }; - key { [ x, X ] }; - key { [ c, C ] }; - key { [ v, V ] }; - key { [ b, B ] }; - key { [ n, N ] }; - key { [ m, M ] }; - key { [ comma, less ] }; - key { [ period, greater ] }; - key { [ slash, question ] }; - - key { [ backslash, bar ] }; - // End alphanumeric section -}; - -partial alphanumeric_keys -xkb_symbols "euro" { - - name[Group1]= "USA - With EuroSign on 5"; - - include "us(basic)" - - include "eurosign(5)" - - include "level3(ralt_switch)" -}; - - -partial alphanumeric_keys -xkb_symbols "intl" { - - name[Group1]= "USA - International (with dead keys)"; - - include "us(basic)" - - // Alphanumeric section - key { [dead_grave, dead_tilde, grave, asciitilde ] }; - key { [ 1, exclam, exclamdown, onesuperior ] }; - key { [ 2, at, twosuperior, dead_doubleacute ] }; - key { [ 3, numbersign, threesuperior, dead_macron ] }; - key { [ 4, dollar, currency, sterling ] }; - key { [ 5, percent, EuroSign, dead_cedilla ] }; - key { [ 6, dead_circumflex, onequarter, asciicircum ] }; - key { [ 7, ampersand, onehalf, dead_horn ] }; - key { [ 8, asterisk, threequarters, dead_ogonek ] }; - key { [ 9, parenleft, leftsinglequotemark, dead_breve ] }; - key { [ 0, parenright, rightsinglequotemark, dead_abovering ] }; - key { [ minus, underscore, yen, dead_belowdot ] }; - key { [ equal, plus, multiply, division ] }; - - key { [ q, Q, adiaeresis, Adiaeresis ] }; - key { [ w, W, aring, Aring ] }; - key { [ e, E, eacute, Eacute ] }; - key { [ r, R, registered, registered ] }; - key { [ t, T, thorn, THORN ] }; - key { [ y, Y, udiaeresis, Udiaeresis ] }; - key { [ u, U, uacute, Uacute ] }; - key { [ i, I, iacute, Iacute ] }; - key { [ o, O, oacute, Oacute ] }; - key { [ p, P, odiaeresis, Odiaeresis ] }; - key { [ bracketleft, braceleft, guillemotleft, leftdoublequotemark ] }; - key { [bracketright, braceright, guillemotright, rightdoublequotemark ] }; - - key { [ a, A, aacute, Aacute ] }; - key { [ s, S, ssharp, section ] }; - key { [ d, D, eth, ETH ] }; - key { [ f, F, f, F ] }; - key { [ g, G, g, G ] }; - key { [ h, H, h, H ] }; - key { [ j, J, j, J ] }; - key { [ k, K, oe, OE ] }; - - key { [ l, L, oslash, Ooblique ] }; - key { [ semicolon, colon, paragraph, degree ] }; - key { [dead_acute, dead_diaeresis, apostrophe, quotedbl ] }; - - key { [ z, Z, ae, AE ] }; - key { [ x, X, x, X ] }; - key { [ c, C, copyright, cent ] }; - key { [ v, V, v, V ] }; - key { [ b, B, b, B ] }; - key { [ n, N, ntilde, Ntilde ] }; - key { [ m, M, mu, mu ] }; - key { [ comma, less, ccedilla, Ccedilla ] }; - key { [ period, greater, dead_abovedot, dead_caron ] }; - key { [ slash, question, questiondown, dead_hook ] }; - key { [ backslash, bar, notsign, brokenbar ] }; - - include "level3(ralt_switch)" -}; - -// Based on symbols/us_intl keyboard map: -// Dead-keys definition for a very simple US/ASCII layout. -// by Conectiva (http://www.conectiva.com.br) -// modified by Ricardo Y. Igarashi (iga@that.com.br) - -// Added the following deadkeys, to make it truly international: -// -// dead_macron: on AltGr-minus -// dead_breve: on AltGr-parenleft -// dead_abovedot: on AltGr-period -// dead_abovering: on AltGr-0 -// dead_doubleacute: on AltGr-equal (as quotedbl is already used) -// dead_caron: on AltGr-less (AltGr-shift-comma) -// dead_cedilla: on AltGr-comma -// dead_ogonek: on AltGr-semicolon -// dead_belowdot: on AltGr-underscore (AltGr-shift-minus) -// dead_hook: on AltGr-question -// dead_horn: on AltGr-plus (AltGr-shift-equal) -// dead_diaeresis: on AltGr-colon (Alt-shift-semicolon) -// -// those were already there: -// dead_grave -// dead_acute -// dead_circumflex -// dead_tilde -// dead_diaeresis - -partial alphanumeric_keys -xkb_symbols "alt-intl" { - - name[Group1]= "USA - Alternative international"; - - include "us" - - key { [ dead_grave, dead_tilde, grave, asciitilde ] }; - key { [ 5, percent, EuroSign ] }; - key { [ 6, dead_circumflex, asciicircum, asciicircum ] }; - key { [ 9, parenleft, leftsinglequotemark, dead_breve ] }; - key { [ 0, parenright, rightsinglequotemark, dead_abovering ] }; - key { [ minus, underscore, dead_macron, dead_belowdot ] }; - key { [ equal, plus, dead_doubleacute, dead_horn ] }; - - key { [ e, E, EuroSign, cent ] }; - - key { [ semicolon, colon, dead_ogonek, dead_diaeresis ] }; - key { [ dead_acute, dead_diaeresis, apostrophe, quotedbl ] }; - - key { [ comma, less, dead_cedilla, dead_caron ] }; - key { [ period, greater, dead_abovedot, dead_circumflex ] }; - key { [ slash, question, dead_hook, dead_hook ] }; - - include "level3(ralt_switch)" -}; - -// based on a keyboard map from an 'xkb/symbols/dk' file -// -// $XFree86: xc/programs/xkbcomp/symbols/dvorak,v 1.5 2004/01/03 16:35:07 herrb Exp $ - -partial alphanumeric_keys -xkb_symbols "dvorak" { - - name[Group1]= "USA - Dvorak"; - - // Alphanumeric section - - key { [ grave, asciitilde, dead_grave, dead_tilde ] }; - - key { [ 1, exclam ] }; - key { [ 2, at ] }; - key { [ 3, numbersign ] }; - key { [ 4, dollar ] }; - key { [ 5, percent ] }; - key { [ 6, asciicircum, dead_circumflex, dead_circumflex ] }; - key { [ 7, ampersand ] }; - key { [ 8, asterisk ] }; - key { [ 9, parenleft, dead_grave] }; - key { [ 0, parenright ] }; - key { [ bracketleft, braceleft ] }; - key { [ bracketright, braceright, dead_tilde] }; - - key { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] }; - key { [ comma, less, dead_cedilla, dead_caron ] }; - key { [ period, greater, dead_abovedot, periodcentered ] }; - key { [ p, P ] }; - key { [ y, Y ] }; - key { [ f, F ] }; - key { [ g, G ] }; - key { [ c, C ] }; - key { [ r, R ] }; - key { [ l, L ] }; - key { [ slash, question ] }; - key { [ equal, plus ] }; - - key { [ a, A ] }; - key { [ o, O ] }; - key { [ e, E ] }; - key { [ u, U ] }; - key { [ i, I ] }; - key { [ d, D ] }; - key { [ h, H ] }; - key { [ t, T ] }; - key { [ n, N ] }; - key { [ s, S ] }; - key { [ minus, underscore ] }; - - key { [ semicolon, colon, dead_ogonek, dead_doubleacute ] }; - key { [ q, Q ] }; - key { [ j, J ] }; - key { [ k, K ] }; - key { [ x, X ] }; - key { [ b, B ] }; - key { [ m, M ] }; - key { [ w, W ] }; - key { [ v, V ] }; - key { [ z, Z ] }; - - key { [ backslash, bar ] }; -}; - -// Dvorak international with dead keys -// Olivier Mehani (shtrom-xorg@ssji.net) -// Reproduce the per-key mapping of us(intl) for the dvorak layout -// aka "I just swapped my keys over" -partial alphanumeric_keys -xkb_symbols "dvorak-intl" { - - name[Group1]= "USA - Dvorak international (with dead keys)"; - - include "us(dvorak)" - - key { [dead_grave, dead_tilde, grave, asciitilde ] }; - - key { [ 1, exclam, exclamdown, onesuperior ] }; - key { [ 2, at, twosuperior, dead_doubleacute ] }; - key { [ 3, numbersign, threesuperior, dead_macron ] }; - key { [ 4, dollar, currency, sterling ] }; - key { [ 5, percent, EuroSign, dead_cedilla ] }; - key { [ 6, dead_circumflex, onequarter, asciicircum ] }; - key { [ 7, ampersand, onehalf, dead_horn ] }; - key { [ 8, asterisk, threequarters, dead_ogonek ] }; - key { [ 9, parenleft, leftsinglequotemark, dead_breve ] }; - key { [ 0, parenright, rightsinglequotemark, dead_abovering ] }; - key { [ bracketleft, braceleft, guillemotleft, leftdoublequotemark ] }; - key { [bracketright, braceright, guillemotright, rightdoublequotemark ] }; - - key { [dead_acute, dead_diaeresis, apostrophe, quotedbl ] }; - key { [ comma, less, ccedilla, Ccedilla ] }; - key { [ period, greater, dead_abovedot, dead_caron ] }; - key { [ p, P, odiaeresis, Odiaeresis ] }; - key { [ y, Y, udiaeresis, Udiaeresis ] }; - // key { [ f, F ] }; - // key { [ g, G ] }; - key { [ c, C, copyright, cent ] }; - key { [ r, R, registered, registered ] }; - key { [ l, L, oslash, Ooblique ] }; - key { [ slash, question, questiondown, dead_hook ] }; - // key { [ equal, plus, multiply, division ] }; - - key { [ a, A, aacute, Aacute ] }; - key { [ o, O, oacute, Oacute ] }; - key { [ e, E, eacute, Eacute ] }; - key { [ u, U, uacute, Uacute ] }; - key { [ i, I, iacute, Iacute ] }; - key { [ d, D, eth, ETH ] }; - // key { [ h, H ] }; - key { [ t, T, thorn, THORN ] }; - key { [ n, N, ntilde, Ntilde ] }; - key { [ s, S, ssharp, section ] }; - // key { [ minus, underscore, yen, dead_belowdot ] }; - - key { [ semicolon, colon, paragraph, degree ] }; - key { [ q, Q, adiaeresis, Adiaeresis ] }; - // key { [ j, J ] }; - key { [ k, K, oe, OE ] }; - // key { [ x, X ] }; - // key { [ b, B ] }; - key { [ m, M, mu, mu ] }; - key { [ w, W, aring, Aring ] }; - // key { [ v, V ] }; - key { [ z, Z, ae, AE ] }; - - key { [ backslash, bar, notsign, brokenbar ] }; - - include "level3(ralt_switch)" -}; - -// Dvorak international without dead keys -// Stephane Magnenat (stephane at magnenat dot net, http://stephane.magnenat.net) -// Based on information from http://www.poupinou.org/dvorak/index.html -// -// ` 1 2 3 4 5 6 7 8 9 0 [ ] \ -// € -// -// ' , . p y f g c r l / = -// ä ê ë ü ç -// -// a o e u i d h t n s - -// à ô é û î ß -// -// ; q j k x b m w v z -// â ö è ù ï - -partial alphanumeric_keys -xkb_symbols "dvorak-alt-intl" { - - name[Group1]= "USA - Dvorak alternative international (no dead keys)"; - - include "us(dvorak)" - - key { [ 4, dollar, EuroSign ] }; - - key { [ comma, less, adiaeresis, dead_caron ] }; - key { [ period, greater, ecircumflex, periodcentered ] }; - key { [ p, P, ediaeresis, dead_cedilla ] }; - key { [ y, Y, udiaeresis ] }; - key { [ c, C, ccedilla, dead_abovedot ] }; - - key { [ a, A, agrave ] }; - key { [ o, O, ocircumflex ] }; - key { [ e, E, eacute ] }; - key { [ u, U, ucircumflex ] }; - key { [ i, I, icircumflex ] }; - key { [ s, S, ssharp ] }; - - key { [ semicolon, colon, acircumflex ] }; - key { [ q, Q, odiaeresis, dead_ogonek ] }; - key { [ j, J, egrave, dead_doubleacute ] }; - key { [ k, K, ugrave ] }; - key { [ x, X, idiaeresis ] }; - - include "level3(ralt_switch)" -}; - -// Left and right handed dvorak layouts -// by sqweek 2006-01-30 -// Based on the corresponding layouts in the console-tools package. -partial alphanumeric_keys -xkb_symbols "dvorak-l" { - - include "us(dvorak)" - name[Group1]= "USA - Left handed Dvorak"; - - key { [ bracketleft, braceleft ] }; - key { [ bracketright, braceright ] }; - key { [ slash, question ] }; - key { [ p, P ] }; - key { [ f, F ] }; - key { [ m, M ] }; - key { [ l, L ] }; - key { [ j, J ] }; - key { [ 4, dollar ] }; - key { [ 3, numbersign ] }; - key { [ 2, at ] }; - key { [ 1, exclam ] }; - - key { [ semicolon, colon ] }; - key { [ q, Q ] }; - key { [ b, B ] }; - key { [ y, Y ] }; - key { [ u, U ] }; - key { [ r, R ] }; - key { [ s, S ] }; - key { [ o, O ] }; - key { [ period, greater ] }; - key { [ 6, asciicircum ] }; - key { [ 5, percent ] }; - key { [ equal, plus ] }; - - key { [ minus, underscore ] }; - key { [ k, K ] }; - key { [ c, C ] }; - key { [ d, D ] }; - key { [ t, T ] }; - key { [ h, H ] }; - key { [ e, E ] }; - key { [ a, A ] }; - key { [ z, Z ] }; - key { [ 8, asterisk ] }; - key { [ 7, ampersand ] }; - - key { [ apostrophe, quotedbl ] }; - key { [ x, X ] }; - key { [ g, G ] }; - key { [ v, V ] }; - key { [ w, W ] }; - key { [ n, N ] }; - key { [ i, I ] }; - key { [ comma, less ] }; - key { [ 0, parenright ] }; - key { [ 9, parenleft ] }; -}; - -partial alphanumeric_keys -xkb_symbols "dvorak-r" { - - include "us(dvorak)" - name[Group1]= "USA - Right handed Dvorak"; - - key { [ 1, exclam ] }; - key { [ 2, at ] }; - key { [ 3, numbersign ] }; - key { [ 4, dollar ] }; - key { [ j, J ] }; - key { [ l, L ] }; - key { [ m, M ] }; - key { [ f, F ] }; - key { [ p, P ] }; - key { [ slash, question ] }; - key { [ bracketleft, braceleft ] }; - key { [ bracketright, braceright ] }; - - key { [ 5, percent ] }; - key { [ 6, asciicircum ] }; - key { [ q, Q ] }; - key { [ period, greater ] }; - key { [ o, O ] }; - key { [ r, R ] }; - key { [ s, S ] }; - key { [ u, U ] }; - key { [ y, Y ] }; - key { [ b, B ] }; - key { [ semicolon, colon ] }; - key { [ equal, plus ] }; - - key { [ 7, ampersand ] }; - key { [ 8, asterisk ] }; - key { [ z, Z ] }; - key { [ a, A ] }; - key { [ e, E ] }; - key { [ h, H ] }; - key { [ t, T ] }; - key { [ d, D ] }; - key { [ c, C ] }; - key { [ k, K ] }; - key { [ minus, underscore ] }; - - key { [ 9, parenleft ] }; - key { [ 0, parenright ] }; - key { [ x, X ] }; - key { [ comma, less ] }; - key { [ i, I ] }; - key { [ n, N ] }; - key { [ w, W ] }; - key { [ v, V ] }; - key { [ g, G ] }; - key { [ apostrophe, quotedbl ] }; -}; - -// Classic dvorak layout -// by Piter Punk - 2006-07-06 -// Based on dvorak layout and e-mail from Russel L. Harris rlharris@oplink.net -// on xorg list. -partial alphanumeric_keys -xkb_symbols "dvorak-classic" { - - name[Group1]= "USA - Classic Dvorak"; - - // Alphanumeric section - - key { [ grave, asciitilde, dead_grave, dead_tilde ] }; - - key { [ bracketleft, braceleft ] }; - key { [ 7, ampersand ] }; - key { [ 5, percent ] }; - key { [ 3, numbersign ] }; - key { [ 1, exclam ] }; - key { [ 9, parenleft, dead_grave] }; - key { [ 0, parenright ] }; - key { [ 2, at ] }; - key { [ 4, dollar ] }; - key { [ 6, asciicircum, dead_circumflex, dead_circumflex ] }; - key { [ 8, asterisk ] }; - key { [ bracketright, braceright, dead_tilde] }; - - key { [ slash, question ] }; - key { [ comma, less, dead_cedilla, dead_caron ] }; - key { [ period, greater, dead_abovedot, periodcentered ] }; - key { [ p, P ] }; - key { [ y, Y ] }; - key { [ f, F ] }; - key { [ g, G ] }; - key { [ c, C ] }; - key { [ r, R ] }; - key { [ l, L ] }; - key { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] }; - key { [ equal, plus ] }; - - key { [ a, A ] }; - key { [ o, O ] }; - key { [ e, E ] }; - key { [ u, U ] }; - key { [ i, I ] }; - key { [ d, D ] }; - key { [ h, H ] }; - key { [ t, T ] }; - key { [ n, N ] }; - key { [ s, S ] }; - key { [ minus, underscore ] }; - - key { [ semicolon, colon, dead_ogonek, dead_doubleacute ] }; - key { [ q, Q ] }; - key { [ j, J ] }; - key { [ k, K ] }; - key { [ x, X ] }; - key { [ b, B ] }; - key { [ m, M ] }; - key { [ w, W ] }; - key { [ v, V ] }; - key { [ z, Z ] }; - key { [ backslash, bar ] }; -}; - -// Programmer Dvorak, by Roland Kaufmann -// License: BSD, available at -// Main features: Numbers are in shift position (like French), symbols have been -// placed in locations that give good hand-alternation and finger rolling with -// symbols that usually follows, accented characters are possible for I18N. -partial alphanumeric_keys -xkb_symbols "dvp" { - include "us(dvorak)" - - name[Group1] = "USA - Programmer Dvorak"; - - // Unmodified Shift AltGr Shift+AltGr - // symbols row, left side - key { [ dollar, asciitilde, dead_tilde ] }; - key { [ ampersand, percent ] }; - key { [ bracketleft, 7, currency ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key { [ braceleft, 5, cent ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key { [ braceright, 3, yen ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key { [ parenleft, 1, EuroSign ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key { [ equal, 9, sterling ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - - // symbols row, right side - key { [ asterisk, 0 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key { [ parenright, 2, onehalf ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key { [ plus, 4 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key { [ bracketright, 6 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key { [ exclam, 8, exclamdown ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key { [ numbersign, grave, dead_grave ] }; - key { [ BackSpace ] }; - - // upper row, left side - key { [ semicolon, colon, dead_diaeresis ] }; - key { [ comma, less, guillemotleft ] }; - key { [ period, greater, guillemotright ] }; - key { [ p, P, paragraph, section ] }; - key { [ y, Y, udiaeresis, Udiaeresis ] }; - - // upper row, right side - key { [ c, C, ccedilla, Ccedilla ] }; - key { [ r, R, registered, trademark ] }; - key { [ slash, question, questiondown ] }; - key { [ at, asciicircum, dead_circumflex, dead_caron ] }; - - // home row, left side - key { [ a, A, aring, Aring ] }; - key { [ o, O, oslash, Ooblique ] }; - key { [ e, E, ae, AE ] }; - key { [ u, U, eacute, Eacute ] }; - - // home row, right side - key { [ d, D, eth, ETH ] }; - key { [ h, H, dead_acute ] }; - key { [ t, T, thorn, THORN ] }; - key { [ n, N, ntilde, Ntilde ] }; - key { [ s, S, ssharp ] }; - key { [ minus, underscore, hyphen ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key { [ backslash, bar ] }; - - // lower row, left side - key { [ apostrophe, quotedbl, dead_acute ] }; -}; - -// phonetic layout for Russian letters on an US keyboard -// by Ivan Popov 2005-07-17 - -// level3 modifier is a shortcut to the "us" meaning of the keys where -// we place cyrillic letters, handy for accessing the corresponding -// punctuation marks. -// It is important to have access to punctuation marks, and the rest of -// alphabetical keys are added for being consequent so that the users -// can expect the level3 modifier to give what the key label shows. - -partial alphanumeric_keys -xkb_symbols "rus" { - - name[Group1]= "USA - Russian phonetic"; - - include "us(basic)" - -key.type[group1]="FOUR_LEVEL_ALPHABETIC"; - - key { [ Cyrillic_a, Cyrillic_A ] }; - key { [ Cyrillic_be, Cyrillic_BE ] }; - key { [ Cyrillic_ve, Cyrillic_VE ] }; - key { [ Cyrillic_ghe, Cyrillic_GHE ] }; - key { [ Cyrillic_de, Cyrillic_DE ] }; - key { [ Cyrillic_ie, Cyrillic_IE ] }; - key { [ Cyrillic_io, Cyrillic_IO, grave, asciitilde ] }; - key { [ Cyrillic_zhe, Cyrillic_ZHE ] }; - key { [ Cyrillic_ze, Cyrillic_ZE ] }; - key { [ Cyrillic_i, Cyrillic_I ] }; - key { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; - key { [ Cyrillic_ka, Cyrillic_KA ] }; - key { [ Cyrillic_el, Cyrillic_EL ] }; - key { [ Cyrillic_em, Cyrillic_EM ] }; - key { [ Cyrillic_en, Cyrillic_EN ] }; - key { [ Cyrillic_o, Cyrillic_O ] }; - key { [ Cyrillic_pe, Cyrillic_PE ] }; - key { [ Cyrillic_er, Cyrillic_ER ] }; - key { [ Cyrillic_es, Cyrillic_ES ] }; - key { [ Cyrillic_te, Cyrillic_TE ] }; - key { [ Cyrillic_u, Cyrillic_U ] }; - key { [ Cyrillic_ef, Cyrillic_EF ] }; - key { [ Cyrillic_ha, Cyrillic_HA ] }; - key { [ Cyrillic_tse, Cyrillic_TSE ] }; - key { [ Cyrillic_che, Cyrillic_CHE, semicolon, colon ] }; - key { [ Cyrillic_sha, Cyrillic_SHA, bracketleft, braceleft] }; - key { [ Cyrillic_shcha, Cyrillic_SHCHA, bracketright, braceright ] }; - key { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, equal, plus ] }; - key { [ Cyrillic_yeru, Cyrillic_YERU ] }; - key { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; - key { [ Cyrillic_e, Cyrillic_E, backslash, bar ] }; - key { [ Cyrillic_yu, Cyrillic_YU, apostrophe, quotedbl ] }; - key { [ Cyrillic_ya, Cyrillic_YA ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "mac" { - - include "us(basic)" - name[Group1]= "USA - Macintosh"; - key.type[group1]="FOUR_LEVEL"; - - // Slightly improvised from http://homepage.mac.com/thgewecke/kblayout.jpg - key { [ section, plusminus, section, plusminus ] }; - key { [ grave, asciitilde, dead_grave, dead_horn ] }; - key { [ 1, exclam, exclamdown, U2044 ] }; - key { [ 2, at, trademark, EuroSign ] }; - key { [ 3, numbersign, sterling, U2039 ] }; - key { [ 4, dollar, cent, U203A ] }; - key { [ 5, percent, infinity, UFB01 ] }; - key { [ 6,asciicircum, section, UFB02 ] }; - key { [ 7, ampersand, paragraph, doubledagger ] }; - key { [ 8, asterisk, enfilledcircbullet, degree ] }; - key { [ 9, parenleft, ordfeminine, periodcentered ] }; - key { [ 0, parenright, masculine,singlelowquotemark] }; - key { [ minus, underscore, endash, emdash ] }; - key { [ equal, plus, notequal, plusminus ] }; - - key { [ q, Q, oe, OE ] }; - key { [ w, W, U2211,doublelowquotemark] }; - key { [ e, E, dead_acute, acute ] }; - key { [ r, R, registered, U2030 ] }; - key { [ t, T, dagger, dead_caron ] }; - key { [ y, Y, yen, onequarter ] }; - key { [ u, U, dead_diaeresis, diaeresis ] }; - key { [ i, I, dead_circumflex, U02C6 ] }; - key { [ o, O, oslash, Ooblique ] }; - key { [ p, P, Greek_pi, U220F ] }; - key { [ bracketleft, braceleft, leftdoublequotemark, rightdoublequotemark ] }; - key { [bracketright, braceright, leftsinglequotemark, rightsinglequotemark ] }; - key { [ backslash, bar, guillemotleft, guillemotright ] }; - - key { [ a, A, aring, Aring ] }; - key { [ s, S, ssharp, dead_stroke ] }; - key { [ d, D, partialderivative, eth ] }; - key { [ f, F, function, dead_hook ] }; - key { [ g, G, copyright, dead_doubleacute ] }; - key { [ h, H, dead_abovedot, dead_belowdot ] }; - key { [ j, J, U2206, onehalf ] }; - key { [ k, K,dead_abovering, UF8FF ] }; - - key { [ l, L, notsign, THORN ] }; - key { [ semicolon, colon, U2026, thorn ] }; - key { [apostrophe, quotedbl, ae, AE ] }; - - key { [ z, Z, Greek_OMEGA, dead_cedilla ] }; - key { [ x, X, U2248, dead_ogonek ] }; - // unclear whether "approxeq" is 2248 or 2245 - key { [ c, C, ccedilla, Ccedilla ] }; - key { [ v, V, squareroot, U25CA ] }; - key { [ b, B, integral, idotless ] }; - key { [ n, N, dead_tilde, U02DC ] }; - key { [ m, M, mu, threequarters ] }; - key { [ comma, less, lessthanequal, dead_macron ] }; - key { [ period, greater, greaterthanequal, dead_breve ] }; - key { [ slash, question, division, questiondown ] }; - - include "level3(ralt_switch)" -}; - -// Colemak symbols for xkb on X.Org Server 7.x -// 2006-01-01 Shai Coleman, http://colemak.com/ . Public domain. - -partial alphanumeric_keys -xkb_symbols "colemak" { - include "us" - name[Group1]= "USA - Colemak"; - - // Alphanumeric section - key { [ grave, asciitilde, dead_tilde, asciitilde ] }; - key { [ 1, exclam, exclamdown, onesuperior ] }; - key { [ 2, at, masculine, twosuperior ] }; - key { [ 3, numbersign, ordfeminine, threesuperior ] }; - key { [ 4, dollar, cent, sterling ] }; - key { [ 5, percent, EuroSign, yen ] }; - key { [ 6, asciicircum, hstroke, Hstroke ] }; - key { [ 7, ampersand, eth, ETH ] }; - key { [ 8, asterisk, thorn, THORN ] }; - key { [ 9, parenleft, leftsinglequotemark, leftdoublequotemark ] }; - key { [ 0, parenright, rightsinglequotemark, rightdoublequotemark ] }; - key { [ minus, underscore, endash, emdash ] }; - key { [ equal, plus, multiply, division ] }; - - key { [ q, Q, adiaeresis, Adiaeresis ] }; - key { [ w, W, aring, Aring ] }; - key { [ f, F, atilde, Atilde ] }; - key { [ p, P, oslash, Ooblique ] }; - key { [ g, G, dead_ogonek, asciitilde ] }; - key { [ j, J, dstroke, Dstroke ] }; - key { [ l, L, lstroke, Lstroke ] }; - key { [ u, U, uacute, Uacute ] }; - key { [ y, Y, udiaeresis, Udiaeresis ] }; - key { [ semicolon, colon, odiaeresis, Odiaeresis ] }; - key { [ bracketleft, braceleft, guillemotleft, 0x1002039 ] }; - key { [ bracketright, braceright, guillemotright, 0x100203a ] }; - key { [ backslash, bar, asciitilde, asciitilde ] }; - - key { [ a, A, aacute, Aacute ] }; - key { [ r, R, dead_grave, asciitilde ] }; - key { [ s, S, ssharp, asciitilde ] }; - key { [ t, T, dead_acute, dead_doubleacute ] }; - key { [ d, D, dead_diaeresis, asciitilde ] }; - key { [ h, H, dead_caron, asciitilde ] }; - key { [ n, N, ntilde, Ntilde ] }; - key { [ e, E, eacute, Eacute ] }; - key { [ i, I, iacute, Iacute ] }; - key { [ o, O, oacute, Oacute ] }; - key { [ apostrophe, quotedbl, otilde, Otilde ] }; - - key { [ z, Z, ae, AE ] }; - key { [ x, X, dead_circumflex, asciitilde ] }; - key { [ c, C, ccedilla, Ccedilla ] }; - key { [ v, V, oe, OE ] }; - key { [ b, B, dead_breve, asciitilde ] }; - key { [ k, K, dead_abovering, asciitilde ] }; - key { [ m, M, dead_macron, asciitilde ] }; - key { [ comma, less, dead_cedilla, asciitilde ] }; - key { [ period, greater, dead_abovedot, asciitilde ] }; - key { [ slash, question, questiondown, asciitilde ] }; - - key { [ BackSpace, BackSpace, BackSpace, BackSpace ] }; - key { [ minus, underscore, endash, emdash ] }; - key { [ space, space, space, nobreakspace ] }; - - include "level3(ralt_switch)" -}; - -// I do NOT like dead-keys - the International keyboard as defined by Microsoft -// doesn't fit my needs. Why use two keystrokes for all simple characters (eg ' -// and generates a single ') just to have an é (eacute) in two strokes -// as well? I type ' more often than é (eacute). -// -// This file works just like a regular keyboard, BUT has all dead-keys -// accessible at level3 (through AltGr). An ë (ediaeresis) is now: AltGr+" -// followed by an e. In other words, this keyboard is not international as long -// as you leave the right Alt key alone. -// -// The original MS International keyboard was intended for Latin1 (iso8859-1). -// With the introduction of iso8859-15, the (important) ligature oe (and OE) -// became available. I added them next to ae. Because I write ediaeresis more -// often than registered, I moved registered to be next to copyright and added -// ediaeresis and idiaeresis. - Adriaan - -partial alphanumeric_keys -xkb_symbols "altgr-intl" { - - name[Group1]= "USA - International (AltGr dead keys)"; - - include "us(intl)" - -// five dead keys moved into level3: - - key { [ grave, asciitilde, dead_grave, dead_tilde ] }; - key { [apostrophe,quotedbl, dead_acute, dead_diaeresis ] }; - -// diversions from the MS Intl keyboard: - - key { [ 1, exclam, onesuperior, exclamdown ] }; - key { [ r, R, ediaeresis, Ediaeresis ] }; - key { [ j, J, idiaeresis, Idiaeresis ] }; - key { [ x, X, oe, OE ] }; - key { [ v, V, registered, registered ] }; - -// onequarter etc (not in iso8859-15) moved to get three unshifted deadkeys: - - key { [ 6, asciicircum, dead_circumflex, onequarter ] }; - key { [ 7, ampersand, dead_horn, onehalf ] }; - key { [ 8, asterisk, dead_ogonek, threequarters ] }; - - include "level3(ralt_switch)" -}; - -// Intel ClassmatePC Keyboard Layout -// by Piter PUNK -// -// The keyboard layouts below maps the us(basic), us(intl) and us(alt-intl) -// to ClassmatePC keyboard. All layouts uses RCTL as level3(switch) since -// the keyboard doesn't have AltGr key. The EuroSign is engraved at 5 key. - -// classmate - us(basic) -partial alphanumeric_keys -xkb_symbols "classmate" { - include "us(basic)" - name[Group1]= "USA - ClassmatePC"; - - key { [ backslash, bar, backslash, bar ] }; - - include "eurosign(5)" - include "level3(switch)" -}; - -// classmate-intl - us(intl) -// RCTL is generated by Fn+Alt, because that, when trying to access -// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got -// the keypad keycodes. The keypad is changed to make Fn+Alt+ -// generate the same symbol as the original key. -partial alphanumeric_keys -xkb_symbols "classmate-intl" { - include "us(intl)" - name[Group1]= "USA - ClassmatePC (International)"; - key.type[Group1]="FOUR_LEVEL"; - - key { [ backslash, bar, backslash, bar ] }; - - key { [ KP_Home, KP_7, - onehalf, dead_horn ] }; - key { [ KP_Up, KP_8, - threequarters, dead_ogonek ] }; - key { [ KP_Prior, KP_9, - leftsinglequotemark, dead_breve ] }; - key { [ KP_Multiply, KP_Multiply, - rightsinglequotemark, dead_abovering ] }; - - key { [ KP_Left, KP_4, - uacute, Uacute ] }; - key { [ KP_Begin, KP_5, - iacute, Iacute ] }; - key { [ KP_Right, KP_6, - oacute, Oacute ] }; - key { [ KP_Subtract, KP_Subtract, - odiaeresis, Odiaeresis ] }; - - key { [ KP_Down, KP_2, - oe, OE ] }; - key { [ KP_Next, KP_3, - oslash, Ooblique ] }; - key { [ KP_Add, KP_Add, - paragraph, degree ] }; - - key { [ KP_Insert, KP_0, - mu, mu ] }; - key { [ KP_Delete, KP_Decimal, - dead_abovedot, dead_caron ] }; - key { [ KP_Divide, KP_Divide, - questiondown, dead_hook ] }; - - include "level3(switch)" -}; - -// classmate-alt-intl - us(alt-intl) -// RCTL is generated by Fn+Alt, because that, when trying to access -// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got -// the keypad keycodes. The keypad is changed to make Fn+Alt+ -// generate the same symbol as the original key. -partial alphanumeric_keys -xkb_symbols "classmate-alt-intl" { - include "us(alt-intl)" - name[Group1]= "USA - ClassmatePC (Alternative international)"; - key.type[Group1]="FOUR_LEVEL"; - - key { [ backslash, bar, backslash, bar ] }; - - key { [ KP_Subtract, KP_Subtract ] }; - - key { [ KP_Prior, KP_9, - leftsinglequotemark, dead_breve ] }; - key { [ KP_Multiply, KP_Multiply, - rightsinglequotemark, dead_abovering ] }; - - key { [ KP_Add, KP_Add, - dead_ogonek, dead_diaeresis ] }; - - key { [ KP_Delete, KP_Decimal, - dead_abovedot, dead_circumflex ] }; - key { [ KP_Divide, KP_Divide, - dead_hook, dead_hook ] }; - - include "level3(switch)" -}; - -// classmate-altgr-intl - us(altgr-intl) -// RCTL is generated by Fn+Alt, because that, when trying to access -// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got -// the keypad keycodes. The keypad is changed to make Fn+Alt+ -// generate the same symbol as the original key. -partial alphanumeric_keys -xkb_symbols "classmate-altgr-intl" { - include "us(altgr-intl)" - name[Group1]= "USA - ClassmatePC (International Fn+Alt dead-keys)"; - key.type[Group1]="FOUR_LEVEL"; - - key { [ backslash, bar, backslash, bar ] }; - - key { [ KP_Home, KP_7, - dead_horn, dead_horn ] }; - key { [ KP_Up, KP_8, - dead_ogonek, dead_ogonek ] }; - key { [ KP_Prior, KP_9, - leftsinglequotemark, dead_breve ] }; - key { [ KP_Multiply, KP_Multiply, - rightsinglequotemark, dead_abovering ] }; - - key { [ KP_Left, KP_4, - uacute, Uacute ] }; - key { [ KP_Begin, KP_5, - iacute, Iacute ] }; - key { [ KP_Right, KP_6, - oacute, Oacute ] }; - key { [ KP_Subtract, KP_Subtract, - odiaeresis, Odiaeresis ] }; - - key { [ KP_End, KP_1, - idiaeresis, Idiaeresis ] }; - key { [ KP_Down, KP_2, - oe, OE ] }; - key { [ KP_Next, KP_3, - oslash, Ooblique ] }; - key { [ KP_Add, KP_Add, - paragraph, degree ] }; - - key { [ KP_Insert, KP_0, - mu, mu ] }; - key { [ KP_Delete, KP_Decimal, - dead_abovedot, dead_caron ] }; - key { [ KP_Divide, KP_Divide, - questiondown, dead_hook ] }; - - include "level3(switch)" -}; - -partial alphanumeric_keys -xkb_symbols "olpc" { - - include "us(basic)" - name[Group1]= "USA"; - - // OLPC international US English keyboard layout. - // It's a little different from the usual international layout. - // See: http://wiki.laptop.org/go/Image:Keyboard_english.png - - key { [ grave, asciitilde, dead_grave, dead_tilde ] }; - key { [ 1, exclam, exclamdown, exclamdown ] }; - key { [ 2, at, notsign, notsign ] }; - key { [ 3, numbersign, 0x1000300, 0x1000300 ] }; // combining grave - key { [ 4, dollar, 0x1000301, 0x1000301 ] }; // combining acute - key { [ 5, percent, 0x1000306, 0x1000306 ] }; // combining breve above - key { [ 6,asciicircum, 0x100030A, 0x100030A ] }; // combining ring above - key { [ 7, ampersand, 0x1000302, 0x1000302 ] }; // combining circumflex above - key { [ 8, asterisk, 0x100030C, 0x100030C ] }; // combining caron above - key { [ 9, parenleft, 0x1000307, 0x1000307 ] }; // combining dot above - key { [ 0, parenright, 0x1000308, 0x1000308 ] }; // combining diaeresis above - key { [ minus, underscore, 0x1000304, 0x1000304 ] }; // combining macron above - key { [ equal, plus, 0x1000303, 0x1000303 ] }; // combining tilde above - - key { [ q, Q, Greek_omega, Greek_OMEGA ] }; - key { [ w, W, oslash, Oslash ] }; - key { [ e, E, oe, OE ] }; - key { [ r, R, 0x1000327, 0x1000327 ] }; // combining cedilla - key { [ t, T, 0x100032E, 0x100032E ] }; // combining breve below - key { [ y, Y, 0x1000325, 0x1000325 ] }; // combining ring below - key { [ u, U, 0x100032D, 0x100032D ] }; // combining circumflex below - key { [ i, I, 0x100032C, 0x100032C ] }; // combining caron below - key { [ o, O, 0x1000323, 0x1000323 ] }; // combining dot below - key { [ p, P, 0x1000324, 0x1000324 ] }; // combining diaeresis below - key { [ bracketleft, braceleft, 0x1000331, 0x1000331 ] }; // combining macron below - key { [bracketright, braceright, 0x1000330, 0x1000330 ] }; // combining tilde below - - key { [ a, A, ae, AE ] }; - key { [ s, S, ssharp, 0x1001E9C ] }; // uppercase S sharp - key { [ d, D, eth, ETH ] }; - key { [ f, F, thorn, THORN ] }; - key { [ h, H, sterling, sterling ] }; - key { [ j, J, EuroSign, EuroSign ] }; - key { [ semicolon, colon, masculine, ordfeminine ] }; - key { [ apostrophe, quotedbl, currency, currency ] }; - key { [ backslash, bar, section, section ] }; - - key { [ c, C, ccedilla, Ccedilla ] }; - key { [ n, N, ntilde, Ntilde ] }; - key { [ m, M, mu, mu ] }; - key { [ comma, less, guillemotleft, guillemotleft ] }; - key { [ period, greater, guillemotright, guillemotright ] }; - key { [ slash, question, questiondown, questiondown ] }; - - key { [ multiply, division, ISO_Next_Group, ISO_Prev_Group ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "olpc2" { - include "us(olpc)" - name[Group1]= "USA - Group toggle on multiply/divide key"; - include "group(olpc)" -}; - -// Based on Cherokee Nation Official Layout -// http://www.cherokee.org/extras/downloads/font/Keyboard.htm - -partial alphanumeric_keys modifier_keys -xkb_symbols "chr" { - - name[Group1]= "USA - Cherokee"; - key.type[group1]="ALPHABETIC"; - - // Alphanumeric section - key { [ grave, U13CA ] }; - key { [ 1, U13B1 ] }; - key { [ 2, U13C7 ] }; - key { [ 3, U13E7 ] }; - key { [ U13D9, U13B0 ] }; - key { [ U13E6, U13B9 ] }; - key { [ U13DC, U13DD ] }; - key { [ U13CB, U13E1 ] }; - key { [ U13D6, U13BA ] }; - key { [ U13D2, parenleft ] }; - key { [ U13C4, parenright ] }; - key { [ U13BF, U13BC ] }; - key { [ U13F3, U13BD ] }; - - key { [ U13AA, U13C6 ] }; - key { [ U13B3, U13EB ] }; - key { [ U13A1, U13E3 ] }; - key { [ U13DB, U13CF ] }; - key { [ U13D4, U13D8 ] }; - key { [ U13EF, U13F2 ] }; - key { [ U13A4, U13AD ] }; - key { [ U13A2, U13F1 ] }; - key { [ U13A3, U13EC ] }; - key { [ U13C1, U13EA ] }; - key { [ U13D5, U13D1 ] }; - key { [ U13B6, U13E4 ] }; - key { [ U13E9, U13EE ] }; - - key { [ U13A0, U13CC ] }; - key { [ U13CD, U13CE ] }; - key { [ U13D7, U13D0 ] }; - key { [ U13A9, U13C8 ] }; - key { [ U13A6, U13E5 ] }; - key { [ U13AF, U13B2 ] }; - key { [ U13DA, U13AB ] }; - key { [ U13B8, U13A7 ] }; - key { [ U13B5, U13AE ] }; - key { [ U13E8, U13E0 ] }; - key { [ apostrophe, quotedbl ] }; - - key { [ U13AC, U13C3 ] }; - key { [ U13F4, U13ED ] }; - key { [ U13D3, U13DF ] }; - key { [ U13A5, U13DE ] }; - key { [ U13A8, U13F0 ] }; - key { [ U13BE, U13BB ] }; - key { [ U13C5, U13B7 ] }; - key { [ comma, U13E2 ] }; - key { [ period, U13B4 ] }; - key { [ U13C2, U13C9 ] }; - - // End alphanumeric section -}; - -// Serbian charecters added as third level symbols to US keyboard layout. - -partial alphanumeric_keys -xkb_symbols "srp" { - - name[Group1]= "USA - Serbian"; - - include "us" - - key { [ grave, asciitilde ] }; - key { [ 6, dead_caron, asciicircum, asciicircum ] }; - key { [ l, L, U1C9, U1C8 ] }; - key { [ n, N, U1CC, U1CB ] }; - key { [ z, Z, U1C6, U1C5 ] }; - key { [ e, E, EuroSign, cent ] }; - key { [ d, D, dstroke, Dstroke ] }; - key { [ dead_acute, quotedbl, apostrophe, U315 ] }; - key { [ space, space, nobreakspace, nobreakspace ] }; - - include "level3(ralt_switch)" -}; +// $XKeyboardConfig$ + +// +// $XdotOrg: xc/programs/xkbcomp/symbols/us,v 1.1.4.3 2004/03/05 13:41:33 eich Exp $ +// $XFree86: xc/programs/xkbcomp/symbols/us,v 1.6 2003/10/31 14:32:05 pascal Exp $ + +default +partial alphanumeric_keys modifier_keys +xkb_symbols "basic" { + + name[Group1]= "USA"; + + // Alphanumeric section + key { [ grave, asciitilde ] }; + key { [ 1, exclam ] }; + key { [ 2, at ] }; + key { [ 3, numbersign ] }; + key { [ 4, dollar ] }; + key { [ 5, percent ] }; + key { [ 6, asciicircum ] }; + key { [ 7, ampersand ] }; + key { [ 8, asterisk ] }; + key { [ 9, parenleft ] }; + key { [ 0, parenright ] }; + key { [ minus, underscore ] }; + key { [ equal, plus ] }; + + key { [ q, Q ] }; + key { [ w, W ] }; + key { [ e, E ] }; + key { [ r, R ] }; + key { [ t, T ] }; + key { [ y, Y ] }; + key { [ u, U ] }; + key { [ i, I ] }; + key { [ o, O ] }; + key { [ p, P ] }; + key { [ bracketleft, braceleft ] }; + key { [ bracketright, braceright ] }; + + key { [ a, A ] }; + key { [ s, S ] }; + key { [ d, D ] }; + key { [ f, F ] }; + key { [ g, G ] }; + key { [ h, H ] }; + key { [ j, J ] }; + key { [ k, K ] }; + key { [ l, L ] }; + key { [ semicolon, colon ] }; + key { [ apostrophe, quotedbl ] }; + + key { [ z, Z ] }; + key { [ x, X ] }; + key { [ c, C ] }; + key { [ v, V ] }; + key { [ b, B ] }; + key { [ n, N ] }; + key { [ m, M ] }; + key { [ comma, less ] }; + key { [ period, greater ] }; + key { [ slash, question ] }; + + key { [ backslash, bar ] }; + // End alphanumeric section +}; + +partial alphanumeric_keys +xkb_symbols "euro" { + + name[Group1]= "USA - With EuroSign on 5"; + + include "us(basic)" + + include "eurosign(5)" + + include "level3(ralt_switch)" +}; + + +partial alphanumeric_keys +xkb_symbols "intl" { + + name[Group1]= "USA - International (with dead keys)"; + + include "us(basic)" + + // Alphanumeric section + key { [dead_grave, dead_tilde, grave, asciitilde ] }; + key { [ 1, exclam, exclamdown, onesuperior ] }; + key { [ 2, at, twosuperior, dead_doubleacute ] }; + key { [ 3, numbersign, threesuperior, dead_macron ] }; + key { [ 4, dollar, currency, sterling ] }; + key { [ 5, percent, EuroSign, dead_cedilla ] }; + key { [ 6, dead_circumflex, onequarter, asciicircum ] }; + key { [ 7, ampersand, onehalf, dead_horn ] }; + key { [ 8, asterisk, threequarters, dead_ogonek ] }; + key { [ 9, parenleft, leftsinglequotemark, dead_breve ] }; + key { [ 0, parenright, rightsinglequotemark, dead_abovering ] }; + key { [ minus, underscore, yen, dead_belowdot ] }; + key { [ equal, plus, multiply, division ] }; + + key { [ q, Q, adiaeresis, Adiaeresis ] }; + key { [ w, W, aring, Aring ] }; + key { [ e, E, eacute, Eacute ] }; + key { [ r, R, registered, registered ] }; + key { [ t, T, thorn, THORN ] }; + key { [ y, Y, udiaeresis, Udiaeresis ] }; + key { [ u, U, uacute, Uacute ] }; + key { [ i, I, iacute, Iacute ] }; + key { [ o, O, oacute, Oacute ] }; + key { [ p, P, odiaeresis, Odiaeresis ] }; + key { [ bracketleft, braceleft, guillemotleft, leftdoublequotemark ] }; + key { [bracketright, braceright, guillemotright, rightdoublequotemark ] }; + + key { [ a, A, aacute, Aacute ] }; + key { [ s, S, ssharp, section ] }; + key { [ d, D, eth, ETH ] }; + key { [ f, F, f, F ] }; + key { [ g, G, g, G ] }; + key { [ h, H, h, H ] }; + key { [ j, J, j, J ] }; + key { [ k, K, oe, OE ] }; + + key { [ l, L, oslash, Ooblique ] }; + key { [ semicolon, colon, paragraph, degree ] }; + key { [dead_acute, dead_diaeresis, apostrophe, quotedbl ] }; + + key { [ z, Z, ae, AE ] }; + key { [ x, X, x, X ] }; + key { [ c, C, copyright, cent ] }; + key { [ v, V, v, V ] }; + key { [ b, B, b, B ] }; + key { [ n, N, ntilde, Ntilde ] }; + key { [ m, M, mu, mu ] }; + key { [ comma, less, ccedilla, Ccedilla ] }; + key { [ period, greater, dead_abovedot, dead_caron ] }; + key { [ slash, question, questiondown, dead_hook ] }; + key { [ backslash, bar, notsign, brokenbar ] }; + + include "level3(ralt_switch)" +}; + +// Based on symbols/us_intl keyboard map: +// Dead-keys definition for a very simple US/ASCII layout. +// by Conectiva (http://www.conectiva.com.br) +// modified by Ricardo Y. Igarashi (iga@that.com.br) + +// Added the following deadkeys, to make it truly international: +// +// dead_macron: on AltGr-minus +// dead_breve: on AltGr-parenleft +// dead_abovedot: on AltGr-period +// dead_abovering: on AltGr-0 +// dead_doubleacute: on AltGr-equal (as quotedbl is already used) +// dead_caron: on AltGr-less (AltGr-shift-comma) +// dead_cedilla: on AltGr-comma +// dead_ogonek: on AltGr-semicolon +// dead_belowdot: on AltGr-underscore (AltGr-shift-minus) +// dead_hook: on AltGr-question +// dead_horn: on AltGr-plus (AltGr-shift-equal) +// dead_diaeresis: on AltGr-colon (Alt-shift-semicolon) +// +// those were already there: +// dead_grave +// dead_acute +// dead_circumflex +// dead_tilde +// dead_diaeresis + +partial alphanumeric_keys +xkb_symbols "alt-intl" { + + name[Group1]= "USA - Alternative international"; + + include "us" + + key { [ dead_grave, dead_tilde, grave, asciitilde ] }; + key { [ 5, percent, EuroSign ] }; + key { [ 6, dead_circumflex, asciicircum, asciicircum ] }; + key { [ 9, parenleft, leftsinglequotemark, dead_breve ] }; + key { [ 0, parenright, rightsinglequotemark, dead_abovering ] }; + key { [ minus, underscore, dead_macron, dead_belowdot ] }; + key { [ equal, plus, dead_doubleacute, dead_horn ] }; + + key { [ e, E, EuroSign, cent ] }; + + key { [ semicolon, colon, dead_ogonek, dead_diaeresis ] }; + key { [ dead_acute, dead_diaeresis, apostrophe, quotedbl ] }; + + key { [ comma, less, dead_cedilla, dead_caron ] }; + key { [ period, greater, dead_abovedot, dead_circumflex ] }; + key { [ slash, question, dead_hook, dead_hook ] }; + + include "level3(ralt_switch)" +}; + +// based on a keyboard map from an 'xkb/symbols/dk' file +// +// $XFree86: xc/programs/xkbcomp/symbols/dvorak,v 1.5 2004/01/03 16:35:07 herrb Exp $ + +partial alphanumeric_keys +xkb_symbols "dvorak" { + + name[Group1]= "USA - Dvorak"; + + // Alphanumeric section + + key { [ grave, asciitilde, dead_grave, dead_tilde ] }; + + key { [ 1, exclam ] }; + key { [ 2, at ] }; + key { [ 3, numbersign ] }; + key { [ 4, dollar ] }; + key { [ 5, percent ] }; + key { [ 6, asciicircum, dead_circumflex, dead_circumflex ] }; + key { [ 7, ampersand ] }; + key { [ 8, asterisk ] }; + key { [ 9, parenleft, dead_grave] }; + key { [ 0, parenright ] }; + key { [ bracketleft, braceleft ] }; + key { [ bracketright, braceright, dead_tilde] }; + + key { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] }; + key { [ comma, less, dead_cedilla, dead_caron ] }; + key { [ period, greater, dead_abovedot, periodcentered ] }; + key { [ p, P ] }; + key { [ y, Y ] }; + key { [ f, F ] }; + key { [ g, G ] }; + key { [ c, C ] }; + key { [ r, R ] }; + key { [ l, L ] }; + key { [ slash, question ] }; + key { [ equal, plus ] }; + + key { [ a, A ] }; + key { [ o, O ] }; + key { [ e, E ] }; + key { [ u, U ] }; + key { [ i, I ] }; + key { [ d, D ] }; + key { [ h, H ] }; + key { [ t, T ] }; + key { [ n, N ] }; + key { [ s, S ] }; + key { [ minus, underscore ] }; + + key { [ semicolon, colon, dead_ogonek, dead_doubleacute ] }; + key { [ q, Q ] }; + key { [ j, J ] }; + key { [ k, K ] }; + key { [ x, X ] }; + key { [ b, B ] }; + key { [ m, M ] }; + key { [ w, W ] }; + key { [ v, V ] }; + key { [ z, Z ] }; + + key { [ backslash, bar ] }; +}; + +// Dvorak international with dead keys +// Olivier Mehani (shtrom-xorg@ssji.net) +// Reproduce the per-key mapping of us(intl) for the dvorak layout +// aka "I just swapped my keys over" +partial alphanumeric_keys +xkb_symbols "dvorak-intl" { + + name[Group1]= "USA - Dvorak international (with dead keys)"; + + include "us(dvorak)" + + key { [dead_grave, dead_tilde, grave, asciitilde ] }; + + key { [ 1, exclam, exclamdown, onesuperior ] }; + key { [ 2, at, twosuperior, dead_doubleacute ] }; + key { [ 3, numbersign, threesuperior, dead_macron ] }; + key { [ 4, dollar, currency, sterling ] }; + key { [ 5, percent, EuroSign, dead_cedilla ] }; + key { [ 6, dead_circumflex, onequarter, asciicircum ] }; + key { [ 7, ampersand, onehalf, dead_horn ] }; + key { [ 8, asterisk, threequarters, dead_ogonek ] }; + key { [ 9, parenleft, leftsinglequotemark, dead_breve ] }; + key { [ 0, parenright, rightsinglequotemark, dead_abovering ] }; + key { [ bracketleft, braceleft, guillemotleft, leftdoublequotemark ] }; + key { [bracketright, braceright, guillemotright, rightdoublequotemark ] }; + + key { [dead_acute, dead_diaeresis, apostrophe, quotedbl ] }; + key { [ comma, less, ccedilla, Ccedilla ] }; + key { [ period, greater, dead_abovedot, dead_caron ] }; + key { [ p, P, odiaeresis, Odiaeresis ] }; + key { [ y, Y, udiaeresis, Udiaeresis ] }; + // key { [ f, F ] }; + // key { [ g, G ] }; + key { [ c, C, copyright, cent ] }; + key { [ r, R, registered, registered ] }; + key { [ l, L, oslash, Ooblique ] }; + key { [ slash, question, questiondown, dead_hook ] }; + // key { [ equal, plus, multiply, division ] }; + + key { [ a, A, aacute, Aacute ] }; + key { [ o, O, oacute, Oacute ] }; + key { [ e, E, eacute, Eacute ] }; + key { [ u, U, uacute, Uacute ] }; + key { [ i, I, iacute, Iacute ] }; + key { [ d, D, eth, ETH ] }; + // key { [ h, H ] }; + key { [ t, T, thorn, THORN ] }; + key { [ n, N, ntilde, Ntilde ] }; + key { [ s, S, ssharp, section ] }; + // key { [ minus, underscore, yen, dead_belowdot ] }; + + key { [ semicolon, colon, paragraph, degree ] }; + key { [ q, Q, adiaeresis, Adiaeresis ] }; + // key { [ j, J ] }; + key { [ k, K, oe, OE ] }; + // key { [ x, X ] }; + // key { [ b, B ] }; + key { [ m, M, mu, mu ] }; + key { [ w, W, aring, Aring ] }; + // key { [ v, V ] }; + key { [ z, Z, ae, AE ] }; + + key { [ backslash, bar, notsign, brokenbar ] }; + + include "level3(ralt_switch)" +}; + +// Dvorak international without dead keys +// Stephane Magnenat (stephane at magnenat dot net, http://stephane.magnenat.net) +// Based on information from http://www.poupinou.org/dvorak/index.html +// +// ` 1 2 3 4 5 6 7 8 9 0 [ ] \ +// € +// +// ' , . p y f g c r l / = +// ä ê ë ü ç +// +// a o e u i d h t n s - +// à ô é û î ß +// +// ; q j k x b m w v z +// â ö è ù ï + +partial alphanumeric_keys +xkb_symbols "dvorak-alt-intl" { + + name[Group1]= "USA - Dvorak alternative international (no dead keys)"; + + include "us(dvorak)" + + key { [ 4, dollar, EuroSign ] }; + + key { [ comma, less, adiaeresis, dead_caron ] }; + key { [ period, greater, ecircumflex, periodcentered ] }; + key { [ p, P, ediaeresis, dead_cedilla ] }; + key { [ y, Y, udiaeresis ] }; + key { [ c, C, ccedilla, dead_abovedot ] }; + + key { [ a, A, agrave ] }; + key { [ o, O, ocircumflex ] }; + key { [ e, E, eacute ] }; + key { [ u, U, ucircumflex ] }; + key { [ i, I, icircumflex ] }; + key { [ s, S, ssharp ] }; + + key { [ semicolon, colon, acircumflex ] }; + key { [ q, Q, odiaeresis, dead_ogonek ] }; + key { [ j, J, egrave, dead_doubleacute ] }; + key { [ k, K, ugrave ] }; + key { [ x, X, idiaeresis ] }; + + include "level3(ralt_switch)" +}; + +// Left and right handed dvorak layouts +// by sqweek 2006-01-30 +// Based on the corresponding layouts in the console-tools package. +partial alphanumeric_keys +xkb_symbols "dvorak-l" { + + include "us(dvorak)" + name[Group1]= "USA - Left handed Dvorak"; + + key { [ bracketleft, braceleft ] }; + key { [ bracketright, braceright ] }; + key { [ slash, question ] }; + key { [ p, P ] }; + key { [ f, F ] }; + key { [ m, M ] }; + key { [ l, L ] }; + key { [ j, J ] }; + key { [ 4, dollar ] }; + key { [ 3, numbersign ] }; + key { [ 2, at ] }; + key { [ 1, exclam ] }; + + key { [ semicolon, colon ] }; + key { [ q, Q ] }; + key { [ b, B ] }; + key { [ y, Y ] }; + key { [ u, U ] }; + key { [ r, R ] }; + key { [ s, S ] }; + key { [ o, O ] }; + key { [ period, greater ] }; + key { [ 6, asciicircum ] }; + key { [ 5, percent ] }; + key { [ equal, plus ] }; + + key { [ minus, underscore ] }; + key { [ k, K ] }; + key { [ c, C ] }; + key { [ d, D ] }; + key { [ t, T ] }; + key { [ h, H ] }; + key { [ e, E ] }; + key { [ a, A ] }; + key { [ z, Z ] }; + key { [ 8, asterisk ] }; + key { [ 7, ampersand ] }; + + key { [ apostrophe, quotedbl ] }; + key { [ x, X ] }; + key { [ g, G ] }; + key { [ v, V ] }; + key { [ w, W ] }; + key { [ n, N ] }; + key { [ i, I ] }; + key { [ comma, less ] }; + key { [ 0, parenright ] }; + key { [ 9, parenleft ] }; +}; + +partial alphanumeric_keys +xkb_symbols "dvorak-r" { + + include "us(dvorak)" + name[Group1]= "USA - Right handed Dvorak"; + + key { [ 1, exclam ] }; + key { [ 2, at ] }; + key { [ 3, numbersign ] }; + key { [ 4, dollar ] }; + key { [ j, J ] }; + key { [ l, L ] }; + key { [ m, M ] }; + key { [ f, F ] }; + key { [ p, P ] }; + key { [ slash, question ] }; + key { [ bracketleft, braceleft ] }; + key { [ bracketright, braceright ] }; + + key { [ 5, percent ] }; + key { [ 6, asciicircum ] }; + key { [ q, Q ] }; + key { [ period, greater ] }; + key { [ o, O ] }; + key { [ r, R ] }; + key { [ s, S ] }; + key { [ u, U ] }; + key { [ y, Y ] }; + key { [ b, B ] }; + key { [ semicolon, colon ] }; + key { [ equal, plus ] }; + + key { [ 7, ampersand ] }; + key { [ 8, asterisk ] }; + key { [ z, Z ] }; + key { [ a, A ] }; + key { [ e, E ] }; + key { [ h, H ] }; + key { [ t, T ] }; + key { [ d, D ] }; + key { [ c, C ] }; + key { [ k, K ] }; + key { [ minus, underscore ] }; + + key { [ 9, parenleft ] }; + key { [ 0, parenright ] }; + key { [ x, X ] }; + key { [ comma, less ] }; + key { [ i, I ] }; + key { [ n, N ] }; + key { [ w, W ] }; + key { [ v, V ] }; + key { [ g, G ] }; + key { [ apostrophe, quotedbl ] }; +}; + +// Classic dvorak layout +// by Piter Punk - 2006-07-06 +// Based on dvorak layout and e-mail from Russel L. Harris rlharris@oplink.net +// on xorg list. +partial alphanumeric_keys +xkb_symbols "dvorak-classic" { + + name[Group1]= "USA - Classic Dvorak"; + + // Alphanumeric section + + key { [ grave, asciitilde, dead_grave, dead_tilde ] }; + + key { [ bracketleft, braceleft ] }; + key { [ 7, ampersand ] }; + key { [ 5, percent ] }; + key { [ 3, numbersign ] }; + key { [ 1, exclam ] }; + key { [ 9, parenleft, dead_grave] }; + key { [ 0, parenright ] }; + key { [ 2, at ] }; + key { [ 4, dollar ] }; + key { [ 6, asciicircum, dead_circumflex, dead_circumflex ] }; + key { [ 8, asterisk ] }; + key { [ bracketright, braceright, dead_tilde] }; + + key { [ slash, question ] }; + key { [ comma, less, dead_cedilla, dead_caron ] }; + key { [ period, greater, dead_abovedot, periodcentered ] }; + key { [ p, P ] }; + key { [ y, Y ] }; + key { [ f, F ] }; + key { [ g, G ] }; + key { [ c, C ] }; + key { [ r, R ] }; + key { [ l, L ] }; + key { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] }; + key { [ equal, plus ] }; + + key { [ a, A ] }; + key { [ o, O ] }; + key { [ e, E ] }; + key { [ u, U ] }; + key { [ i, I ] }; + key { [ d, D ] }; + key { [ h, H ] }; + key { [ t, T ] }; + key { [ n, N ] }; + key { [ s, S ] }; + key { [ minus, underscore ] }; + + key { [ semicolon, colon, dead_ogonek, dead_doubleacute ] }; + key { [ q, Q ] }; + key { [ j, J ] }; + key { [ k, K ] }; + key { [ x, X ] }; + key { [ b, B ] }; + key { [ m, M ] }; + key { [ w, W ] }; + key { [ v, V ] }; + key { [ z, Z ] }; + key { [ backslash, bar ] }; +}; + +// Programmer Dvorak, by Roland Kaufmann +// License: BSD, available at +// Main features: Numbers are in shift position (like French), symbols have been +// placed in locations that give good hand-alternation and finger rolling with +// symbols that usually follows, accented characters are possible for I18N. +partial alphanumeric_keys +xkb_symbols "dvp" { + include "us(dvorak)" + + name[Group1] = "USA - Programmer Dvorak"; + + // Unmodified Shift AltGr Shift+AltGr + // symbols row, left side + key { [ dollar, asciitilde, dead_tilde ] }; + key { [ ampersand, percent ] }; + key { [ bracketleft, 7, currency ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ braceleft, 5, cent ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ braceright, 3, yen ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ parenleft, 1, EuroSign ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ equal, 9, sterling ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + + // symbols row, right side + key { [ asterisk, 0 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ parenright, 2, onehalf ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ plus, 4 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ bracketright, 6 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ exclam, 8, exclamdown ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ numbersign, grave, dead_grave ] }; + key { [ BackSpace ] }; + + // upper row, left side + key { [ semicolon, colon, dead_diaeresis ] }; + key { [ comma, less, guillemotleft ] }; + key { [ period, greater, guillemotright ] }; + key { [ p, P, paragraph, section ] }; + key { [ y, Y, udiaeresis, Udiaeresis ] }; + + // upper row, right side + key { [ c, C, ccedilla, Ccedilla ] }; + key { [ r, R, registered, trademark ] }; + key { [ slash, question, questiondown ] }; + key { [ at, asciicircum, dead_circumflex, dead_caron ] }; + + // home row, left side + key { [ a, A, aring, Aring ] }; + key { [ o, O, oslash, Ooblique ] }; + key { [ e, E, ae, AE ] }; + key { [ u, U, eacute, Eacute ] }; + + // home row, right side + key { [ d, D, eth, ETH ] }; + key { [ h, H, dead_acute ] }; + key { [ t, T, thorn, THORN ] }; + key { [ n, N, ntilde, Ntilde ] }; + key { [ s, S, ssharp ] }; + key { [ minus, underscore, hyphen ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ backslash, bar ] }; + + // lower row, left side + key { [ apostrophe, quotedbl, dead_acute ] }; +}; + +// phonetic layout for Russian letters on an US keyboard +// by Ivan Popov 2005-07-17 + +// level3 modifier is a shortcut to the "us" meaning of the keys where +// we place cyrillic letters, handy for accessing the corresponding +// punctuation marks. +// It is important to have access to punctuation marks, and the rest of +// alphabetical keys are added for being consequent so that the users +// can expect the level3 modifier to give what the key label shows. + +partial alphanumeric_keys +xkb_symbols "rus" { + + name[Group1]= "USA - Russian phonetic"; + + include "us(basic)" + +key.type[group1]="FOUR_LEVEL_ALPHABETIC"; + + key { [ Cyrillic_a, Cyrillic_A ] }; + key { [ Cyrillic_be, Cyrillic_BE ] }; + key { [ Cyrillic_ve, Cyrillic_VE ] }; + key { [ Cyrillic_ghe, Cyrillic_GHE ] }; + key { [ Cyrillic_de, Cyrillic_DE ] }; + key { [ Cyrillic_ie, Cyrillic_IE ] }; + key { [ Cyrillic_io, Cyrillic_IO, grave, asciitilde ] }; + key { [ Cyrillic_zhe, Cyrillic_ZHE ] }; + key { [ Cyrillic_ze, Cyrillic_ZE ] }; + key { [ Cyrillic_i, Cyrillic_I ] }; + key { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; + key { [ Cyrillic_ka, Cyrillic_KA ] }; + key { [ Cyrillic_el, Cyrillic_EL ] }; + key { [ Cyrillic_em, Cyrillic_EM ] }; + key { [ Cyrillic_en, Cyrillic_EN ] }; + key { [ Cyrillic_o, Cyrillic_O ] }; + key { [ Cyrillic_pe, Cyrillic_PE ] }; + key { [ Cyrillic_er, Cyrillic_ER ] }; + key { [ Cyrillic_es, Cyrillic_ES ] }; + key { [ Cyrillic_te, Cyrillic_TE ] }; + key { [ Cyrillic_u, Cyrillic_U ] }; + key { [ Cyrillic_ef, Cyrillic_EF ] }; + key { [ Cyrillic_ha, Cyrillic_HA ] }; + key { [ Cyrillic_tse, Cyrillic_TSE ] }; + key { [ Cyrillic_che, Cyrillic_CHE, semicolon, colon ] }; + key { [ Cyrillic_sha, Cyrillic_SHA, bracketleft, braceleft] }; + key { [ Cyrillic_shcha, Cyrillic_SHCHA, bracketright, braceright ] }; + key { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, equal, plus ] }; + key { [ Cyrillic_yeru, Cyrillic_YERU ] }; + key { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; + key { [ Cyrillic_e, Cyrillic_E, backslash, bar ] }; + key { [ Cyrillic_yu, Cyrillic_YU, apostrophe, quotedbl ] }; + key { [ Cyrillic_ya, Cyrillic_YA ] }; + + include "level3(ralt_switch)" +}; + +partial alphanumeric_keys +xkb_symbols "mac" { + + include "us(basic)" + name[Group1]= "USA - Macintosh"; + key.type[group1]="FOUR_LEVEL"; + + // Slightly improvised from http://homepage.mac.com/thgewecke/kblayout.jpg + key { [ section, plusminus, section, plusminus ] }; + key { [ grave, asciitilde, dead_grave, dead_horn ] }; + key { [ 1, exclam, exclamdown, U2044 ] }; + key { [ 2, at, trademark, EuroSign ] }; + key { [ 3, numbersign, sterling, U2039 ] }; + key { [ 4, dollar, cent, U203A ] }; + key { [ 5, percent, infinity, UFB01 ] }; + key { [ 6,asciicircum, section, UFB02 ] }; + key { [ 7, ampersand, paragraph, doubledagger ] }; + key { [ 8, asterisk, enfilledcircbullet, degree ] }; + key { [ 9, parenleft, ordfeminine, periodcentered ] }; + key { [ 0, parenright, masculine,singlelowquotemark] }; + key { [ minus, underscore, endash, emdash ] }; + key { [ equal, plus, notequal, plusminus ] }; + + key { [ q, Q, oe, OE ] }; + key { [ w, W, U2211,doublelowquotemark] }; + key { [ e, E, dead_acute, acute ] }; + key { [ r, R, registered, U2030 ] }; + key { [ t, T, dagger, dead_caron ] }; + key { [ y, Y, yen, onequarter ] }; + key { [ u, U, dead_diaeresis, diaeresis ] }; + key { [ i, I, dead_circumflex, U02C6 ] }; + key { [ o, O, oslash, Ooblique ] }; + key { [ p, P, Greek_pi, U220F ] }; + key { [ bracketleft, braceleft, leftdoublequotemark, rightdoublequotemark ] }; + key { [bracketright, braceright, leftsinglequotemark, rightsinglequotemark ] }; + key { [ backslash, bar, guillemotleft, guillemotright ] }; + + key { [ a, A, aring, Aring ] }; + key { [ s, S, ssharp, dead_stroke ] }; + key { [ d, D, partialderivative, eth ] }; + key { [ f, F, function, dead_hook ] }; + key { [ g, G, copyright, dead_doubleacute ] }; + key { [ h, H, dead_abovedot, dead_belowdot ] }; + key { [ j, J, U2206, onehalf ] }; + key { [ k, K,dead_abovering, UF8FF ] }; + + key { [ l, L, notsign, THORN ] }; + key { [ semicolon, colon, U2026, thorn ] }; + key { [apostrophe, quotedbl, ae, AE ] }; + + key { [ z, Z, Greek_OMEGA, dead_cedilla ] }; + key { [ x, X, U2248, dead_ogonek ] }; + // unclear whether "approxeq" is 2248 or 2245 + key { [ c, C, ccedilla, Ccedilla ] }; + key { [ v, V, squareroot, U25CA ] }; + key { [ b, B, integral, idotless ] }; + key { [ n, N, dead_tilde, U02DC ] }; + key { [ m, M, mu, threequarters ] }; + key { [ comma, less, lessthanequal, dead_macron ] }; + key { [ period, greater, greaterthanequal, dead_breve ] }; + key { [ slash, question, division, questiondown ] }; + + include "level3(ralt_switch)" +}; + +// Colemak symbols for xkb on X.Org Server 7.x +// 2006-01-01 Shai Coleman, http://colemak.com/ . Public domain. + +partial alphanumeric_keys +xkb_symbols "colemak" { + include "us" + name[Group1]= "USA - Colemak"; + + // Alphanumeric section + key { [ grave, asciitilde, dead_tilde, asciitilde ] }; + key { [ 1, exclam, exclamdown, onesuperior ] }; + key { [ 2, at, masculine, twosuperior ] }; + key { [ 3, numbersign, ordfeminine, threesuperior ] }; + key { [ 4, dollar, cent, sterling ] }; + key { [ 5, percent, EuroSign, yen ] }; + key { [ 6, asciicircum, hstroke, Hstroke ] }; + key { [ 7, ampersand, eth, ETH ] }; + key { [ 8, asterisk, thorn, THORN ] }; + key { [ 9, parenleft, leftsinglequotemark, leftdoublequotemark ] }; + key { [ 0, parenright, rightsinglequotemark, rightdoublequotemark ] }; + key { [ minus, underscore, endash, emdash ] }; + key { [ equal, plus, multiply, division ] }; + + key { [ q, Q, adiaeresis, Adiaeresis ] }; + key { [ w, W, aring, Aring ] }; + key { [ f, F, atilde, Atilde ] }; + key { [ p, P, oslash, Ooblique ] }; + key { [ g, G, dead_ogonek, asciitilde ] }; + key { [ j, J, dstroke, Dstroke ] }; + key { [ l, L, lstroke, Lstroke ] }; + key { [ u, U, uacute, Uacute ] }; + key { [ y, Y, udiaeresis, Udiaeresis ] }; + key { [ semicolon, colon, odiaeresis, Odiaeresis ] }; + key { [ bracketleft, braceleft, guillemotleft, 0x1002039 ] }; + key { [ bracketright, braceright, guillemotright, 0x100203a ] }; + key { [ backslash, bar, asciitilde, asciitilde ] }; + + key { [ a, A, aacute, Aacute ] }; + key { [ r, R, dead_grave, asciitilde ] }; + key { [ s, S, ssharp, asciitilde ] }; + key { [ t, T, dead_acute, dead_doubleacute ] }; + key { [ d, D, dead_diaeresis, asciitilde ] }; + key { [ h, H, dead_caron, asciitilde ] }; + key { [ n, N, ntilde, Ntilde ] }; + key { [ e, E, eacute, Eacute ] }; + key { [ i, I, iacute, Iacute ] }; + key { [ o, O, oacute, Oacute ] }; + key { [ apostrophe, quotedbl, otilde, Otilde ] }; + + key { [ z, Z, ae, AE ] }; + key { [ x, X, dead_circumflex, asciitilde ] }; + key { [ c, C, ccedilla, Ccedilla ] }; + key { [ v, V, oe, OE ] }; + key { [ b, B, dead_breve, asciitilde ] }; + key { [ k, K, dead_abovering, asciitilde ] }; + key { [ m, M, dead_macron, asciitilde ] }; + key { [ comma, less, dead_cedilla, asciitilde ] }; + key { [ period, greater, dead_abovedot, asciitilde ] }; + key { [ slash, question, questiondown, asciitilde ] }; + + key { [ BackSpace, BackSpace, BackSpace, BackSpace ] }; + key { [ minus, underscore, endash, emdash ] }; + key { [ space, space, space, nobreakspace ] }; + + include "level3(ralt_switch)" +}; + +// I do NOT like dead-keys - the International keyboard as defined by Microsoft +// doesn't fit my needs. Why use two keystrokes for all simple characters (eg ' +// and generates a single ') just to have an é (eacute) in two strokes +// as well? I type ' more often than é (eacute). +// +// This file works just like a regular keyboard, BUT has all dead-keys +// accessible at level3 (through AltGr). An ë (ediaeresis) is now: AltGr+" +// followed by an e. In other words, this keyboard is not international as long +// as you leave the right Alt key alone. +// +// The original MS International keyboard was intended for Latin1 (iso8859-1). +// With the introduction of iso8859-15, the (important) ligature oe (and OE) +// became available. I added them next to ae. Because I write ediaeresis more +// often than registered, I moved registered to be next to copyright and added +// ediaeresis and idiaeresis. - Adriaan + +partial alphanumeric_keys +xkb_symbols "altgr-intl" { + + name[Group1]= "USA - International (AltGr dead keys)"; + + include "us(intl)" + +// five dead keys moved into level3: + + key { [ grave, asciitilde, dead_grave, dead_tilde ] }; + key { [apostrophe,quotedbl, dead_acute, dead_diaeresis ] }; + +// diversions from the MS Intl keyboard: + + key { [ 1, exclam, onesuperior, exclamdown ] }; + key { [ r, R, ediaeresis, Ediaeresis ] }; + key { [ j, J, idiaeresis, Idiaeresis ] }; + key { [ x, X, oe, OE ] }; + key { [ v, V, registered, registered ] }; + +// onequarter etc (not in iso8859-15) moved to get three unshifted deadkeys: + + key { [ 6, asciicircum, dead_circumflex, onequarter ] }; + key { [ 7, ampersand, dead_horn, onehalf ] }; + key { [ 8, asterisk, dead_ogonek, threequarters ] }; + + include "level3(ralt_switch)" +}; + +// Intel ClassmatePC Keyboard Layout +// by Piter PUNK +// +// The keyboard layouts below maps the us(basic), us(intl) and us(alt-intl) +// to ClassmatePC keyboard. All layouts uses RCTL as level3(switch) since +// the keyboard doesn't have AltGr key. The EuroSign is engraved at 5 key. + +// classmate - us(basic) +partial alphanumeric_keys +xkb_symbols "classmate" { + include "us(basic)" + name[Group1]= "USA - ClassmatePC"; + + key { [ backslash, bar, backslash, bar ] }; + + include "eurosign(5)" + include "level3(switch)" +}; + +// classmate-intl - us(intl) +// RCTL is generated by Fn+Alt, because that, when trying to access +// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got +// the keypad keycodes. The keypad is changed to make Fn+Alt+ +// generate the same symbol as the original key. +partial alphanumeric_keys +xkb_symbols "classmate-intl" { + include "us(intl)" + name[Group1]= "USA - ClassmatePC (International)"; + key.type[Group1]="FOUR_LEVEL"; + + key { [ backslash, bar, backslash, bar ] }; + + key { [ KP_Home, KP_7, + onehalf, dead_horn ] }; + key { [ KP_Up, KP_8, + threequarters, dead_ogonek ] }; + key { [ KP_Prior, KP_9, + leftsinglequotemark, dead_breve ] }; + key { [ KP_Multiply, KP_Multiply, + rightsinglequotemark, dead_abovering ] }; + + key { [ KP_Left, KP_4, + uacute, Uacute ] }; + key { [ KP_Begin, KP_5, + iacute, Iacute ] }; + key { [ KP_Right, KP_6, + oacute, Oacute ] }; + key { [ KP_Subtract, KP_Subtract, + odiaeresis, Odiaeresis ] }; + + key { [ KP_Down, KP_2, + oe, OE ] }; + key { [ KP_Next, KP_3, + oslash, Ooblique ] }; + key { [ KP_Add, KP_Add, + paragraph, degree ] }; + + key { [ KP_Insert, KP_0, + mu, mu ] }; + key { [ KP_Delete, KP_Decimal, + dead_abovedot, dead_caron ] }; + key { [ KP_Divide, KP_Divide, + questiondown, dead_hook ] }; + + include "level3(switch)" +}; + +// classmate-alt-intl - us(alt-intl) +// RCTL is generated by Fn+Alt, because that, when trying to access +// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got +// the keypad keycodes. The keypad is changed to make Fn+Alt+ +// generate the same symbol as the original key. +partial alphanumeric_keys +xkb_symbols "classmate-alt-intl" { + include "us(alt-intl)" + name[Group1]= "USA - ClassmatePC (Alternative international)"; + key.type[Group1]="FOUR_LEVEL"; + + key { [ backslash, bar, backslash, bar ] }; + + key { [ KP_Subtract, KP_Subtract ] }; + + key { [ KP_Prior, KP_9, + leftsinglequotemark, dead_breve ] }; + key { [ KP_Multiply, KP_Multiply, + rightsinglequotemark, dead_abovering ] }; + + key { [ KP_Add, KP_Add, + dead_ogonek, dead_diaeresis ] }; + + key { [ KP_Delete, KP_Decimal, + dead_abovedot, dead_circumflex ] }; + key { [ KP_Divide, KP_Divide, + dead_hook, dead_hook ] }; + + include "level3(switch)" +}; + +// classmate-altgr-intl - us(altgr-intl) +// RCTL is generated by Fn+Alt, because that, when trying to access +// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got +// the keypad keycodes. The keypad is changed to make Fn+Alt+ +// generate the same symbol as the original key. +partial alphanumeric_keys +xkb_symbols "classmate-altgr-intl" { + include "us(altgr-intl)" + name[Group1]= "USA - ClassmatePC (International Fn+Alt dead-keys)"; + key.type[Group1]="FOUR_LEVEL"; + + key { [ backslash, bar, backslash, bar ] }; + + key { [ KP_Home, KP_7, + dead_horn, dead_horn ] }; + key { [ KP_Up, KP_8, + dead_ogonek, dead_ogonek ] }; + key { [ KP_Prior, KP_9, + leftsinglequotemark, dead_breve ] }; + key { [ KP_Multiply, KP_Multiply, + rightsinglequotemark, dead_abovering ] }; + + key { [ KP_Left, KP_4, + uacute, Uacute ] }; + key { [ KP_Begin, KP_5, + iacute, Iacute ] }; + key { [ KP_Right, KP_6, + oacute, Oacute ] }; + key { [ KP_Subtract, KP_Subtract, + odiaeresis, Odiaeresis ] }; + + key { [ KP_End, KP_1, + idiaeresis, Idiaeresis ] }; + key { [ KP_Down, KP_2, + oe, OE ] }; + key { [ KP_Next, KP_3, + oslash, Ooblique ] }; + key { [ KP_Add, KP_Add, + paragraph, degree ] }; + + key { [ KP_Insert, KP_0, + mu, mu ] }; + key { [ KP_Delete, KP_Decimal, + dead_abovedot, dead_caron ] }; + key { [ KP_Divide, KP_Divide, + questiondown, dead_hook ] }; + + include "level3(switch)" +}; + +partial alphanumeric_keys +xkb_symbols "olpc" { + + include "us(basic)" + name[Group1]= "USA"; + + // OLPC international US English keyboard layout. + // It's a little different from the usual international layout. + // See: http://wiki.laptop.org/go/Image:Keyboard_english.png + + key { [ grave, asciitilde, dead_grave, dead_tilde ] }; + key { [ 1, exclam, exclamdown, exclamdown ] }; + key { [ 2, at, notsign, notsign ] }; + key { [ 3, numbersign, 0x1000300, 0x1000300 ] }; // combining grave + key { [ 4, dollar, 0x1000301, 0x1000301 ] }; // combining acute + key { [ 5, percent, 0x1000306, 0x1000306 ] }; // combining breve above + key { [ 6,asciicircum, 0x100030A, 0x100030A ] }; // combining ring above + key { [ 7, ampersand, 0x1000302, 0x1000302 ] }; // combining circumflex above + key { [ 8, asterisk, 0x100030C, 0x100030C ] }; // combining caron above + key { [ 9, parenleft, 0x1000307, 0x1000307 ] }; // combining dot above + key { [ 0, parenright, 0x1000308, 0x1000308 ] }; // combining diaeresis above + key { [ minus, underscore, 0x1000304, 0x1000304 ] }; // combining macron above + key { [ equal, plus, 0x1000303, 0x1000303 ] }; // combining tilde above + + key { [ q, Q, Greek_omega, Greek_OMEGA ] }; + key { [ w, W, oslash, Oslash ] }; + key { [ e, E, oe, OE ] }; + key { [ r, R, 0x1000327, 0x1000327 ] }; // combining cedilla + key { [ t, T, 0x100032E, 0x100032E ] }; // combining breve below + key { [ y, Y, 0x1000325, 0x1000325 ] }; // combining ring below + key { [ u, U, 0x100032D, 0x100032D ] }; // combining circumflex below + key { [ i, I, 0x100032C, 0x100032C ] }; // combining caron below + key { [ o, O, 0x1000323, 0x1000323 ] }; // combining dot below + key { [ p, P, 0x1000324, 0x1000324 ] }; // combining diaeresis below + key { [ bracketleft, braceleft, 0x1000331, 0x1000331 ] }; // combining macron below + key { [bracketright, braceright, 0x1000330, 0x1000330 ] }; // combining tilde below + + key { [ a, A, ae, AE ] }; + key { [ s, S, ssharp, 0x1001E9C ] }; // uppercase S sharp + key { [ d, D, eth, ETH ] }; + key { [ f, F, thorn, THORN ] }; + key { [ h, H, sterling, sterling ] }; + key { [ j, J, EuroSign, EuroSign ] }; + key { [ semicolon, colon, masculine, ordfeminine ] }; + key { [ apostrophe, quotedbl, currency, currency ] }; + key { [ backslash, bar, section, section ] }; + + key { [ c, C, ccedilla, Ccedilla ] }; + key { [ n, N, ntilde, Ntilde ] }; + key { [ m, M, mu, mu ] }; + key { [ comma, less, guillemotleft, guillemotleft ] }; + key { [ period, greater, guillemotright, guillemotright ] }; + key { [ slash, question, questiondown, questiondown ] }; + + key { [ multiply, division, ISO_Next_Group, ISO_Prev_Group ] }; + + include "level3(ralt_switch)" +}; + +partial alphanumeric_keys +xkb_symbols "olpc2" { + include "us(olpc)" + name[Group1]= "USA - Layout toggle on multiply/divide key"; + include "group(olpc)" +}; + +// Based on Cherokee Nation Official Layout +// http://www.cherokee.org/extras/downloads/font/Keyboard.htm + +partial alphanumeric_keys modifier_keys +xkb_symbols "chr" { + + name[Group1]= "USA - Cherokee"; + key.type[group1]="ALPHABETIC"; + + // Alphanumeric section + key { [ grave, U13CA ] }; + key { [ 1, U13B1 ] }; + key { [ 2, U13C7 ] }; + key { [ 3, U13E7 ] }; + key { [ U13D9, U13B0 ] }; + key { [ U13E6, U13B9 ] }; + key { [ U13DC, U13DD ] }; + key { [ U13CB, U13E1 ] }; + key { [ U13D6, U13BA ] }; + key { [ U13D2, parenleft ] }; + key { [ U13C4, parenright ] }; + key { [ U13BF, U13BC ] }; + key { [ U13F3, U13BD ] }; + + key { [ U13AA, U13C6 ] }; + key { [ U13B3, U13EB ] }; + key { [ U13A1, U13E3 ] }; + key { [ U13DB, U13CF ] }; + key { [ U13D4, U13D8 ] }; + key { [ U13EF, U13F2 ] }; + key { [ U13A4, U13AD ] }; + key { [ U13A2, U13F1 ] }; + key { [ U13A3, U13EC ] }; + key { [ U13C1, U13EA ] }; + key { [ U13D5, U13D1 ] }; + key { [ U13B6, U13E4 ] }; + key { [ U13E9, U13EE ] }; + + key { [ U13A0, U13CC ] }; + key { [ U13CD, U13CE ] }; + key { [ U13D7, U13D0 ] }; + key { [ U13A9, U13C8 ] }; + key { [ U13A6, U13E5 ] }; + key { [ U13AF, U13B2 ] }; + key { [ U13DA, U13AB ] }; + key { [ U13B8, U13A7 ] }; + key { [ U13B5, U13AE ] }; + key { [ U13E8, U13E0 ] }; + key { [ apostrophe, quotedbl ] }; + + key { [ U13AC, U13C3 ] }; + key { [ U13F4, U13ED ] }; + key { [ U13D3, U13DF ] }; + key { [ U13A5, U13DE ] }; + key { [ U13A8, U13F0 ] }; + key { [ U13BE, U13BB ] }; + key { [ U13C5, U13B7 ] }; + key { [ comma, U13E2 ] }; + key { [ period, U13B4 ] }; + key { [ U13C2, U13C9 ] }; + + // End alphanumeric section +}; + +// Serbian charecters added as third level symbols to US keyboard layout. + +partial alphanumeric_keys +xkb_symbols "srp" { + + name[Group1]= "USA - Serbian"; + + include "us" + + key { [ grave, asciitilde ] }; + key { [ 6, dead_caron, asciicircum, asciicircum ] }; + key { [ l, L, U1C9, U1C8 ] }; + key { [ n, N, U1CC, U1CB ] }; + key { [ z, Z, U1C6, U1C5 ] }; + key { [ e, E, EuroSign, cent ] }; + key { [ d, D, dstroke, Dstroke ] }; + key { [ dead_acute, quotedbl, apostrophe, U315 ] }; + key { [ space, space, nobreakspace, nobreakspace ] }; + + include "level3(ralt_switch)" +}; -- cgit v1.2.3