Skip to content

Instantly share code, notes, and snippets.

@holtzermann17
Created September 8, 2022 10:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save holtzermann17/7f5a97e5db889ffbf1386eb26394c561 to your computer and use it in GitHub Desktop.
Save holtzermann17/7f5a97e5db889ffbf1386eb26394c561 to your computer and use it in GitHub Desktop.
kinesis keyboard config
xkb_keymap {
xkb_keycodes "evdev+aliases(qwerty)" {
minimum = 8;
maximum = 255;
<ESC> = 9;
<AE01> = 10;
<AE02> = 11;
<AE03> = 12;
<AE04> = 13;
<AE05> = 14;
<AE06> = 15;
<AE07> = 16;
<AE08> = 17;
<AE09> = 18;
<AE10> = 19;
<AE11> = 20;
<AE12> = 21;
<BKSP> = 22;
<TAB> = 23;
<AD01> = 24;
<AD02> = 25;
<AD03> = 26;
<AD04> = 27;
<AD05> = 28;
<AD06> = 29;
<AD07> = 30;
<AD08> = 31;
<AD09> = 32;
<AD10> = 33;
<AD11> = 34;
<AD12> = 35;
<RTRN> = 36;
<LCTL> = 37;
<AC01> = 38;
<AC02> = 39;
<AC03> = 40;
<AC04> = 41;
<AC05> = 42;
<AC06> = 43;
<AC07> = 44;
<AC08> = 45;
<AC09> = 46;
<AC10> = 47;
<AC11> = 48;
<TLDE> = 49;
<LFSH> = 50;
<BKSL> = 51;
<AB01> = 52;
<AB02> = 53;
<AB03> = 54;
<AB04> = 55;
<AB05> = 56;
<AB06> = 57;
<AB07> = 58;
<AB08> = 59;
<AB09> = 60;
<AB10> = 61;
<RTSH> = 62;
<KPMU> = 63;
<LALT> = 64;
<SPCE> = 65;
<CAPS> = 66;
<FK01> = 67;
<FK02> = 68;
<FK03> = 69;
<FK04> = 70;
<FK05> = 71;
<FK06> = 72;
<FK07> = 73;
<FK08> = 74;
<FK09> = 75;
<FK10> = 76;
<NMLK> = 77;
<SCLK> = 78;
<KP7> = 79;
<KP8> = 80;
<KP9> = 81;
<KPSU> = 82;
<KP4> = 83;
<KP5> = 84;
<KP6> = 85;
<KPAD> = 86;
<KP1> = 87;
<KP2> = 88;
<KP3> = 89;
<KP0> = 90;
<KPDL> = 91;
<LVL3> = 92;
<LSGT> = 94;
<FK11> = 95;
<FK12> = 96;
# <AB11> = 97;
<KATA> = 98;
<HIRA> = 99;
<HENK> = 100;
<HKTG> = 101;
<MUHE> = 102;
# <JPCM> = 103;
<KPEN> = 104;
<RCTL> = 105;
<KPDV> = 106;
<PRSC> = 107;
<RALT> = 108;
<LNFD> = 109;
<HOME> = 110;
<UP> = 111;
<PGUP> = 112;
<LEFT> = 113;
<RGHT> = 114;
<END> = 115;
<DOWN> = 116;
<PGDN> = 117;
<INS> = 118;
<DELE> = 119;
# <I120> = 120;
<MUTE> = 121;
<VOL-> = 122;
<VOL+> = 123;
<POWR> = 124;
<KPEQ> = 125;
<I126> = 126;
<PAUS> = 127;
<I128> = 128;
<I129> = 129;
<HNGL> = 130;
<HJCV> = 131;
# <AE13> = 132;
<LWIN> = 133;
<RWIN> = 134;
<COMP> = 135;
<STOP> = 136;
<AGAI> = 137;
<PROP> = 138;
<UNDO> = 139;
<FRNT> = 140;
<COPY> = 141;
<OPEN> = 142;
<PAST> = 143;
<FIND> = 144;
<CUT> = 145;
<HELP> = 146;
<I147> = 147;
<I148> = 148;
# <I149> = 149;
<I150> = 150;
<I151> = 151;
<I152> = 152;
<I153> = 153;
# <I154> = 154;
<I155> = 155;
<I156> = 156;
<I157> = 157;
<I158> = 158;
<I159> = 159;
<I160> = 160;
# <I161> = 161;
<I162> = 162;
<I163> = 163;
<I164> = 164;
<I165> = 165;
<I166> = 166;
<I167> = 167;
# <I168> = 168;
<I169> = 169;
<I170> = 170;
<I171> = 171;
<I172> = 172;
<I173> = 173;
<I174> = 174;
<I175> = 175;
<I176> = 176;
<I177> = 177;
# <I178> = 178;
<I179> = 179;
<I180> = 180;
<I181> = 181;
<I182> = 182;
# <I183> = 183;
# <I184> = 184;
<I185> = 185;
<I186> = 186;
<I187> = 187;
<I188> = 188;
<I189> = 189;
<I190> = 190;
<FK13> = 191;
<FK14> = 192;
<FK15> = 193;
<FK16> = 194;
<FK17> = 195;
<FK18> = 196;
# <FK19> = 197;
<FK20> = 198;
<FK21> = 199;
<FK22> = 200;
<FK23> = 201;
# <FK24> = 202;
<MDSW> = 203;
<ALT> = 204;
<META> = 205;
<SUPR> = 206;
<HYPR> = 207;
<I208> = 208;
<I209> = 209;
<I210> = 210;
<I211> = 211;
<I212> = 212;
<I213> = 213;
<I214> = 214;
<I215> = 215;
<I216> = 216;
# <I217> = 217;
<I218> = 218;
# <I219> = 219;
<I220> = 220;
# <I221> = 221;
# <I222> = 222;
<I223> = 223;
<I224> = 224;
<I225> = 225;
<I226> = 226;
<I227> = 227;
<I228> = 228;
<I229> = 229;
# <I230> = 230;
<I231> = 231;
<I232> = 232;
<I233> = 233;
<I234> = 234;
<I235> = 235;
<I236> = 236;
<I237> = 237;
<I238> = 238;
<I239> = 239;
<I240> = 240;
<I241> = 241;
<I242> = 242;
<I243> = 243;
<I244> = 244;
<I245> = 245;
<I246> = 246;
# <I247> = 247;
# <I248> = 248;
# <I249> = 249;
# <I250> = 250;
# <I251> = 251;
# <I252> = 252;
# <I253> = 253;
indicator 1 = "Caps Lock";
indicator 2 = "Num Lock";
indicator 3 = "Scroll Lock";
indicator 4 = "Compose";
indicator 5 = "Kana";
indicator 6 = "Sleep";
indicator 7 = "Suspend";
indicator 8 = "Mute";
indicator 9 = "Misc";
indicator 10 = "Mail";
indicator 11 = "Charging";
virtual indicator 12 = "Shift Lock";
virtual indicator 13 = "Group 2";
virtual indicator 14 = "Mouse Keys";
alias <AC12> = <BKSL>;
alias <MENU> = <COMP>;
alias <HZTG> = <TLDE>;
alias <LMTA> = <LWIN>;
alias <RMTA> = <RWIN>;
alias <ALGR> = <RALT>;
alias <KPPT> = <I129>;
alias <LatQ> = <AD01>;
alias <LatW> = <AD02>;
alias <LatE> = <AD03>;
alias <LatR> = <AD04>;
alias <LatT> = <AD05>;
alias <LatY> = <AD06>;
alias <LatU> = <AD07>;
alias <LatI> = <AD08>;
alias <LatO> = <AD09>;
alias <LatP> = <AD10>;
alias <LatA> = <AC01>;
alias <LatS> = <AC02>;
alias <LatD> = <AC03>;
alias <LatF> = <AC04>;
alias <LatG> = <AC05>;
alias <LatH> = <AC06>;
alias <LatJ> = <AC07>;
alias <LatK> = <AC08>;
alias <LatL> = <AC09>;
alias <LatZ> = <AB01>;
alias <LatX> = <AB02>;
alias <LatC> = <AB03>;
alias <LatV> = <AB04>;
alias <LatB> = <AB05>;
alias <LatN> = <AB06>;
alias <LatM> = <AB07>;
};
xkb_types "complete" {
virtual_modifiers NumLock,Alt,LevelThree,LAlt,RAlt,RControl,LControl,ScrollLock,LevelFive,AltGr,Meta,Super,Hyper;
type "ONE_LEVEL" {
modifiers= none;
level_name[Level1]= "Any";
};
type "TWO_LEVEL" {
modifiers= Shift;
map[Shift]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
};
type "ALPHABETIC" {
modifiers= Shift+Lock;
map[Shift]= Level2;
map[Lock]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "Caps";
};
type "KEYPAD" {
modifiers= Shift+NumLock;
map[Shift]= Level2;
map[NumLock]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "Number";
};
type "SHIFT+ALT" {
modifiers= Shift+Alt;
map[Shift+Alt]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "Shift+Alt";
};
type "PC_CONTROL_LEVEL2" {
modifiers= Control;
map[Control]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "Control";
};
type "PC_LCONTROL_LEVEL2" {
modifiers= LControl;
map[LControl]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "LControl";
};
type "PC_RCONTROL_LEVEL2" {
modifiers= RControl;
map[RControl]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "RControl";
};
type "PC_ALT_LEVEL2" {
modifiers= Alt;
map[Alt]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "Alt";
};
type "PC_LALT_LEVEL2" {
modifiers= LAlt;
map[LAlt]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "LAlt";
};
type "PC_RALT_LEVEL2" {
modifiers= RAlt;
map[RAlt]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "RAlt";
};
type "CTRL+ALT" {
modifiers= Shift+Control+Alt+LevelThree;
map[Shift]= Level2;
preserve[Shift]= Shift;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
preserve[Shift+LevelThree]= Shift;
map[Control+Alt]= Level5;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
level_name[Level5]= "Ctrl+Alt";
};
type "LOCAL_EIGHT_LEVEL" {
modifiers= Shift+Lock+Control+LevelThree;
map[Shift+Lock]= Level1;
map[Shift]= Level2;
map[Lock]= Level2;
map[LevelThree]= Level3;
map[Shift+Lock+LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[Lock+LevelThree]= Level4;
map[Control]= Level5;
map[Shift+Lock+Control]= Level5;
map[Shift+Control]= Level6;
map[Lock+Control]= Level6;
map[Control+LevelThree]= Level7;
map[Shift+Lock+Control+LevelThree]= Level7;
map[Shift+Control+LevelThree]= Level8;
map[Lock+Control+LevelThree]= Level8;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Level3";
level_name[Level4]= "Shift Level3";
level_name[Level5]= "Ctrl";
level_name[Level6]= "Shift Ctrl";
level_name[Level7]= "Level3 Ctrl";
level_name[Level8]= "Shift Level3 Ctrl";
};
type "THREE_LEVEL" {
modifiers= Shift+LevelThree;
map[Shift]= Level2;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level3;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Level3";
};
type "EIGHT_LEVEL" {
modifiers= Shift+LevelThree+LevelFive;
map[Shift]= Level2;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[LevelFive]= Level5;
map[Shift+LevelFive]= Level6;
map[LevelThree+LevelFive]= Level7;
map[Shift+LevelThree+LevelFive]= Level8;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
level_name[Level5]= "X";
level_name[Level6]= "X Shift";
level_name[Level7]= "X Alt Base";
level_name[Level8]= "X Shift Alt";
};
type "EIGHT_LEVEL_ALPHABETIC" {
modifiers= Shift+Lock+LevelThree+LevelFive;
map[Shift]= Level2;
map[Lock]= Level2;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[Lock+LevelThree]= Level4;
map[Shift+Lock+LevelThree]= Level3;
map[LevelFive]= Level5;
map[Shift+LevelFive]= Level6;
map[Lock+LevelFive]= Level6;
map[LevelThree+LevelFive]= Level7;
map[Shift+LevelThree+LevelFive]= Level8;
map[Lock+LevelThree+LevelFive]= Level8;
map[Shift+Lock+LevelThree+LevelFive]= Level7;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
level_name[Level5]= "X";
level_name[Level6]= "X Shift";
level_name[Level7]= "X Alt Base";
level_name[Level8]= "X Shift Alt";
};
type "EIGHT_LEVEL_SEMIALPHABETIC" {
modifiers= Shift+Lock+LevelThree+LevelFive;
map[Shift]= Level2;
map[Lock]= Level2;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[Lock+LevelThree]= Level3;
preserve[Lock+LevelThree]= Lock;
map[Shift+Lock+LevelThree]= Level4;
preserve[Shift+Lock+LevelThree]= Lock;
map[LevelFive]= Level5;
map[Shift+LevelFive]= Level6;
map[Lock+LevelFive]= Level6;
preserve[Lock+LevelFive]= Lock;
map[Shift+Lock+LevelFive]= Level6;
preserve[Shift+Lock+LevelFive]= Lock;
map[LevelThree+LevelFive]= Level7;
map[Shift+LevelThree+LevelFive]= Level8;
map[Lock+LevelThree+LevelFive]= Level7;
preserve[Lock+LevelThree+LevelFive]= Lock;
map[Shift+Lock+LevelThree+LevelFive]= Level8;
preserve[Shift+Lock+LevelThree+LevelFive]= Lock;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
level_name[Level5]= "X";
level_name[Level6]= "X Shift";
level_name[Level7]= "X Alt Base";
level_name[Level8]= "X Shift Alt";
};
type "FOUR_LEVEL" {
modifiers= Shift+LevelThree;
map[Shift]= Level2;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
};
type "FOUR_LEVEL_ALPHABETIC" {
modifiers= Shift+Lock+LevelThree;
map[Shift]= Level2;
map[Lock]= Level2;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[Lock+LevelThree]= Level4;
map[Shift+Lock+LevelThree]= Level3;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
};
type "FOUR_LEVEL_SEMIALPHABETIC" {
modifiers= Shift+Lock+LevelThree;
map[Shift]= Level2;
map[Lock]= Level2;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[Lock+LevelThree]= Level3;
preserve[Lock+LevelThree]= Lock;
map[Shift+Lock+LevelThree]= Level4;
preserve[Shift+Lock+LevelThree]= Lock;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
};
type "FOUR_LEVEL_MIXED_KEYPAD" {
modifiers= Shift+NumLock+LevelThree;
map[Shift+NumLock]= Level1;
map[NumLock]= Level2;
map[Shift]= Level2;
map[LevelThree]= Level3;
map[NumLock+LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[Shift+NumLock+LevelThree]= Level4;
level_name[Level1]= "Base";
level_name[Level2]= "Number";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
};
type "FOUR_LEVEL_X" {
modifiers= Shift+Control+Alt+LevelThree;
map[LevelThree]= Level2;
map[Shift+LevelThree]= Level3;
map[Control+Alt]= Level4;
level_name[Level1]= "Base";
level_name[Level2]= "Alt Base";
level_name[Level3]= "Shift Alt";
level_name[Level4]= "Ctrl+Alt";
};
type "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC" {
modifiers= Shift+Lock+LevelThree;
map[Shift]= Level2;
map[Lock]= Level4;
preserve[Lock]= Lock;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[Lock+LevelThree]= Level3;
preserve[Lock+LevelThree]= Lock;
map[Shift+Lock+LevelThree]= Level3;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "AltGr Base";
level_name[Level4]= "Shift AltGr";
};
type "FOUR_LEVEL_PLUS_LOCK" {
modifiers= Shift+Lock+LevelThree;
map[Shift]= Level2;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[Lock]= Level5;
map[Shift+Lock]= Level2;
map[Lock+LevelThree]= Level3;
map[Shift+Lock+LevelThree]= Level4;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
level_name[Level5]= "Lock";
};
type "FOUR_LEVEL_KEYPAD" {
modifiers= Shift+NumLock+LevelThree;
map[Shift]= Level2;
map[NumLock]= Level2;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[NumLock+LevelThree]= Level4;
map[Shift+NumLock+LevelThree]= Level3;
level_name[Level1]= "Base";
level_name[Level2]= "Number";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Alt Number";
};
};
xkb_compatibility "complete" {
virtual_modifiers NumLock,Alt,LevelThree,LAlt,RAlt,RControl,LControl,ScrollLock,LevelFive,AltGr,Meta,Super,Hyper;
interpret.useModMapMods= AnyLevel;
interpret.repeat= False;
interpret.locking= False;
interpret ISO_Level2_Latch+Exactly(Shift) {
useModMapMods=level1;
action= LatchMods(modifiers=Shift,clearLocks,latchToLock);
};
interpret Shift_Lock+AnyOf(Shift+Lock) {
action= LockMods(modifiers=Shift);
};
interpret Num_Lock+AnyOf(all) {
virtualModifier= NumLock;
action= LockMods(modifiers=NumLock);
};
interpret ISO_Level3_Shift+AnyOf(all) {
virtualModifier= LevelThree;
useModMapMods=level1;
action= SetMods(modifiers=LevelThree,clearLocks);
};
interpret ISO_Level3_Latch+AnyOf(all) {
virtualModifier= LevelThree;
useModMapMods=level1;
action= LatchMods(modifiers=LevelThree,clearLocks,latchToLock);
};
interpret ISO_Level3_Lock+AnyOf(all) {
virtualModifier= LevelThree;
useModMapMods=level1;
action= LockMods(modifiers=LevelThree);
};
interpret Alt_L+AnyOf(all) {
virtualModifier= Alt;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Alt_R+AnyOf(all) {
virtualModifier= Alt;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Meta_L+AnyOf(all) {
virtualModifier= Meta;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Meta_R+AnyOf(all) {
virtualModifier= Meta;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Super_L+AnyOf(all) {
virtualModifier= Super;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Super_R+AnyOf(all) {
virtualModifier= Super;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Hyper_L+AnyOf(all) {
virtualModifier= Hyper;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Hyper_R+AnyOf(all) {
virtualModifier= Hyper;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Scroll_Lock+AnyOf(all) {
virtualModifier= ScrollLock;
action= LockMods(modifiers=modMapMods);
};
interpret ISO_Level5_Shift+AnyOf(all) {
virtualModifier= LevelFive;
useModMapMods=level1;
action= SetMods(modifiers=LevelFive,clearLocks);
};
interpret ISO_Level5_Latch+AnyOf(all) {
virtualModifier= LevelFive;
useModMapMods=level1;
action= LatchMods(modifiers=LevelFive,clearLocks,latchToLock);
};
interpret ISO_Level5_Lock+AnyOf(all) {
virtualModifier= LevelFive;
useModMapMods=level1;
action= LockMods(modifiers=LevelFive);
};
interpret Mode_switch+AnyOfOrNone(all) {
virtualModifier= AltGr;
useModMapMods=level1;
action= SetGroup(group=+1);
};
interpret ISO_Level3_Shift+AnyOfOrNone(all) {
action= SetMods(modifiers=LevelThree,clearLocks);
};
interpret ISO_Level3_Latch+AnyOfOrNone(all) {
action= LatchMods(modifiers=LevelThree,clearLocks,latchToLock);
};
interpret ISO_Level3_Lock+AnyOfOrNone(all) {
action= LockMods(modifiers=LevelThree);
};
interpret ISO_Group_Latch+AnyOfOrNone(all) {
virtualModifier= AltGr;
useModMapMods=level1;
action= LatchGroup(group=2);
};
interpret ISO_Next_Group+AnyOfOrNone(all) {
virtualModifier= AltGr;
useModMapMods=level1;
action= LockGroup(group=+1);
};
interpret ISO_Prev_Group+AnyOfOrNone(all) {
virtualModifier= AltGr;
useModMapMods=level1;
action= LockGroup(group=-1);
};
interpret ISO_First_Group+AnyOfOrNone(all) {
action= LockGroup(group=1);
};
interpret ISO_Last_Group+AnyOfOrNone(all) {
action= LockGroup(group=2);
};
interpret KP_1+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=-1,y=+1);
};
interpret KP_End+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=-1,y=+1);
};
interpret KP_2+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+0,y=+1);
};
interpret KP_Down+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+0,y=+1);
};
interpret KP_3+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+1,y=+1);
};
interpret KP_Next+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+1,y=+1);
};
interpret KP_4+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=-1,y=+0);
};
interpret KP_Left+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=-1,y=+0);
};
interpret KP_6+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+1,y=+0);
};
interpret KP_Right+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+1,y=+0);
};
interpret KP_7+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=-1,y=-1);
};
interpret KP_Home+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=-1,y=-1);
};
interpret KP_8+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+0,y=-1);
};
interpret KP_Up+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+0,y=-1);
};
interpret KP_9+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+1,y=-1);
};
interpret KP_Prior+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+1,y=-1);
};
interpret KP_5+AnyOfOrNone(all) {
repeat= True;
action= PtrBtn(button=default);
};
interpret KP_Begin+AnyOfOrNone(all) {
repeat= True;
action= PtrBtn(button=default);
};
interpret KP_F2+AnyOfOrNone(all) {
repeat= True;
action= SetPtrDflt(affect=button,button=1);
};
interpret KP_Divide+AnyOfOrNone(all) {
repeat= True;
action= SetPtrDflt(affect=button,button=1);
};
interpret KP_F3+AnyOfOrNone(all) {
repeat= True;
action= SetPtrDflt(affect=button,button=2);
};
interpret KP_Multiply+AnyOfOrNone(all) {
repeat= True;
action= SetPtrDflt(affect=button,button=2);
};
interpret KP_F4+AnyOfOrNone(all) {
repeat= True;
action= SetPtrDflt(affect=button,button=3);
};
interpret KP_Subtract+AnyOfOrNone(all) {
repeat= True;
action= SetPtrDflt(affect=button,button=3);
};
interpret KP_Separator+AnyOfOrNone(all) {
repeat= True;
action= PtrBtn(button=default,count=2);
};
interpret KP_Add+AnyOfOrNone(all) {
repeat= True;
action= PtrBtn(button=default,count=2);
};
interpret KP_0+AnyOfOrNone(all) {
repeat= True;
action= LockPtrBtn(button=default,affect=lock);
};
interpret KP_Insert+AnyOfOrNone(all) {
repeat= True;
action= LockPtrBtn(button=default,affect=lock);
};
interpret KP_Decimal+AnyOfOrNone(all) {
repeat= True;
action= LockPtrBtn(button=default,affect=unlock);
};
interpret KP_Delete+AnyOfOrNone(all) {
repeat= True;
action= LockPtrBtn(button=default,affect=unlock);
};
interpret F25+AnyOfOrNone(all) {
repeat= True;
action= SetPtrDflt(affect=button,button=1);
};
interpret F26+AnyOfOrNone(all) {
repeat= True;
action= SetPtrDflt(affect=button,button=2);
};
interpret F27+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=-1,y=-1);
};
interpret F29+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+1,y=-1);
};
interpret F31+AnyOfOrNone(all) {
repeat= True;
action= PtrBtn(button=default);
};
interpret F33+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=-1,y=+1);
};
interpret F35+AnyOfOrNone(all) {
repeat= True;
action= MovePtr(x=+1,y=+1);
};
interpret Pointer_Button_Dflt+AnyOfOrNone(all) {
action= PtrBtn(button=default);
};
interpret Pointer_Button1+AnyOfOrNone(all) {
action= PtrBtn(button=1);
};
interpret Pointer_Button2+AnyOfOrNone(all) {
action= PtrBtn(button=2);
};
interpret Pointer_Button3+AnyOfOrNone(all) {
action= PtrBtn(button=3);
};
interpret Pointer_DblClick_Dflt+AnyOfOrNone(all) {
action= PtrBtn(button=default,count=2);
};
interpret Pointer_DblClick1+AnyOfOrNone(all) {
action= PtrBtn(button=1,count=2);
};
interpret Pointer_DblClick2+AnyOfOrNone(all) {
action= PtrBtn(button=2,count=2);
};
interpret Pointer_DblClick3+AnyOfOrNone(all) {
action= PtrBtn(button=3,count=2);
};
interpret Pointer_Drag_Dflt+AnyOfOrNone(all) {
action= LockPtrBtn(button=default,affect=both);
};
interpret Pointer_Drag1+AnyOfOrNone(all) {
action= LockPtrBtn(button=1,affect=both);
};
interpret Pointer_Drag2+AnyOfOrNone(all) {
action= LockPtrBtn(button=2,affect=both);
};
interpret Pointer_Drag3+AnyOfOrNone(all) {
action= LockPtrBtn(button=3,affect=both);
};
interpret Pointer_EnableKeys+AnyOfOrNone(all) {
action= LockControls(controls=MouseKeys);
};
interpret Pointer_Accelerate+AnyOfOrNone(all) {
action= LockControls(controls=MouseKeysAccel);
};
interpret Pointer_DfltBtnNext+AnyOfOrNone(all) {
action= SetPtrDflt(affect=button,button=+1);
};
interpret Pointer_DfltBtnPrev+AnyOfOrNone(all) {
action= SetPtrDflt(affect=button,button=-1);
};
interpret AccessX_Enable+AnyOfOrNone(all) {
action= LockControls(controls=AccessXKeys);
};
interpret AccessX_Feedback_Enable+AnyOfOrNone(all) {
action= LockControls(controls=AccessXFeedback);
};
interpret RepeatKeys_Enable+AnyOfOrNone(all) {
action= LockControls(controls=RepeatKeys);
};
interpret SlowKeys_Enable+AnyOfOrNone(all) {
action= LockControls(controls=SlowKeys);
};
interpret BounceKeys_Enable+AnyOfOrNone(all) {
action= LockControls(controls=BounceKeys);
};
interpret StickyKeys_Enable+AnyOfOrNone(all) {
action= LockControls(controls=StickyKeys);
};
interpret MouseKeys_Enable+AnyOfOrNone(all) {
action= LockControls(controls=MouseKeys);
};
interpret MouseKeys_Accel_Enable+AnyOfOrNone(all) {
action= LockControls(controls=MouseKeysAccel);
};
interpret Overlay1_Enable+AnyOfOrNone(all) {
action= LockControls(controls=Overlay1);
};
interpret Overlay2_Enable+AnyOfOrNone(all) {
action= LockControls(controls=Overlay2);
};
interpret AudibleBell_Enable+AnyOfOrNone(all) {
action= LockControls(controls=AudibleBell);
};
interpret Terminate_Server+AnyOfOrNone(all) {
action= Terminate();
};
interpret Alt_L+AnyOfOrNone(all) {
action= SetMods(modifiers=Alt,clearLocks);
};
interpret Alt_R+AnyOfOrNone(all) {
action= SetMods(modifiers=Alt,clearLocks);
};
interpret Meta_L+AnyOfOrNone(all) {
action= SetMods(modifiers=Meta,clearLocks);
};
interpret Meta_R+AnyOfOrNone(all) {
action= SetMods(modifiers=Meta,clearLocks);
};
interpret Super_L+AnyOfOrNone(all) {
action= SetMods(modifiers=Super,clearLocks);
};
interpret Super_R+AnyOfOrNone(all) {
action= SetMods(modifiers=Super,clearLocks);
};
interpret Hyper_L+AnyOfOrNone(all) {
action= SetMods(modifiers=Hyper,clearLocks);
};
interpret Hyper_R+AnyOfOrNone(all) {
action= SetMods(modifiers=Hyper,clearLocks);
};
interpret Shift_L+AnyOfOrNone(all) {
action= SetMods(modifiers=Shift,clearLocks);
};
interpret XF86Switch_VT_1+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=1,!same);
};
interpret XF86Switch_VT_2+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=2,!same);
};
interpret XF86Switch_VT_3+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=3,!same);
};
interpret XF86Switch_VT_4+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=4,!same);
};
interpret XF86Switch_VT_5+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=5,!same);
};
interpret XF86Switch_VT_6+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=6,!same);
};
interpret XF86Switch_VT_7+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=7,!same);
};
interpret XF86Switch_VT_8+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=8,!same);
};
interpret XF86Switch_VT_9+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=9,!same);
};
interpret XF86Switch_VT_10+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=10,!same);
};
interpret XF86Switch_VT_11+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=11,!same);
};
interpret XF86Switch_VT_12+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=12,!same);
};
interpret XF86LogGrabInfo+AnyOfOrNone(all) {
repeat= True;
action= Private(type=0x86,data[0]=0x50,data[1]=0x72,data[2]=0x47,data[3]=0x72,data[4]=0x62,data[5]=0x73,data[6]=0x00);
};
interpret XF86LogWindowTree+AnyOfOrNone(all) {
repeat= True;
action= Private(type=0x86,data[0]=0x50,data[1]=0x72,data[2]=0x57,data[3]=0x69,data[4]=0x6e,data[5]=0x73,data[6]=0x00);
};
interpret XF86Next_VMode+AnyOfOrNone(all) {
repeat= True;
action= Private(type=0x86,data[0]=0x2b,data[1]=0x56,data[2]=0x4d,data[3]=0x6f,data[4]=0x64,data[5]=0x65,data[6]=0x00);
};
interpret XF86Prev_VMode+AnyOfOrNone(all) {
repeat= True;
action= Private(type=0x86,data[0]=0x2d,data[1]=0x56,data[2]=0x4d,data[3]=0x6f,data[4]=0x64,data[5]=0x65,data[6]=0x00);
};
interpret ISO_Level5_Shift+AnyOfOrNone(all) {
action= SetMods(modifiers=LevelFive,clearLocks);
};
interpret ISO_Level5_Latch+AnyOfOrNone(all) {
action= LatchMods(modifiers=LevelFive,clearLocks,latchToLock);
};
interpret ISO_Level5_Lock+AnyOfOrNone(all) {
action= LockMods(modifiers=LevelFive);
};
interpret Caps_Lock+AnyOfOrNone(all) {
action= LockMods(modifiers=Lock);
};
interpret Any+Exactly(Lock) {
action= LockMods(modifiers=Lock);
};
interpret Any+AnyOf(all) {
action= SetMods(modifiers=modMapMods,clearLocks);
};
group 2 = AltGr;
group 3 = AltGr;
group 4 = AltGr;
indicator "Caps Lock" {
!allowExplicit;
whichModState= locked;
modifiers= Lock;
};
indicator "Num Lock" {
!allowExplicit;
whichModState= locked;
modifiers= NumLock;
};
indicator "Scroll Lock" {
whichModState= locked;
modifiers= ScrollLock;
};
indicator "Shift Lock" {
!allowExplicit;
whichModState= locked;
modifiers= Shift;
};
indicator "Group 2" {
!allowExplicit;
groups= 0xfe;
};
indicator "Mouse Keys" {
indicatorDrivesKeyboard;
controls= mouseKeys;
};
};
xkb_symbols "pc+gb+inet(evdev)+group(switch)" {
name[group1]="English (UK)";
key <ESC> { [ Escape ] };
key <AE01> {
type= "FOUR_LEVEL",
symbols[Group1]= [ 1, exclam, NoSymbol, NoSymbol ],
symbols[Group2]= [ paragraph, section ]
};
key <AE02> {
type[group1]= "FOUR_LEVEL",
symbols[Group1]= [ 2, at, NoSymbol, NoSymbol ],
symbols[Group2]= [ U20AC, U00BD ]
};
key <AE03> {
type[group1]= "FOUR_LEVEL",
symbols[Group1]= [ 3, numbersign, NoSymbol, NoSymbol ],
symbols[Group2]= [ sterling, U2153 ]
};
key <AE04> {
type= "FOUR_LEVEL",
symbols[Group1]= [ 4, dollar, NoSymbol, NoSymbol ],
symbols[Group2]= [ U00BC ]
};
key <AE05> {
type= "FOUR_LEVEL",
symbols[Group1]= [ 5, percent, NoSymbol, NoSymbol ],
symbols[Group2]= [ U00B0, U2022 ]
};
key <AE06> {
type= "FOUR_LEVEL",
symbols[Group1]= [ 6, asciicircum, NoSymbol, NoSymbol ],
symbols[Group2]= [ U2460, U2465 ]
};
key <AE07> {
type= "FOUR_LEVEL",
symbols[Group1]= [ 7, ampersand, NoSymbol, NoSymbol ],
symbols[Group2]= [ U2461, U2466 ]
};
key <AE08> {
type= "FOUR_LEVEL",
symbols[Group1]= [ 8, asterisk, NoSymbol, NoSymbol ],
symbols[Group2]= [ U2462, U2467 ]
};
key <AE09> {
type= "FOUR_LEVEL",
symbols[Group1]= [ 9, parenleft, guillemotleft, NoSymbol ],
symbols[Group2]= [ U2463, guillemotleft ]
};
key <AE10> {
type= "FOUR_LEVEL",
symbols[Group1]= [ 0, parenright, guillemotright, NoSymbol ],
symbols[Group2]= [ U2464, guillemotright ]
};
key <AE11> {
type[group1]= "FOUR_LEVEL",
symbols[Group1]= [ slash, question, asciitilde, questiondown ],
symbols[Group2]= [ asciitilde, questiondown ]
};
key <AE12> {
type[group1]= "FOUR_LEVEL",
symbols[Group1]= [ equal, plus, dagger, brokenbar ],
symbols[Group2]= [ dagger, U2021 ],
symbols[Group3]= [ bar ]
};
key <BKSP> { [ BackSpace ] };
key <TAB> { [ Tab, ISO_Left_Tab ] };
key <AD01> {
type[group1]= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ apostrophe, quotedbl, grave, dead_diaeresis ],
symbols[Group2]= [ grave ],
symbols[Group3]= [ grave ]
};
key <AD02> {
type[group1]= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ comma, less, BackSpace, NoSymbol ],
symbols[Group2]= [ BackSpace ]
};
key <AD03> {
type[group1]= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ period, greater, Up, NoSymbol ],
symbols[Group2]= [ Up ]
};
key <AD04> {
type[group1]= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ p, P, Delete, NoSymbol ],
symbols[Group2]= [ Delete ]
};
key <AD05> {
type= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ y, Y, U2713 ],
symbols[Group2]= [ U2713 ]
};
key <AD06> {
type= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ f, F, NoSymbol, NoSymbol ]
};
key <AD07> {
type[group1]= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ g, G, BackSpace, NoSymbol ],
symbols[Group2]= [ BackSpace ]
};
key <AD08> {
type= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ c, C, NoSymbol, NoSymbol ],
symbols[Group2]= [ Up ]
};
key <AD09> {
type[group1]= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ r, R, Delete, NoSymbol ],
symbols[Group2]= [ Delete ]
};
key <AD10> {
type= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ l, L, NoSymbol, NoSymbol ]
};
key <AD11> { [ Hyper_L ]};
key <AD12> { [ Super_L ]};
key <RTRN> { [ Return ] };
key <LCTL> { [ NoSymbol ] };
key <AC01> {
type= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ a, A, NoSymbol, NoSymbol ]
};
key <AC02> {
type[group1]= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ o, O, Left, NoSymbol ],
symbols[Group2]= [ Left ]
};
key <AC03> {
type[group1]= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ e, E, Down, NoSymbol ],
symbols[Group2]= [ Down ]
};
key <AC04> {
type[group1]= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ u, U, Right, NoSymbol ],
symbols[Group2]= [ Right ]
};
key <AC05> {
type= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ i, I, U2718, NoSymbol ],
symbols[Group2]= [ U2718 ]
};
key <AC06> {
type= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ d, D, NoSymbol, NoSymbol ]
};
key <AC07> {
type= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ h, H, NoSymbol, NoSymbol ],
symbols[Group2]= [ Left ]
};
key <AC08> {
type= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ t, T, NoSymbol, NoSymbol ],
symbols[Group2]= [ Down ]
};
key <AC09> {
type= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ n, N, NoSymbol, NoSymbol ],
symbols[Group2]= [ Right ]
};
key <AC10> {
type= "FOUR_LEVEL",
symbols[Group1]= [ s, S, NoSymbol, NoSymbol ]
};
key <AC11> {
type= "FOUR_LEVEL",
symbols[Group1]= [ minus, underscore, emdash, NoSymbol ],
symbols[Group2]= [ emdash ]
};
key <TLDE> { [ Super_R ]};
key <LFSH> { [ Shift_L ] };
key <BKSL> {
type= "FOUR_LEVEL",
symbols[Group1]= [ backslash, bar, NoSymbol, NoSymbol ]
};
key <AB01> {
type[group1]= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ semicolon, colon, dead_ogonek, dead_doubleacute ],
symbols[Group2]= [ bracketleft, colon ],
symbols[Group3]= [ dead_ogonek ]
};
key <AB02> {
type[group1]= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ q, Q, NoSymbol, NoSymbol ],
symbols[Group2]= [ bracketright, Q ]
};
key <AB03> {
type= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ j, J, NoSymbol, NoSymbol ],
symbols[Group2]= [ braceleft, J ]
};
key <AB04> {
type= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ k, K, NoSymbol, NoSymbol ],
symbols[Group2]= [ braceright, K ]
};
key <AB05> {
type= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ x, X, NoSymbol, NoSymbol ],
symbols[Group2]= [ U2192, X ]
};
key <AB06> {
type= "FOUR_LEVEL_ALPHABETIC",
symbols[Group1]= [ b, B, NoSymbol, NoSymbol ],
symbols[Group2]=[U2248]
};
key <AB07> {
type= "FOUR_LEVEL_SEMIALPHABETIC",
symbols[Group1]= [ m, M, NoSymbol, NoSymbol ],
symbols[Group2]= [ braceleft, J ]
};
key <AB08> {
type= "FOUR_LEVEL",
symbols[Group1]= [ w, W, NoSymbol, NoSymbol ],
symbols[Group2]= [ braceright, w ]
};
key <AB09> {
type= "FOUR_LEVEL",
symbols[Group1]= [ v, V, NoSymbol, NoSymbol ],
symbols[Group2]= [ bracketleft, v ]
};
key <AB10> {
type= "FOUR_LEVEL",
symbols[Group1]= [ z, Z, NoSymbol, NoSymbol ],
symbols[Group2]= [ bracketright, z ]
};
key <RTSH> { [ Shift_R ] };
key <KPMU> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ KP_Multiply, KP_Multiply, KP_Multiply, KP_Multiply, XF86ClearGrab ],
symbols[Group2]= [ KP_Multiply, KP_Multiply ]
};
key <LALT> { [ Alt_L, Meta_L ] };
key <SPCE> { [ space ] };
key <CAPS> { [ Insert, Insert ] };
key <FK01> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F1, F1, F1, XF86Switch_VT_1, NoSymbol ],
symbols[Group2]= [ F1, F1 ]
};
key <FK02> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F2, F2, F2, XF86Switch_VT_2, NoSymbol ],
symbols[Group2]= [ F2, F2 ]
};
key <FK03> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F3, F3, F3, XF86Switch_VT_3, NoSymbol ],
symbols[Group2]= [ F3, F3 ]
};
key <FK04> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F4, F4, F4, XF86Switch_VT_4, NoSymbol ],
symbols[Group2]= [ F4, F4 ]
};
key <FK05> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F5, F5, F5, XF86Switch_VT_5, NoSymbol ],
symbols[Group2]= [ F5, F5 ]
};
key <FK06> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F6, F6, F6, XF86Switch_VT_6, NoSymbol ],
symbols[Group2]= [ F6, F6 ]
};
key <FK07> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F7, F7, F7, XF86Switch_VT_7, NoSymbol ],
symbols[Group2]= [ F7, F7 ]
};
key <FK08> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F8, F8, F8, XF86Switch_VT_8, NoSymbol ],
symbols[Group2]= [ F8, F8 ]
};
key <FK09> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F9, F9, F9, XF86Switch_VT_9, NoSymbol ],
symbols[Group2]= [ F9, F9 ]
};
key <FK10> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F10, F10, F10, XF86Switch_VT_10, NoSymbol ],
symbols[Group2]= [ F10, F10 ]
};
key <NMLK> { [ Num_Lock ] };
key <SCLK> { [ Scroll_Lock ] };
key <KP7> { [ KP_Home, KP_7 ] };
key <KP8> { [ KP_Up, KP_8 ] };
key <KP9> { [ KP_Prior, KP_9 ] };
key <KPSU> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ KP_Subtract, KP_Subtract, KP_Subtract, KP_Subtract, XF86Prev_VMode ],
symbols[Group2]= [ KP_Subtract, KP_Subtract ]
};
key <KP4> { [ KP_Left, KP_4 ] };
key <KP5> { [ KP_Begin, KP_5 ] };
key <KP6> { [ KP_Right, KP_6 ] };
key <KPAD> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ KP_Add, KP_Add, KP_Add, KP_Add, XF86Next_VMode ],
symbols[Group2]= [ KP_Add, KP_Add ]
};
key <KP1> { [ KP_End, KP_1 ] };
key <KP2> { [ KP_Down, KP_2 ] };
key <KP3> { [ KP_Next, KP_3 ] };
key <KP0> { [ KP_Insert, KP_0 ] };
key <KPDL> { [ KP_Delete, KP_Decimal ] };
key <LVL3> {
type= "ONE_LEVEL",
symbols[Group1]= [ ISO_Level3_Shift ]
};
key <LSGT> {
type[group1]= "FOUR_LEVEL",
symbols[Group1]= [ Hyper_L, dagger, brokenbar, bar ],
symbols[Group2]= [ dagger, U2021 ],
symbols[Group3]= [ bar ]
};
key <FK11> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ F11, F11, F11, F11, XF86Switch_VT_11 ],
symbols[Group2]= [ F11, F11 ]
};
key <FK12> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ section, section, section, section, XF86Switch_VT_12 ],
symbols[Group2]= [ section, section ]
};
key <KATA> { [ Katakana ] };
key <HIRA> { [ Hiragana ] };
key <HENK> { [ Henkan_Mode ] };
key <HKTG> { [ Hiragana_Katakana ] };
key <MUHE> { [ Muhenkan ] };
key <KPEN> { [ KP_Enter ] };
key <RCTL> { [ Control_R ] };
key <KPDV> {
type[group1]= "CTRL+ALT",
symbols[Group1]= [ KP_Divide, KP_Divide, KP_Divide, KP_Divide, XF86Ungrab ],
symbols[Group2]= [ KP_Divide, KP_Divide ]
};
key <PRSC> {
type= "PC_ALT_LEVEL2",
symbols[Group1]= [ Print, Sys_Req ],
symbols[Group2]= [ Insert ]
};
key <RALT> {
type= "TWO_LEVEL",
symbols[Group1]= [ Alt_R, Meta_R ]
};
key <LNFD> { [ Linefeed ] };
key <HOME> { [ Help ] };
key <UP> { [ Meta_R ] };
key <PGUP> { [ Help ] };
key <LEFT> { [ Control_R ] };
key <RGHT> { [ Meta_L ] };
key <END> { [ End ] };
key <DOWN> { [ Control_R ] };
key <PGDN> { [ Next ] };
key <INS> { [ Hyper_L ] };
key <DELE> { [ Mode_switch ] };
key <MUTE> {
symbols[Group1]= [ 0, XF86AudioMute ],
symbols[Group2]= [ NoSymbol, XF86AudioMute ]
};
key <VOL-> { [ XF86AudioLowerVolume ] };
key <VOL+> { [ XF86AudioRaiseVolume ] };
key <POWR> { [ XF86PowerOff ] };
key <KPEQ> { [ KP_Equal ] };
key <I126> { [ plusminus ] };
key <PAUS> {
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Pause, Break ]
};
key <I128> {
symbols[Group1]= [ 3, XF86LaunchA ],
symbols[Group2]= [ NoSymbol, XF86LaunchA ]
};
key <I129> { [ KP_Decimal, KP_Decimal ] };
key <HNGL> { [ Hangul ] };
key <HJCV> { [ Hangul_Hanja ] };
key <LWIN> { [ Super_L ] };
key <RWIN> { [ Super_R ] };
key <COMP> { [ Menu ] };
key <STOP> { [ Cancel ] };
key <AGAI> { [ Redo ] };
key <PROP> { [ SunProps ] };
key <UNDO> { [ Undo ] };
key <FRNT> { [ SunFront ] };
key <COPY> { [ XF86Copy ] };
key <OPEN> { [ XF86Open ] };
key <PAST> { [ XF86Paste ] };
key <FIND> { [ Find ] };
key <CUT> { [ XF86Cut ] };
key <HELP> { [ Help ] };
key <I147> { [ XF86MenuKB ] };
key <I148> { [ XF86Calculator ] };
key <I150> { [ XF86Sleep ] };
key <I151> { [ XF86WakeUp ] };
key <I152> { [ XF86Explorer ] };
key <I153> { [ XF86Send ] };
key <I155> { [ XF86Xfer ] };
key <I156> { [ XF86Launch1 ] };
key <I157> { [ XF86Launch2 ] };
key <I158> { [ XF86WWW ] };
key <I159> { [ XF86DOS ] };
key <I160> { [ XF86ScreenSaver ] };
key <I162> { [ XF86RotateWindows ] };
key <I163> { [ XF86Mail ] };
key <I164> { [ XF86Favorites ] };
key <I165> { [ XF86MyComputer ] };
key <I166> { [ XF86Back ] };
key <I167> { [ XF86Forward ] };
key <I169> { [ XF86Eject ] };
key <I170> { [ XF86Eject, XF86Eject ] };
key <I171> {
symbols[Group1]= [ 9, XF86AudioNext ],
symbols[Group2]= [ NoSymbol, XF86AudioNext ]
};
key <I172> {
symbols[Group1]= [ 8, XF86AudioPlay ],
symbols[Group2]= [ XF86AudioPause, XF86AudioPlay ],
symbols[Group3]= [ XF86AudioPause ]
};
key <I173> {
symbols[Group1]= [ 7, XF86AudioPrev ],
symbols[Group2]= [ NoSymbol, XF86AudioPrev ]
};
key <I174> { [ XF86AudioStop, XF86Eject ] };
key <I175> { [ XF86AudioRecord ] };
key <I176> { [ XF86AudioRewind ] };
key <I177> { [ XF86Phone ] };
key <I179> { [ XF86Tools ] };
key <I180> { [ XF86HomePage ] };
key <I181> { [ XF86Reload ] };
key <I182> { [ XF86Close ] };
key <I185> { [ XF86ScrollUp ] };
key <I186> { [ XF86ScrollDown ] };
key <I187> { [ parenleft ] };
key <I188> { [ parenright ] };
key <I189> { [ XF86New ] };
key <I190> { [ Redo ] };
key <FK13> { [ XF86Tools ] };
key <FK14> { [ XF86Launch5 ] };
key <FK15> { [ XF86Launch6 ] };
key <FK16> { [ XF86Launch7 ] };
key <FK17> { [ XF86Launch8 ] };
key <FK18> { [ XF86Launch9 ] };
key <FK20> { [ XF86AudioMicMute ] };
key <FK21> { [ XF86TouchpadToggle ] };
key <FK22> { [ XF86TouchpadOn ] };
key <FK23> { [ XF86TouchpadOff ] };
key <MDSW> { [ Mode_switch ] };
key <ALT> { [ NoSymbol, Alt_L ] };
key <META> { [ NoSymbol, Meta_L ] };
key <SUPR> { [ NoSymbol, Super_L ] };
key <HYPR> { [ NoSymbol, Hyper_L ] };
key <I208> { [ XF86AudioPlay ] };
key <I209> { [ XF86AudioPause ] };
key <I210> { [ XF86Launch3 ] };
key <I211> { [ XF86Launch4 ] };
key <I212> {
symbols[Group1]= [ 4, XF86LaunchB ],
symbols[Group2]= [ NoSymbol, XF86LaunchB ]
};
key <I213> { [ XF86Suspend ] };
key <I214> { [ XF86Close ] };
key <I215> { [ XF86AudioPlay ] };
key <I216> { [ XF86AudioForward ] };
key <I218> { [ Print ] };
key <I220> { [ XF86WebCam ] };
key <I223> { [ XF86Mail ] };
key <I224> { [ XF86Messenger ] };
key <I225> { [ XF86Search ] };
key <I226> { [ XF86Go ] };
key <I227> { [ XF86Finance ] };
key <I228> { [ XF86Game ] };
key <I229> { [ XF86Shop ] };
key <I231> { [ Cancel ] };
key <I232> {
symbols[Group1]= [ 1, XF86MonBrightnessDown ],
symbols[Group2]= [ NoSymbol, XF86MonBrightnessDown ]
};
key <I233> {
symbols[Group1]= [ 2, XF86MonBrightnessUp ],
symbols[Group2]= [ NoSymbol, XF86MonBrightnessUp ]
};
key <I234> { [ XF86AudioMedia ] };
key <I235> { [ XF86Display ] };
key <I236> { [ XF86KbdLightOnOff ] };
key <I237> {
symbols[Group1]= [ 5, XF86KbdBrightnessDown ],
symbols[Group2]= [ NoSymbol, XF86KbdBrightnessDown ]
};
key <I238> {
symbols[Group1]= [ 6, XF86KbdBrightnessUp ],
symbols[Group2]= [ NoSymbol, XF86KbdBrightnessUp ]
};
key <I239> { [ XF86Send ] };
key <I240> { [ XF86Reply ] };
key <I241> { [ XF86MailForward ] };
key <I242> { [ XF86Save ] };
key <I243> { [ XF86Documents ] };
key <I244> { [ XF86Battery ] };
key <I245> { [ XF86Bluetooth ] };
key <I246> { [ XF86WLAN ] };
modifier_map Control { <LCTL> };
modifier_map Control { <RCTL> };
modifier_map Control { <LEFT> };
modifier_map Control { <DOWN> };
modifier_map Shift { <LFSH> };
modifier_map Shift { <RTSH> };
modifier_map Mod1 { <META> };
modifier_map Mod1 { <LALT> };
modifier_map Mod1 { <RALT> };
modifier_map Mod2 { <MDSW> };
modifier_map Mod2 { <DELE> };
modifier_map Mod3 { <TLDE> };
modifier_map Mod4 { <AD11> };
}
;
xkb_geometry "pc(pc104)" {
width= 470;
height= 180;
alias <AC00> = <CAPS>;
alias <AA00> = <LCTL>;
baseColor= "white";
labelColor= "black";
xfont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1";
description= "Generic 104";
shape "NORM" {
corner= 1,
{ [ 18, 18 ] },
{ [ 2, 1 ], [ 16, 16 ] }
};
shape "BKSP" {
corner= 1,
{ [ 38, 18 ] },
{ [ 2, 1 ], [ 36, 16 ] }
};
shape "TABK" {
corner= 1,
{ [ 28, 18 ] },
{ [ 2, 1 ], [ 26, 16 ] }
};
shape "BKSL" {
corner= 1,
{ [ 28, 18 ] },
{ [ 2, 1 ], [ 26, 16 ] }
};
shape "RTRN" {
corner= 1,
{ [ 42, 18 ] },
{ [ 2, 1 ], [ 40, 16 ] }
};
shape "CAPS" {
corner= 1,
{ [ 33, 18 ] },
{ [ 2, 1 ], [ 31, 16 ] }
};
shape "LFSH" {
corner= 1,
{ [ 42, 18 ] },
{ [ 2, 1 ], [ 40, 16 ] }
};
shape "RTSH" {
corner= 1,
{ [ 52, 18 ] },
{ [ 2, 1 ], [ 50, 16 ] }
};
shape "MODK" {
corner= 1,
{ [ 27, 18 ] },
{ [ 2, 1 ], [ 25, 16 ] }
};
shape "SMOD" {
corner= 1,
{ [ 23, 18 ] },
{ [ 2, 1 ], [ 21, 16 ] }
};
shape "SPCE" {
corner= 1,
{ [ 113, 18 ] },
{ [ 2, 1 ], [ 111, 16 ] }
};
shape "KP0" {
corner= 1,
{ [ 37, 18 ] },
{ [ 2, 1 ], [ 35, 16 ] }
};
shape "KPAD" {
corner= 1,
{ [ 18, 37 ] },
{ [ 2, 1 ], [ 16, 35 ] }
};
shape "LEDS" { { [ 75, 20 ] } };
shape "LED" { { [ 5, 1 ] } };
section "Function" {
key.color= "grey20";
priority= 7;
top= 22;
left= 19;
width= 351;
height= 19;
row {
top= 1;
left= 1;
keys {
{ <ESC>, "NORM", 1 },
{ <FK01>, "NORM", 20, color="white" },
{ <FK02>, "NORM", 1, color="white" },
{ <FK03>, "NORM", 1, color="white" },
{ <FK04>, "NORM", 1, color="white" },
{ <FK05>, "NORM", 11, color="white" },
{ <FK06>, "NORM", 1, color="white" },
{ <FK07>, "NORM", 1, color="white" },
{ <FK08>, "NORM", 1, color="white" },
{ <FK09>, "NORM", 11, color="white" },
{ <FK10>, "NORM", 1, color="white" },
{ <FK11>, "NORM", 1, color="white" },
{ <FK12>, "NORM", 1, color="white" },
{ <PRSC>, "NORM", 8, color="white" },
{ <SCLK>, "NORM", 1, color="white" },
{ <PAUS>, "NORM", 1, color="white" }
};
};
}; // End of "Function" section
section "Alpha" {
key.color= "white";
priority= 8;
top= 61;
left= 19;
width= 287;
height= 95;
row {
top= 1;
left= 1;
keys {
{ <TLDE>, "NORM", 1 }, { <AE01>, "NORM", 1 },
{ <AE02>, "NORM", 1 }, { <AE03>, "NORM", 1 },
{ <AE04>, "NORM", 1 }, { <AE05>, "NORM", 1 },
{ <AE06>, "NORM", 1 }, { <AE07>, "NORM", 1 },
{ <AE08>, "NORM", 1 }, { <AE09>, "NORM", 1 },
{ <AE10>, "NORM", 1 }, { <AE11>, "NORM", 1 },
{ <AE12>, "NORM", 1 },
{ <BKSP>, "BKSP", 1, color="grey20" }
};
};
row {
top= 20;
left= 1;
keys {
{ <TAB>, "TABK", 1, color="grey20" },
{ <AD01>, "NORM", 1 }, { <AD02>, "NORM", 1 },
{ <AD03>, "NORM", 1 }, { <AD04>, "NORM", 1 },
{ <AD05>, "NORM", 1 }, { <AD06>, "NORM", 1 },
{ <AD07>, "NORM", 1 }, { <AD08>, "NORM", 1 },
{ <AD09>, "NORM", 1 }, { <AD10>, "NORM", 1 },
{ <AD11>, "NORM", 1 }, { <AD12>, "NORM", 1 },
{ <BKSL>, "BKSL", 1 }
};
};
row {
top= 39;
left= 1;
keys {
{ <CAPS>, "CAPS", 1, color="grey20" },
{ <AC01>, "NORM", 1 }, { <AC02>, "NORM", 1 },
{ <AC03>, "NORM", 1 }, { <AC04>, "NORM", 1 },
{ <AC05>, "NORM", 1 }, { <AC06>, "NORM", 1 },
{ <AC07>, "NORM", 1 }, { <AC08>, "NORM", 1 },
{ <AC09>, "NORM", 1 }, { <AC10>, "NORM", 1 },
{ <AC11>, "NORM", 1 },
{ <RTRN>, "RTRN", 1, color="grey20" }
};
};
row {
top= 58;
left= 1;
keys {
{ <LFSH>, "LFSH", 1, color="grey20" },
{ <AB01>, "NORM", 1 }, { <AB02>, "NORM", 1 },
{ <AB03>, "NORM", 1 }, { <AB04>, "NORM", 1 },
{ <AB05>, "NORM", 1 }, { <AB06>, "NORM", 1 },
{ <AB07>, "NORM", 1 }, { <AB08>, "NORM", 1 },
{ <AB09>, "NORM", 1 }, { <AB10>, "NORM", 1 },
{ <RTSH>, "RTSH", 1, color="grey20" }
};
};
row {
top= 77;
left= 1;
keys {
{ <LCTL>, "MODK", 1, color="grey20" },
{ <LWIN>, "SMOD", 1, color="grey20" },
{ <LALT>, "SMOD", 1, color="grey20" },
{ <SPCE>, "SPCE", 1 },
{ <RALT>, "SMOD", 1, color="grey20" },
{ <RWIN>, "SMOD", 1, color="grey20" },
{ <MENU>, "SMOD", 1, color="grey20" },
{ <RCTL>, "SMOD", 1, color="grey20" }
};
};
}; // End of "Alpha" section
section "Editing" {
key.color= "grey20";
priority= 9;
top= 61;
left= 312;
width= 58;
height= 95;
row {
top= 1;
left= 1;
keys {
{ <INS>, "NORM", 1 }, { <HOME>, "NORM", 1 },
{ <PGUP>, "NORM", 1 }
};
};
row {
top= 20;
left= 1;
keys {
{ <DELE>, "NORM", 1 }, { <END>, "NORM", 1 },
{ <PGDN>, "NORM", 1 }
};
};
row {
top= 58;
left= 20;
keys {
{ <UP>, "NORM", 1 }
};
};
row {
top= 77;
left= 1;
keys {
{ <LEFT>, "NORM", 1 }, { <DOWN>, "NORM", 1 },
{ <RGHT>, "NORM", 1 }
};
};
}; // End of "Editing" section
section "Keypad" {
key.color= "grey20";
priority= 10;
top= 61;
left= 376;
width= 77;
height= 95;
row {
top= 1;
left= 1;
keys {
{ <NMLK>, "NORM", 1 }, { <KPDV>, "NORM", 1 },
{ <KPMU>, "NORM", 1 }, { <KPSU>, "NORM", 1 }
};
};
row {
top= 20;
left= 1;
keys {
{ <KP7>, "NORM", 1, color="white" },
{ <KP8>, "NORM", 1, color="white" },
{ <KP9>, "NORM", 1, color="white" },
{ <KPAD>, "KPAD", 1 }
};
};
row {
top= 39;
left= 1;
keys {
{ <KP4>, "NORM", 1, color="white" },
{ <KP5>, "NORM", 1, color="white" },
{ <KP6>, "NORM", 1, color="white" }
};
};
row {
top= 58;
left= 1;
keys {
{ <KP1>, "NORM", 1, color="white" },
{ <KP2>, "NORM", 1, color="white" },
{ <KP3>, "NORM", 1, color="white" },
{ <KPEN>, "KPAD", 1 }
};
};
row {
top= 77;
left= 1;
keys {
{ <KP0>, "KP0", 1, color="white" },
{ <KPDL>, "NORM", 1, color="white" }
};
};
}; // End of "Keypad" section
solid "LedPanel" {
top= 22;
left= 377;
priority= 0;
color= "grey10";
shape= "LEDS";
};
indicator "Num Lock" {
top= 37;
left= 382;
priority= 1;
onColor= "green";
offColor= "green30";
shape= "LED";
};
indicator "Caps Lock" {
top= 37;
left= 407;
priority= 2;
onColor= "green";
offColor= "green30";
shape= "LED";
};
indicator "Scroll Lock" {
top= 37;
left= 433;
priority= 3;
onColor= "green";
offColor= "green30";
shape= "LED";
};
text "NumLockLabel" {
top= 25;
left= 378;
priority= 4;
width= 19.8;
height= 10;
XFont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1";
text= "Num\nLock";
};
text "CapsLockLabel" {
top= 25;
left= 403;
priority= 5;
width= 26.4;
height= 10;
XFont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1";
text= "Caps\nLock";
};
text "ScrollLockLabel" {
top= 25;
left= 428;
priority= 6;
width= 39.6;
height= 10;
XFont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1";
text= "Scroll\nLock";
};
};
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment