test: sync test/data from xkeyboard-config 2.9

Needed for some tests. The tests need some adjustment, mostly because of
the resolution of xkeyboard-config bug
https://bugs.freedesktop.org/show_bug.cgi?id=50935

Also add the 'ch' symbols file for future tests.

Signed-off-by: Ran Benita <ran234@gmail.com>
master
Ran Benita 2013-07-22 18:43:53 +03:00
parent c00ea5ff8e
commit 0c8e9e0c9c
12 changed files with 476 additions and 15 deletions

View File

@ -352,6 +352,8 @@
nokiasu8w * = nokia_vndr/su-8w(%l)
olpc $olpclayouts = olpc+%l%(m)
olpc * = olpc+%l%(v)
olpcm $olpclayouts = olpc+%l%(m)
olpcm * = olpc+%l%(v)
$thinkpads br = pc+br(thinkpad)
sl-c3x00 * = pc+sharp_vndr/sl-c3x00(basic)
ws003sh * = pc+sharp_vndr/ws003sh(basic)
@ -979,6 +981,7 @@
pc98 nec_vndr/jp = pc98(basic)
* jp = complete+japan
olpc * = olpc
olpcm * = olpc
* * = complete
! model layout[1] = compat
@ -1014,6 +1017,7 @@
grp:shift_toggle = +group(shifts_toggle)
altwin:menu = +altwin(menu)
altwin:meta_alt = +altwin(meta_alt)
altwin:alt_win = +altwin(alt_win)
altwin:ctrl_win = +altwin(ctrl_win)
altwin:ctrl_alt_win = +altwin(ctrl_alt_win)
altwin:meta_win = +altwin(meta_win)
@ -1092,12 +1096,19 @@
ctrl:ralt_rctrl = +ctrl(ralt_rctrl)
compose:ralt = +compose(ralt)
compose:lwin = +compose(lwin)
compose:lwin-altgr = +compose(lwin-altgr)
compose:rwin = +compose(rwin)
compose:rwin-altgr = +compose(rwin-altgr)
compose:menu = +compose(menu)
compose:menu-altgr = +compose(menu-altgr)
compose:lctrl = +compose(lctrl)
compose:lctrl-altgr = +compose(lctrl-altgr)
compose:rctrl = +compose(rctrl)
compose:rctrl-altgr = +compose(rctrl-altgr)
compose:caps = +compose(caps)
compose:caps-altgr = +compose(caps-altgr)
compose:102 = +compose(102)
compose:102-altgr = +compose(102-altgr)
compose:paus = +compose(paus)
compose:prsc = +compose(prsc)
compose:sclk = +compose(sclk)

View File

@ -130,6 +130,8 @@
! model = keycodes
pc98 = evdev(pc98)
applealu_jis = evdev+macintosh(jisevdev)
olpc = evdev+olpc(olpc)
olpcm = evdev+olpc(olpcm)
* = evdev
! layout[1] = keycodes
@ -343,6 +345,8 @@
nokiasu8w * = nokia_vndr/su-8w(%l)
olpc $olpclayouts = olpc+%l%(m)
olpc * = olpc+%l%(v)
olpcm $olpclayouts = olpc+%l%(m)
olpcm * = olpc+%l%(v)
$thinkpads br = pc+br(thinkpad)
sl-c3x00 * = pc+sharp_vndr/sl-c3x00(basic)
ws003sh * = pc+sharp_vndr/ws003sh(basic)
@ -920,6 +924,7 @@
pc98 nec_vndr/jp = pc98(basic)
* jp = complete+japan
olpc * = olpc
olpcm * = olpc
* * = complete
! model layout[1] = compat
@ -955,6 +960,7 @@
grp:shift_toggle = +group(shifts_toggle)
altwin:menu = +altwin(menu)
altwin:meta_alt = +altwin(meta_alt)
altwin:alt_win = +altwin(alt_win)
altwin:ctrl_win = +altwin(ctrl_win)
altwin:ctrl_alt_win = +altwin(ctrl_alt_win)
altwin:meta_win = +altwin(meta_win)
@ -1033,12 +1039,19 @@
ctrl:ralt_rctrl = +ctrl(ralt_rctrl)
compose:ralt = +compose(ralt)
compose:lwin = +compose(lwin)
compose:lwin-altgr = +compose(lwin-altgr)
compose:rwin = +compose(rwin)
compose:rwin-altgr = +compose(rwin-altgr)
compose:menu = +compose(menu)
compose:menu-altgr = +compose(menu-altgr)
compose:lctrl = +compose(lctrl)
compose:lctrl-altgr = +compose(lctrl-altgr)
compose:rctrl = +compose(rctrl)
compose:rctrl-altgr = +compose(rctrl-altgr)
compose:caps = +compose(caps)
compose:caps-altgr = +compose(caps-altgr)
compose:102 = +compose(102)
compose:102-altgr = +compose(102-altgr)
compose:paus = +compose(paus)
compose:prsc = +compose(prsc)
compose:sclk = +compose(sclk)

View File

@ -7,6 +7,14 @@ xkb_symbols "meta_alt" {
// modifier_map Mod4 {};
};
// Alt is mapped to the Win-keys (and the usual Alt keys).
partial modifier_keys
xkb_symbols "alt_win" {
key <LWIN> { [ Alt_L ] };
key <RWIN> { [ Alt_R ] };
modifier_map Mod1 { <LWIN>, <RWIN> };
};
// Control is mapped to the Win-keys (and the usual Ctrl keys).
partial modifier_keys
xkb_symbols "ctrl_win" {

225
test/data/symbols/ch Normal file
View File

@ -0,0 +1,225 @@
partial default alphanumeric_keys
xkb_symbols "basic" {
include "latin"
// Alphanumeric section
name[Group1]= "German (Switzerland)";
key <TLDE> { [ section, degree ] };
key <AE01> { [ 1, plus, bar, exclamdown ] };
key <AE02> { [ 2, quotedbl, at, oneeighth ] };
key <AE03> { [ 3, asterisk, numbersign ] };
key <AE04> { [ 4, ccedilla ] };
key <AE05> { [ 5, percent ] };
key <AE06> { [ 6, ampersand, notsign ] };
key <AE07> { [ 7, slash, bar ] };
key <AE08> { [ 8, parenleft, cent ] };
key <AE09> { [ 9, parenright ] };
key <AE10> { [ 0, equal ] };
key <AE11> { [ apostrophe, question, dead_acute ] };
key <AE12> { [ dead_circumflex, dead_grave, dead_tilde ] };
key <AD03> { [ e, E, EuroSign ] };
key <AD06> { [ z, Z ] };
key <AD11> { [ udiaeresis, egrave, bracketleft ] };
key <AD12> { [ dead_diaeresis, exclam, bracketright ] };
key <AC10> { [ odiaeresis, eacute ] };
key <AC11> { [ adiaeresis, agrave, braceleft ] };
key <BKSL> { [ dollar, sterling, braceright ] };
key <LSGT> { [ less, greater, backslash, brokenbar ] };
key <AB01> { [ y, Y ] };
key <AB08> { [ comma, semicolon ] };
key <AB09> { [ period, colon ] };
key <AB10> { [ minus, underscore ] };
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "legacy" {
include "ch(basic)"
name[Group1]= "German (Switzerland, legacy)";
key <AE07> { [ 7, slash, brokenbar ] };
};
partial alphanumeric_keys
xkb_symbols "de" {
include "ch(basic)"
};
partial alphanumeric_keys
xkb_symbols "de_Sundeadkeys" {
// modify the basic Swiss German layout to use Sun dead keys
include "ch(basic)"
key <AE11> { [ apostrophe, question, dead_acute ] };
key <AE12> { [ dead_circumflex, dead_grave, dead_tilde ] };
key <AD12> { [ dead_diaeresis, exclam, bracketright ] };
};
partial alphanumeric_keys
xkb_symbols "de_sundeadkeys" {
include "ch(de_Sundeadkeys)"
name[Group1]= "German (Switzerland, Sun dead keys)";
};
partial alphanumeric_keys
xkb_symbols "de_nodeadkeys" {
// modify the basic Swiss German layout not to have any dead keys
include "ch(basic)"
name[Group1]= "German (Switzerland, eliminate dead keys)";
key <AE11> { [ apostrophe, question, acute ] };
key <AE12> { [ asciicircum, grave, asciitilde ] };
key <AD12> { [ diaeresis, exclam, bracketright ] };
};
partial alphanumeric_keys
xkb_symbols "fr" {
// Describes the differences between a very simple US/ASCII
// keyboard and a very simple Swiss/French keybaord
include "ch(basic)"
name[Group1]= "French (Switzerland)";
override key <AD11> {
[ egrave, udiaeresis, bracketleft ]
};
override key <AC10> {
[ eacute, odiaeresis ]
};
override key <AC11> {
[ agrave, adiaeresis, braceleft ]
};
};
partial alphanumeric_keys
xkb_symbols "fr_Sundeadkeys" {
// modify the basic Swiss French layout to use Sun dead keys
include "ch(fr)"
key <AE11> { [ apostrophe, question, dead_acute ] };
key <AE12> { [ dead_circumflex, dead_grave, dead_tilde ] };
key <AD12> { [ dead_diaeresis, exclam, bracketright ] };
};
partial alphanumeric_keys
xkb_symbols "fr_sundeadkeys" {
include "ch(fr_Sundeadkeys)"
name[Group1]= "French (Switzerland, Sun dead keys)";
};
partial alphanumeric_keys
xkb_symbols "fr_nodeadkeys" {
// modify the basic Swiss French layout not to have any dead keys
include "ch(fr)"
name[Group1]= "French (Switzerland, eliminate dead keys)";
key <AE11> { [ apostrophe, question, acute ] };
key <AE12> { [ asciicircum, grave, asciitilde ] };
key <AD12> { [ diaeresis, exclam, bracketright ] };
};
// Copied from macintosh_vndr/ch
// 03.01.2003
// Andreas Tobler <a.tobler@schweiz.ch>
// modified for Swiss German Apple Extended Keyboard II
partial alphanumeric_keys
xkb_symbols "de_mac" {
name[Group1]= "German (Switzerland, Macintosh)";
// Alphanumeric section
key <AE01> { [ 1, plus, plusminus, infinity ] };
key <AE02> { [ 2, quotedbl, leftdoublequotemark, rightdoublequotemark ] };
key <AE03> { [ 3, asterisk, numbersign, leftcaret ] };
// not displayed here
key <AE04> { [ 4, ccedilla, Ccedilla, slash ] };
key <AE05> { [ 5, percent, bracketleft ] };
key <AE06> { [ 6, ampersand, bracketright ] };
key <AE07> { [ 7, slash, bar, backslash ] };
key <AE08> { [ 8, parenleft, braceleft, Ograve ] };
key <AE09> { [ 9, parenright, braceright, Ocircumflex ] };
key <AE10> { [ 0, equal, notequal, Uacute ] };
key <AE11> { [ apostrophe, question, questiondown, NoSymbol ] };
key <AE12> { [ dead_circumflex,dead_grave, dead_acute, asciicircum ] };
key <AD01> { [ q, Q, oe, OE ] };
key <AD02> { [ w, W, Greek_SIGMA, Aacute ] };
key <AD03> { [ e, E, EuroSign, Ediaeresis ] };
key <AD04> { [ r, R, registered, Egrave ] };
key <AD05> { [ t, T, dagger, Icircumflex ] };
key <AD06> { [ z, Z, Greek_OMEGA, Iacute ] };
key <AD07> { [ u, U, degree, Ugrave ] };
key <AD08> { [ i, I, exclamdown, idotless ] };
key <AD09> { [ o, O, oslash, Ooblique ] };
key <AD10> { [ p, P, Greek_pi, Greek_PI ] };
key <AD11> { [ udiaeresis, egrave, section, ydiaeresis ] };
key <AD12> { [ dead_diaeresis, exclam, grave, apostrophe ] };
key <AC01> { [ a, A, aring, Aring ] };
key <AC02> { [ s, S, ssharp, NoSymbol ] };
// ligature fl
key <AC03> { [ d, D, Greek_sigma, NoSymbol ] };
// partialderivative is not available here att
key <AC04> { [ f, F, function, doubledagger ] };
key <AC05> { [ g, G, at, comma ] };
key <AC06> { [ h, H, ordfeminine, periodcentered ] };
key <AC07> { [ j, J, masculine, eth ] };
key <AC08> { [ k, K, Greek_DELTA, macron ] };
key <AC09> { [ l, L, notsign, caret ] };
key <AC10> { [ odiaeresis, eacute, cent, breve ] };
key <AC11> { [ adiaeresis, agrave, ae, AE ] };
key <AB01> { [ y, Y, yen, Ydiaeresis ] };
key <AB02> { [ x, X, similarequal, trademark ] };
key <AB03> { [ c, C, copyright, NoSymbol ] };
key <AB04> { [ v, V, radical, diamond ] };
key <AB05> { [ b, B, integral, NoSymbol ] };
key <AB06> { [ n, N, dead_tilde, enopencircbullet ] };
// to be fixed att
key <AB07> { [ m, M, mu, dead_abovering ] };
// not sure att
key <AB08> { [ comma, semicolon, guillemotleft, guillemotright ] };
key <AB09> { [ period, colon, ellipsis, division ] };
key <AB10> { [ minus, underscore, hyphen, emdash ] };
key <TLDE> { [ section, degree, NoSymbol, NoSymbol ] };
// ligature fi // per mille
key <SPCE> { [ space, nobreakspace, nobreakspace ] };
key <LSGT> { [ less, greater, lessthanequal, greaterthanequal ] };
key <BKSL> { [ dollar, sterling, paragraph, enfilledcircbullet ] };
include "kpdl(comma)"
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "fr_mac" {
// Describes the differences between a very simple US/ASCII
// keyboard and a very simple Swiss/French keybaord
include "ch(de_mac)"
name[Group1]= "French (Switzerland, Macintosh)";
override key <AD11> {
[ egrave, udiaeresis, bracketleft ]
};
override key <AC10> {
[ eacute, odiaeresis ]
};
override key <AC11> {
[ agrave, adiaeresis, braceleft ]
};
};
// EXTRAS:
partial alphanumeric_keys
xkb_symbols "sun_type6_de" {
include "sun_vndr/ch(sun_type6_de)"
};
partial alphanumeric_keys
xkb_symbols "sun_type6_fr" {
include "sun_vndr/ch(sun_type6_fr)"
};

View File

@ -8,36 +8,71 @@ xkb_symbols "lwin" {
key <LWIN> { type[Group1]="TWO_LEVEL", [ Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "lwin-altgr" {
key <LWIN> { type[Group1]="FOUR_LEVEL", [ Super_L, Super_L, Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "rwin" {
key <RWIN> { type[Group1]="TWO_LEVEL", [ Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "rwin-altgr" {
key <RWIN> { type[Group1]="FOUR_LEVEL", [ Super_R, Super_R, Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "menu" {
key <MENU> { type[Group1]="TWO_LEVEL", [ Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "menu-altgr" {
key <MENU> { type[Group1]="FOUR_LEVEL", [ Menu, Menu, Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "rctrl" {
key <RCTL> { type[Group1]="TWO_LEVEL", [ Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "rctrl-altgr" {
key <RCTL> { type[Group1]="FOUR_LEVEL", [ Control_R, Control_R, Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "lctrl" {
key <LCTL> { type[Group1]="TWO_LEVEL", [ Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "lctrl-altgr" {
key <LCTL> { type[Group1]="FOUR_LEVEL", [ Control_L, Control_L, Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "caps" {
key <CAPS> { type[Group1]="TWO_LEVEL", [ Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "caps-altgr" {
key <CAPS> { type[Group1]="FOUR_LEVEL", [ Caps_Lock, Caps_Lock, Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "102" {
key <LSGT> { type[Group1]="TWO_LEVEL", [ Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "102-altgr" {
key <LSGT> { type[Group1]="FOUR_LEVEL", [ less, greater, Multi_key, Multi_key ] };
};
partial modifier_keys
xkb_symbols "paus" {
key <PAUS> { type[Group1]="TWO_LEVEL", [ Multi_key, Multi_key ] };

View File

@ -104,6 +104,84 @@ xkb_symbols "deadacute" {
key <BKSL> { [numbersign, apostrophe, dead_grave, dead_grave ] };
};
partial alphanumeric_keys
xkb_symbols "T3" {
include "latin(type4)"
name[Group1]="German (T3)";
key.type[Group1] = "EIGHT_LEVEL";
key <TLDE> { [ dead_circumflex, degree, multiply, NoSymbol, U204A, hyphen, bar, NoSymbol ] };
key <AE01> { [ 1, exclam, rightsinglequotemark, NoSymbol, onesuperior, exclamdown, U02B9, NoSymbol ] };
key <AE02> { [ 2, quotedbl, twosuperior, NoSymbol, twosuperior, currency, U02BA, NoSymbol ] };
key <AE03> { [ 3, section, threesuperior, NoSymbol, threesuperior, sterling, U02BF, NoSymbol ] };
key <AE04> { [ 4, dollar, emdash, NoSymbol, onequarter, 0x20AC, U02BE, NoSymbol ] };
key <AE05> { [ 5, percent, exclamdown, NoSymbol, onehalf, uparrow, U02C1, NoSymbol ] };
key <AE06> { [ 6, ampersand, questiondown, NoSymbol, threequarters, downarrow, U02C0, NoSymbol ] };
key <AE07> { [ 7, slash, braceleft, NoSymbol, oneeighth, leftarrow, braceleft, NoSymbol ] };
key <AE08> { [ 8, parenleft, bracketleft, NoSymbol, threeeighths, rightarrow, braceright, NoSymbol ] };
key <AE09> { [ 9, parenright, bracketright, NoSymbol, fiveeighths, plusminus, bracketleft, NoSymbol ] };
key <AE10> { [ 0, equal, braceright, NoSymbol, seveneighths, trademark, bracketright, NoSymbol ] };
key <AE11> { [ ssharp, question, backslash, NoSymbol, backslash, questiondown, U02BB, NoSymbol ] };
key <AE12> { [ dead_acute, dead_grave, dead_abovedot, NoSymbol, dead_cedilla, dead_ogonek, notsign, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC";
key <AD01> { [ q, Q, at, NoSymbol, U0242, U0241, U030D, NoSymbol ] };
key <AD02> { [ w, W, dead_caron, NoSymbol, U02B7, U2126, dead_abovedot, NoSymbol ] };
key <AD03> { [ e, E, EuroSign, NoSymbol, oe, OE, dead_breve, NoSymbol ] };
key <AD04> { [ r, R, dead_diaeresis, NoSymbol, paragraph, registered, dead_circumflex, NoSymbol ] };
key <AD05> { [ t, T, dead_macron, NoSymbol, UA78C, UA78B, dead_diaeresis, NoSymbol ] };
key <AD06> { [ z, Z, dead_doubleacute, NoSymbol, U027C, yen, dead_invertedbreve, NoSymbol ] };
key <AD07> { [ u, U, dead_breve, NoSymbol, U0223, U0222, dead_caron, NoSymbol ] };
key <AD08> { [ i, I, dead_tilde, NoSymbol, idotless, U214D, dead_abovecomma, NoSymbol ] };
key <AD09> { [ o, O, dead_abovering, NoSymbol, oslash, Oslash, dead_horn, NoSymbol ] };
key <AD10> { [ p, P, dead_hook, NoSymbol, thorn, THORN, dead_hook, NoSymbol ] };
key <AD11> { [ udiaeresis, Udiaeresis, dead_horn, NoSymbol, U017F, dead_abovering, dead_grave, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL";
key <AD12> { [ plus, asterisk, asciitilde, NoSymbol, dead_tilde, dead_macron, at, NoSymbol ] };
key.type[Group1] = "ONE_LEVEL";
key <CAPS> { [ Caps_Lock ] };
key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC";
key <AC01> { [ a, A, lessthanequal, NoSymbol, ae, AE, U0329, NoSymbol ] };
key <AC02> { [ s, S, greaterthanequal, NoSymbol, ssharp, section, dead_belowdot, NoSymbol ] };
key <AC03> { [ d, D, U2300, NoSymbol, eth, ETH, dead_belowbreve, NoSymbol ] };
key <AC04> { [ f, F, minutes, NoSymbol, U0294, ordfeminine, dead_belowcircumflex, NoSymbol ] };
key <AC05> { [ g, G, seconds, NoSymbol, eng, ENG, dead_belowmacron, NoSymbol ] };
key <AC06> { [ h, H, U1E9E, NoSymbol, U0272, U019D, U0332, NoSymbol ] };
key <AC07> { [ j, J, dead_cedilla, NoSymbol, U0133, U0132, dead_belowring, NoSymbol ] };
key <AC08> { [ k, K, dead_belowcomma, NoSymbol, kra, dead_belowcomma, U0335, NoSymbol ] };
key <AC09> { [ l, L, dead_ogonek, NoSymbol, lstroke, Lstroke, U0338, NoSymbol ] };
key <AC10> { [ odiaeresis, Odiaeresis, dead_belowdot, NoSymbol, dead_acute, dead_doubleacute, degree, NoSymbol ] };
key <AC11> { [ adiaeresis, Adiaeresis, dead_stroke, NoSymbol, U019B, U1E9E, minutes, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL";
key <BKSL> { [ numbersign, apostrophe, registered, NoSymbol, schwa, SCHWA, seconds, NoSymbol ] };
key <LSGT> { [ less, greater, bar, NoSymbol, U0149, brokenbar, U266A, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC";
key <AB01> { [ y, Y, U203A, NoSymbol, U0292, U01B7, guillemotleft, NoSymbol ] };
key <AB02> { [ x, X, guillemotright, NoSymbol, doublelowquotemark, singlelowquotemark, guillemotright, NoSymbol ] };
key <AB03> { [ c, C, copyright, NoSymbol, cent, copyright, Greek_horizbar, NoSymbol ] };
key <AB04> { [ v, V, guillemotleft, NoSymbol, leftdoublequotemark, leftsinglequotemark, U2039, NoSymbol ] };
key <AB05> { [ b, B, U2039, NoSymbol, rightdoublequotemark, rightsinglequotemark, U203A, NoSymbol ] };
key <AB06> { [ n, N, endash, NoSymbol, U019E, U0220, endash, NoSymbol ] };
key <AB07> { [ m, M, Greek_mu, NoSymbol, mu, masculine, emdash, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL";
key <AB08> { [ comma, semicolon, U02BB, NoSymbol, ellipsis, multiply, dollar, NoSymbol ] };
key <AB09> { [ period, colon, U200C, NoSymbol, periodcentered, division, numbersign, NoSymbol ] };
key <AB10> { [ minus, underscore, hyphen, NoSymbol, U0140, U013F, U2011, NoSymbol ] };
key <SPCE> { [ space, space, nobreakspace, NoSymbol, U202F, U200C, nobreakspace, NoSymbol ] };
include "kpdl(comma)"
// We do not support the correct level selection mechanism yet, this is
//just for testing:
include "level5(rctrl_switch)"
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "ro" {
// add romanian-specific letters to the basic German layout.

View File

@ -120,6 +120,8 @@ xkb_symbols "evdev" {
key <FK22> { [ XF86TouchpadOn ] };
key <FK23> { [ XF86TouchpadOff ] };
key <FK20> { [ XF86AudioMicMute ] };
// key <I120> { [ ] }; // KEY_MACRO
key <I126> { [ plusminus ] };
key <I128> { [ XF86LaunchA ] };

View File

@ -8,9 +8,7 @@ xkb_symbols "modifier_mapping" {
key.type[Group1] = "ONE_LEVEL";
replace key <LVL3> {
vmods = LevelThree,
symbols[Group1] = [ ISO_Level3_Shift ],
actions[Group1] = [ SetMods(modifiers=LevelThree) ]
symbols[Group1] = [ ISO_Level3_Shift ]
};
modifier_map Mod5 { <LVL3> };
};

View File

@ -8,9 +8,7 @@ xkb_symbols "modifier_mapping" {
key.type[Group1] = "ONE_LEVEL";
replace key <MDSW> {
vmods = LevelFive,
symbols[Group1] = [ ISO_Level5_Shift ],
actions[Group1] = [ SetMods(modifiers=LevelFive) ]
symbols[Group1] = [ ISO_Level5_Shift ]
};
modifier_map Mod3 { <MDSW> };
};

View File

@ -636,7 +636,7 @@ xkb_symbols "ruu" {
key <AD03> { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU ] };
key <AD04> { [ Cyrillic_ka, Cyrillic_KA, registered ] }; // Registered tm
key <AD05> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO ] };
key <AD07> { [Cyrillic_ge, Cyrillic_GE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
key <AD07> { [Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U00B6 ] }; // Pilcrow Sign
key <AD12> { [Cyrillic_hardsign, Cyrillic_HARDSIGN, Ukrainian_yi, Ukrainian_YI ] };
key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, Ukrainian_i, Ukrainian_I ] };
@ -656,3 +656,22 @@ partial alphanumeric_keys
xkb_symbols "sun_type6" {
include "sun_vndr/ru(sun_type6)"
};
// Apple layout
partial alphanumeric_keys
xkb_symbols "mac" {
include "ru(common)"
name[Group1]= "Russian (Macintosh)";
key <LSGT> { [ less, greater ] };
key <AE02> { [ 2, quotedbl ] };
key <AE03> { [ 3, numerosign ] };
key <AE04> { [ 4, percent ] };
key <AE05> { [ 5, colon ] };
key <AE06> { [ 6, comma ] };
key <AE07> { [ 7, period ] };
key <AE08> { [ 8, semicolon ] };
key <TLDE> { [ bracketright, bracketleft ] };
key <BKSL> { [ Cyrillic_io, Cyrillic_IO ] };
};

View File

@ -605,6 +605,8 @@ xkb_symbols "dvp" {
// lower row, left side
key <AB01> { [ apostrophe, quotedbl, dead_acute ] };
include "level3(ralt_switch)"
};
// phonetic layout for Russian letters on an US keyboard
@ -1033,7 +1035,7 @@ xkb_symbols "olpc" {
key <AC07> { [ j, J, EuroSign, EuroSign ] };
key <AC10> { [ semicolon, colon, masculine, ordfeminine ] };
key <AC11> { [ apostrophe, quotedbl, currency, currency ] };
key <BKSL> { [ backslash, bar, section, section ] };
key <AC12> { [ backslash, bar, section, section ] };
key <AB03> { [ c, C, ccedilla, Ccedilla ] };
key <AB06> { [ n, N, ntilde, Ntilde ] };
@ -1054,6 +1056,63 @@ xkb_symbols "olpc2" {
include "group(olpc)"
};
xkb_symbols "olpcm" {
include "us(basic)"
name[Group1]= "USA";
// Mechanical (non-membrane) OLPC int'l US English keyboard layout.
// See: http://wiki.laptop.org/go/OLPC_English_Non-membrane_Keyboard
key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] };
key <AE01> { [ 1, exclam, exclamdown, exclamdown ] };
key <AE02> { [ 2, at, notsign, notsign ] };
key <AE03> { [ 3, numbersign, 0x1000300, 0x1000300 ] }; // combining grave
key <AE04> { [ 4, dollar, 0x1000301, 0x1000301 ] }; // combining acute
key <AE05> { [ 5, percent, 0x1000306, 0x1000306 ] }; // combining breve above
key <AE06> { [ 6,asciicircum, 0x100030A, 0x100030A ] }; // combining ring above
key <AE07> { [ 7, ampersand, 0x1000302, 0x1000302 ] }; // combining circumflex above
key <AE08> { [ 8, asterisk, 0x100030C, 0x100030C ] }; // combining caron above
key <AE09> { [ 9, parenleft, 0x1000307, 0x1000307 ] }; // combining dot above
key <AE10> { [ 0, parenright, 0x1000308, 0x1000308 ] }; // combining diaeresis above
key <AE11> { [ minus, underscore, 0x1000304, 0x1000304 ] }; // combining macron above
key <AD01> { [ q, Q, Greek_omega, Greek_OMEGA ] };
key <AD02> { [ w, W, oslash, Oslash ] };
key <AD03> { [ e, E, oe, OE ] };
key <AD04> { [ r, R, 0x1000327, 0x1000327 ] }; // combining cedilla
key <AD05> { [ t, T, 0x100032E, 0x100032E ] }; // combining breve below
key <AD06> { [ y, Y, 0x1000325, 0x1000325 ] }; // combining ring below
key <AD07> { [ u, U, 0x100032D, 0x100032D ] }; // combining circumflex below
key <AD08> { [ i, I, 0x100032C, 0x100032C ] }; // combining caron below
key <AD09> { [ o, O, 0x1000323, 0x1000323 ] }; // combining dot below
key <AD10> { [ p, P, 0x1000324, 0x1000324 ] }; // combining diaeresis below
key <AD11> { [ bracketleft, braceleft, 0x1000331, 0x1000331 ] }; // combining macron below
key <AD12> { [bracketright, braceright, 0x1000330, 0x1000330 ] }; // combining tilde below
key <AC01> { [ a, A, ae, AE ] };
key <AC02> { [ s, S, ssharp, 0x1001E9C ] }; // uppercase S sharp
key <AC03> { [ d, D, eth, ETH ] };
key <AC04> { [ f, F, thorn, THORN ] };
key <AC06> { [ h, H, sterling, sterling ] };
key <AC07> { [ j, J, EuroSign, EuroSign ] };
key <AC10> { [ semicolon, colon, masculine, ordfeminine ] };
// no AC11 or AC12 on olpcm
key <AB03> { [ c, C, ccedilla, Ccedilla ] };
key <AB06> { [ n, N, ntilde, Ntilde ] };
key <AB07> { [ m, M, mu, mu ] };
key <AB08> { [ comma, less, guillemotleft, guillemotleft ] };
key <AB09> { [ period, greater, guillemotright, guillemotright ] };
key <AB10> { [ slash, question, questiondown, questiondown ] };
key <AA02> { [ backslash, bar, section, section ] };
key <AA06> { [ equal, plus, 0x1000303, 0x1000303 ] };
key <AA07> { [ apostrophe, quotedbl, currency, currency ] };
include "level3(ralt_switch)"
};
// Based on Cherokee Nation Official Layout
// http://www.cherokee.org/extras/downloads/font/Keyboard.htm

View File

@ -296,17 +296,32 @@ main(void)
/* Level 5. */
KEY_RIGHTALT, DOWN, XKB_KEY_ISO_Level5_Shift, NEXT,
KEY_5, BOTH, XKB_KEY_periodcentered, NEXT,
KEY_E, BOTH, XKB_KEY_Up, NEXT,
KEY_SPACE, BOTH, XKB_KEY_KP_0, NEXT,
KEY_KP8, BOTH, XKB_KEY_KP_Up, NEXT,
/* XXX: xkeyboard-config is borked when de(neo) is
* not the first group - not our fault. We test
* Level5 seprately below with only de(neo). */
/* KEY_5, BOTH, XKB_KEY_periodcentered, NEXT, */
/* KEY_E, BOTH, XKB_KEY_Up, NEXT, */
/* KEY_SPACE, BOTH, XKB_KEY_KP_0, NEXT, */
/* KEY_KP8, BOTH, XKB_KEY_KP_Up, NEXT, */
KEY_ESC, BOTH, XKB_KEY_Escape, NEXT,
KEY_RIGHTALT, UP, XKB_KEY_ISO_Level5_Shift, NEXT,
KEY_V, BOTH, XKB_KEY_p, FINISH));
xkb_keymap_unref(keymap);
assert(ctx);
keymap = test_compile_rules(ctx, "evdev", "", "de", "neo", "");
assert(keymap);
assert(test_key_seq(keymap,
/* Level 5. */
KEY_RIGHTALT, DOWN, XKB_KEY_ISO_Level5_Shift, NEXT,
KEY_5, BOTH, XKB_KEY_periodcentered, NEXT,
KEY_E, BOTH, XKB_KEY_Up, NEXT,
KEY_SPACE, BOTH, XKB_KEY_KP_0, NEXT,
KEY_KP8, BOTH, XKB_KEY_KP_Up, NEXT,
KEY_ESC, BOTH, XKB_KEY_Escape, NEXT,
KEY_RIGHTALT, UP, XKB_KEY_ISO_Level5_Shift, FINISH));
xkb_keymap_unref(keymap);
keymap = test_compile_rules(ctx, "evdev", "", "us,il,ru", "",
"grp:alt_shift_toggle_bidir,grp:menu_toggle");
assert(keymap);