--- /dev/null
+xkb_keymap {\r
+xkb_keycodes "empty_aliases(qwerty)" {\r
+ minimum = 8;\r
+ maximum = 255;\r
+ virtual indicator 1 = "Caps Lock";\r
+ virtual indicator 2 = "Num Lock";\r
+ virtual indicator 3 = "Shift Lock";\r
+ virtual indicator 4 = "Group 2";\r
+ virtual indicator 5 = "Mouse Keys";\r
+ virtual indicator 6 = "Scroll Lock";\r
+};\r
+\r
+xkb_types "complete" {\r
+\r
+ virtual_modifiers NumLock,Alt,LevelThree,LAlt,RAlt,RControl,LControl,ScrollLock,LevelFive,AltGr,Meta,Super,Hyper;\r
+\r
+ type "ONE_LEVEL" {\r
+ modifiers= none;\r
+ level_name[Level1]= "Any";\r
+ };\r
+ type "TWO_LEVEL" {\r
+ modifiers= Shift;\r
+ map[Shift]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ };\r
+ type "ALPHABETIC" {\r
+ modifiers= Shift+Lock;\r
+ map[Shift]= Level2;\r
+ map[Lock]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Caps";\r
+ };\r
+ type "KEYPAD" {\r
+ modifiers= Shift+NumLock;\r
+ map[Shift]= Level2;\r
+ map[NumLock]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Number";\r
+ };\r
+ type "SHIFT+ALT" {\r
+ modifiers= Shift+Alt;\r
+ map[Shift+Alt]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift+Alt";\r
+ };\r
+ type "PC_CONTROL_LEVEL2" {\r
+ modifiers= Control;\r
+ map[Control]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Control";\r
+ };\r
+ type "PC_LCONTROL_LEVEL2" {\r
+ modifiers= LControl;\r
+ map[LControl]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "LControl";\r
+ };\r
+ type "PC_RCONTROL_LEVEL2" {\r
+ modifiers= RControl;\r
+ map[RControl]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "RControl";\r
+ };\r
+ type "PC_ALT_LEVEL2" {\r
+ modifiers= Alt;\r
+ map[Alt]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Alt";\r
+ };\r
+ type "PC_LALT_LEVEL2" {\r
+ modifiers= LAlt;\r
+ map[LAlt]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "LAlt";\r
+ };\r
+ type "PC_RALT_LEVEL2" {\r
+ modifiers= RAlt;\r
+ map[RAlt]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "RAlt";\r
+ };\r
+ type "CTRL+ALT" {\r
+ modifiers= Control+Alt;\r
+ map[Control+Alt]= Level2;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Ctrl+Alt";\r
+ };\r
+ type "LOCAL_EIGHT_LEVEL" {\r
+ modifiers= Shift+Lock+Control+LevelThree;\r
+ map[Shift]= Level2;\r
+ map[Lock]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+Lock+LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ map[Lock+LevelThree]= Level4;\r
+ map[Control]= Level5;\r
+ map[Shift+Lock+Control]= Level5;\r
+ map[Shift+Control]= Level6;\r
+ map[Lock+Control]= Level6;\r
+ map[Control+LevelThree]= Level7;\r
+ map[Shift+Lock+Control+LevelThree]= Level7;\r
+ map[Shift+Control+LevelThree]= Level8;\r
+ map[Lock+Control+LevelThree]= Level8;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ level_name[Level3]= "Level3";\r
+ level_name[Level4]= "Shift Level3";\r
+ level_name[Level5]= "Ctrl";\r
+ level_name[Level6]= "Shift Ctrl";\r
+ level_name[Level7]= "Level3 Ctrl";\r
+ level_name[Level8]= "Shift Level3 Ctrl";\r
+ };\r
+ type "THREE_LEVEL" {\r
+ modifiers= Shift+LevelThree;\r
+ map[Shift]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level3;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ level_name[Level3]= "Level3";\r
+ };\r
+ type "EIGHT_LEVEL" {\r
+ modifiers= Shift+LevelThree+LevelFive;\r
+ map[Shift]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ map[LevelFive]= Level5;\r
+ map[Shift+LevelFive]= Level6;\r
+ map[LevelThree+LevelFive]= Level7;\r
+ map[Shift+LevelThree+LevelFive]= Level8;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ level_name[Level3]= "Alt Base";\r
+ level_name[Level4]= "Shift Alt";\r
+ level_name[Level5]= "X";\r
+ level_name[Level6]= "X Shift";\r
+ level_name[Level7]= "X Alt Base";\r
+ level_name[Level8]= "X Shift Alt";\r
+ };\r
+ type "EIGHT_LEVEL_ALPHABETIC" {\r
+ modifiers= Shift+Lock+LevelThree+LevelFive;\r
+ map[Shift]= Level2;\r
+ map[Lock]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ map[Lock+LevelThree]= Level4;\r
+ map[Shift+Lock+LevelThree]= Level3;\r
+ map[LevelFive]= Level5;\r
+ map[Shift+LevelFive]= Level6;\r
+ map[Lock+LevelFive]= Level6;\r
+ map[LevelThree+LevelFive]= Level7;\r
+ map[Shift+LevelThree+LevelFive]= Level8;\r
+ map[Lock+LevelThree+LevelFive]= Level8;\r
+ map[Shift+Lock+LevelThree+LevelFive]= Level7;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ level_name[Level3]= "Alt Base";\r
+ level_name[Level4]= "Shift Alt";\r
+ level_name[Level5]= "X";\r
+ level_name[Level6]= "X Shift";\r
+ level_name[Level7]= "X Alt Base";\r
+ level_name[Level8]= "X Shift Alt";\r
+ };\r
+ type "EIGHT_LEVEL_SEMIALPHABETIC" {\r
+ modifiers= Shift+Lock+LevelThree+LevelFive;\r
+ map[Shift]= Level2;\r
+ map[Lock]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ map[Lock+LevelThree]= Level3;\r
+ preserve[Lock+LevelThree]= Lock;\r
+ map[Shift+Lock+LevelThree]= Level4;\r
+ preserve[Shift+Lock+LevelThree]= Lock;\r
+ map[LevelFive]= Level5;\r
+ map[Shift+LevelFive]= Level6;\r
+ map[Lock+LevelFive]= Level6;\r
+ preserve[Lock+LevelFive]= Lock;\r
+ map[LevelThree+LevelFive]= Level7;\r
+ map[Shift+LevelThree+LevelFive]= Level8;\r
+ map[Lock+LevelThree+LevelFive]= Level7;\r
+ preserve[Lock+LevelThree+LevelFive]= Lock;\r
+ map[Shift+Lock+LevelThree+LevelFive]= Level8;\r
+ preserve[Shift+Lock+LevelThree+LevelFive]= Lock;\r
+ map[Shift+Lock+LevelFive]= Level1;\r
+ preserve[Shift+Lock+LevelFive]= Lock;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ level_name[Level3]= "Alt Base";\r
+ level_name[Level4]= "Shift Alt";\r
+ level_name[Level5]= "X";\r
+ level_name[Level6]= "X Shift";\r
+ level_name[Level7]= "X Alt Base";\r
+ level_name[Level8]= "X Shift Alt";\r
+ };\r
+ type "FOUR_LEVEL" {\r
+ modifiers= Shift+LevelThree;\r
+ map[Shift]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ level_name[Level3]= "Alt Base";\r
+ level_name[Level4]= "Shift Alt";\r
+ };\r
+ type "FOUR_LEVEL_ALPHABETIC" {\r
+ modifiers= Shift+Lock+LevelThree;\r
+ map[Shift]= Level2;\r
+ map[Lock]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ map[Lock+LevelThree]= Level4;\r
+ map[Shift+Lock+LevelThree]= Level3;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ level_name[Level3]= "Alt Base";\r
+ level_name[Level4]= "Shift Alt";\r
+ };\r
+ type "FOUR_LEVEL_SEMIALPHABETIC" {\r
+ modifiers= Shift+Lock+LevelThree;\r
+ map[Shift]= Level2;\r
+ map[Lock]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ map[Lock+LevelThree]= Level3;\r
+ preserve[Lock+LevelThree]= Lock;\r
+ map[Shift+Lock+LevelThree]= Level4;\r
+ preserve[Shift+Lock+LevelThree]= Lock;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ level_name[Level3]= "Alt Base";\r
+ level_name[Level4]= "Shift Alt";\r
+ };\r
+ type "FOUR_LEVEL_MIXED_KEYPAD" {\r
+ modifiers= Shift+NumLock+LevelThree;\r
+ map[NumLock]= Level2;\r
+ map[Shift]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[NumLock+LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ map[Shift+NumLock+LevelThree]= Level4;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Number";\r
+ level_name[Level3]= "Alt Base";\r
+ level_name[Level4]= "Shift Alt";\r
+ };\r
+ type "FOUR_LEVEL_X" {\r
+ modifiers= Shift+Control+Alt+LevelThree;\r
+ map[LevelThree]= Level2;\r
+ map[Shift+LevelThree]= Level3;\r
+ map[Control+Alt]= Level4;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Alt Base";\r
+ level_name[Level3]= "Shift Alt";\r
+ level_name[Level4]= "Ctrl+Alt";\r
+ };\r
+ type "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC" {\r
+ modifiers= Shift+Lock+LevelThree;\r
+ map[Shift]= Level2;\r
+ map[Lock]= Level4;\r
+ preserve[Lock]= Lock;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ map[Lock+LevelThree]= Level3;\r
+ preserve[Lock+LevelThree]= Lock;\r
+ map[Shift+Lock+LevelThree]= Level3;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ level_name[Level3]= "AltGr Base";\r
+ level_name[Level4]= "Shift AltGr";\r
+ };\r
+ type "FOUR_LEVEL_PLUS_LOCK" {\r
+ modifiers= Shift+Lock+LevelThree;\r
+ map[Shift]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ map[Lock]= Level5;\r
+ map[Shift+Lock]= Level2;\r
+ map[Lock+LevelThree]= Level3;\r
+ map[Shift+Lock+LevelThree]= Level4;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Shift";\r
+ level_name[Level3]= "Alt Base";\r
+ level_name[Level4]= "Shift Alt";\r
+ level_name[Level5]= "Lock";\r
+ };\r
+ type "FOUR_LEVEL_KEYPAD" {\r
+ modifiers= Shift+NumLock+LevelThree;\r
+ map[Shift]= Level2;\r
+ map[NumLock]= Level2;\r
+ map[LevelThree]= Level3;\r
+ map[Shift+LevelThree]= Level4;\r
+ map[NumLock+LevelThree]= Level4;\r
+ map[Shift+NumLock+LevelThree]= Level3;\r
+ level_name[Level1]= "Base";\r
+ level_name[Level2]= "Number";\r
+ level_name[Level3]= "Alt Base";\r
+ level_name[Level4]= "Alt Number";\r
+ };\r
+};\r
+\r
+xkb_compatibility "complete" {\r
+\r
+ virtual_modifiers NumLock,Alt,LevelThree,LAlt,RAlt,RControl,LControl,ScrollLock,LevelFive,AltGr,Meta,Super,Hyper;\r
+\r
+ interpret.useModMapMods= AnyLevel;\r
+ interpret.repeat= False;\r
+ interpret.locking= False;\r
+ interpret ISO_Level2_Latch+Exactly(Shift) {\r
+ useModMapMods=level1;\r
+ action= LatchMods(modifiers=Shift,clearLocks,latchToLock);\r
+ };\r
+ interpret Shift_Lock+AnyOf(Shift+Lock) {\r
+ action= LockMods(modifiers=Shift);\r
+ };\r
+ interpret Num_Lock+AnyOf(all) {\r
+ virtualModifier= NumLock;\r
+ action= LockMods(modifiers=NumLock);\r
+ };\r
+ interpret ISO_Lock+AnyOf(all) {\r
+ action= ISOLock(modifiers=modMapMods,affect=all);\r
+ };\r
+ interpret ISO_Level3_Shift+AnyOf(all) {\r
+ virtualModifier= LevelThree;\r
+ useModMapMods=level1;\r
+ action= SetMods(modifiers=LevelThree,clearLocks);\r
+ };\r
+ interpret ISO_Level3_Latch+AnyOf(all) {\r
+ virtualModifier= LevelThree;\r
+ useModMapMods=level1;\r
+ action= LatchMods(modifiers=LevelThree,clearLocks,latchToLock);\r
+ };\r
+ interpret ISO_Level3_Lock+AnyOf(all) {\r
+ virtualModifier= LevelThree;\r
+ useModMapMods=level1;\r
+ action= LockMods(modifiers=LevelThree);\r
+ };\r
+ interpret Alt_L+AnyOf(all) {\r
+ virtualModifier= Alt;\r
+ action= SetMods(modifiers=modMapMods,clearLocks);\r
+ };\r
+ interpret Alt_R+AnyOf(all) {\r
+ virtualModifier= Alt;\r
+ action= SetMods(modifiers=modMapMods,clearLocks);\r
+ };\r
+ interpret Meta_L+AnyOf(all) {\r
+ virtualModifier= Meta;\r
+ action= SetMods(modifiers=modMapMods,clearLocks);\r
+ };\r
+ interpret Meta_R+AnyOf(all) {\r
+ virtualModifier= Meta;\r
+ action= SetMods(modifiers=modMapMods,clearLocks);\r
+ };\r
+ interpret Super_L+AnyOf(all) {\r
+ virtualModifier= Super;\r
+ action= SetMods(modifiers=modMapMods,clearLocks);\r
+ };\r
+ interpret Super_R+AnyOf(all) {\r
+ virtualModifier= Super;\r
+ action= SetMods(modifiers=modMapMods,clearLocks);\r
+ };\r
+ interpret Hyper_L+AnyOf(all) {\r
+ virtualModifier= Hyper;\r
+ action= SetMods(modifiers=modMapMods,clearLocks);\r
+ };\r
+ interpret Hyper_R+AnyOf(all) {\r
+ virtualModifier= Hyper;\r
+ action= SetMods(modifiers=modMapMods,clearLocks);\r
+ };\r
+ interpret Scroll_Lock+AnyOf(all) {\r
+ virtualModifier= ScrollLock;\r
+ action= LockMods(modifiers=modMapMods);\r
+ };\r
+ interpret ISO_Level5_Shift+AnyOf(all) {\r
+ virtualModifier= LevelFive;\r
+ useModMapMods=level1;\r
+ action= SetMods(modifiers=LevelFive,clearLocks);\r
+ };\r
+ interpret ISO_Level5_Latch+AnyOf(all) {\r
+ virtualModifier= LevelFive;\r
+ action= LatchMods(modifiers=LevelFive,clearLocks,latchToLock);\r
+ };\r
+ interpret ISO_Level5_Lock+AnyOf(all) {\r
+ virtualModifier= LevelFive;\r
+ action= LockMods(modifiers=LevelFive);\r
+ };\r
+ interpret Mode_switch+AnyOfOrNone(all) {\r
+ virtualModifier= AltGr;\r
+ useModMapMods=level1;\r
+ action= SetGroup(group=+1);\r
+ };\r
+ interpret ISO_Level3_Shift+AnyOfOrNone(all) {\r
+ action= SetMods(modifiers=LevelThree,clearLocks);\r
+ };\r
+ interpret ISO_Level3_Latch+AnyOfOrNone(all) {\r
+ action= LatchMods(modifiers=LevelThree,clearLocks,latchToLock);\r
+ };\r
+ interpret ISO_Level3_Lock+AnyOfOrNone(all) {\r
+ action= LockMods(modifiers=LevelThree);\r
+ };\r
+ interpret ISO_Group_Latch+AnyOfOrNone(all) {\r
+ virtualModifier= AltGr;\r
+ useModMapMods=level1;\r
+ action= LatchGroup(group=2);\r
+ };\r
+ interpret ISO_Next_Group+AnyOfOrNone(all) {\r
+ virtualModifier= AltGr;\r
+ useModMapMods=level1;\r
+ action= LockGroup(group=+1);\r
+ };\r
+ interpret ISO_Prev_Group+AnyOfOrNone(all) {\r
+ virtualModifier= AltGr;\r
+ useModMapMods=level1;\r
+ action= LockGroup(group=-1);\r
+ };\r
+ interpret ISO_First_Group+AnyOfOrNone(all) {\r
+ action= LockGroup(group=1);\r
+ };\r
+ interpret ISO_Last_Group+AnyOfOrNone(all) {\r
+ action= LockGroup(group=2);\r
+ };\r
+ interpret KP_1+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=-1,y=+1);\r
+ };\r
+ interpret KP_End+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=-1,y=+1);\r
+ };\r
+ interpret KP_2+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+0,y=+1);\r
+ };\r
+ interpret KP_Down+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+0,y=+1);\r
+ };\r
+ interpret KP_3+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+1,y=+1);\r
+ };\r
+ interpret KP_Next+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+1,y=+1);\r
+ };\r
+ interpret KP_4+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=-1,y=+0);\r
+ };\r
+ interpret KP_Left+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=-1,y=+0);\r
+ };\r
+ interpret KP_6+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+1,y=+0);\r
+ };\r
+ interpret KP_Right+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+1,y=+0);\r
+ };\r
+ interpret KP_7+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=-1,y=-1);\r
+ };\r
+ interpret KP_Home+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=-1,y=-1);\r
+ };\r
+ interpret KP_8+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+0,y=-1);\r
+ };\r
+ interpret KP_Up+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+0,y=-1);\r
+ };\r
+ interpret KP_9+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+1,y=-1);\r
+ };\r
+ interpret KP_Prior+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+1,y=-1);\r
+ };\r
+ interpret KP_5+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= PtrBtn(button=default);\r
+ };\r
+ interpret KP_Begin+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= PtrBtn(button=default);\r
+ };\r
+ interpret KP_F2+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SetPtrDflt(affect=button,button=1);\r
+ };\r
+ interpret KP_Divide+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SetPtrDflt(affect=button,button=1);\r
+ };\r
+ interpret KP_F3+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SetPtrDflt(affect=button,button=2);\r
+ };\r
+ interpret KP_Multiply+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SetPtrDflt(affect=button,button=2);\r
+ };\r
+ interpret KP_F4+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SetPtrDflt(affect=button,button=3);\r
+ };\r
+ interpret KP_Subtract+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SetPtrDflt(affect=button,button=3);\r
+ };\r
+ interpret KP_Separator+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= PtrBtn(button=default,count=2);\r
+ };\r
+ interpret KP_Add+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= PtrBtn(button=default,count=2);\r
+ };\r
+ interpret KP_0+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= LockPtrBtn(button=default,affect=lock);\r
+ };\r
+ interpret KP_Insert+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= LockPtrBtn(button=default,affect=lock);\r
+ };\r
+ interpret KP_Decimal+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= LockPtrBtn(button=default,affect=unlock);\r
+ };\r
+ interpret KP_Delete+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= LockPtrBtn(button=default,affect=unlock);\r
+ };\r
+ interpret F25+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SetPtrDflt(affect=button,button=1);\r
+ };\r
+ interpret F26+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SetPtrDflt(affect=button,button=2);\r
+ };\r
+ interpret F27+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=-1,y=-1);\r
+ };\r
+ interpret F29+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+1,y=-1);\r
+ };\r
+ interpret F31+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= PtrBtn(button=default);\r
+ };\r
+ interpret F33+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=-1,y=+1);\r
+ };\r
+ interpret F35+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= MovePtr(x=+1,y=+1);\r
+ };\r
+ interpret Pointer_Button_Dflt+AnyOfOrNone(all) {\r
+ action= PtrBtn(button=default);\r
+ };\r
+ interpret Pointer_Button1+AnyOfOrNone(all) {\r
+ action= PtrBtn(button=1);\r
+ };\r
+ interpret Pointer_Button2+AnyOfOrNone(all) {\r
+ action= PtrBtn(button=2);\r
+ };\r
+ interpret Pointer_Button3+AnyOfOrNone(all) {\r
+ action= PtrBtn(button=3);\r
+ };\r
+ interpret Pointer_DblClick_Dflt+AnyOfOrNone(all) {\r
+ action= PtrBtn(button=default,count=2);\r
+ };\r
+ interpret Pointer_DblClick1+AnyOfOrNone(all) {\r
+ action= PtrBtn(button=1,count=2);\r
+ };\r
+ interpret Pointer_DblClick2+AnyOfOrNone(all) {\r
+ action= PtrBtn(button=2,count=2);\r
+ };\r
+ interpret Pointer_DblClick3+AnyOfOrNone(all) {\r
+ action= PtrBtn(button=3,count=2);\r
+ };\r
+ interpret Pointer_Drag_Dflt+AnyOfOrNone(all) {\r
+ action= LockPtrBtn(button=default,affect=both);\r
+ };\r
+ interpret Pointer_Drag1+AnyOfOrNone(all) {\r
+ action= LockPtrBtn(button=1,affect=both);\r
+ };\r
+ interpret Pointer_Drag2+AnyOfOrNone(all) {\r
+ action= LockPtrBtn(button=2,affect=both);\r
+ };\r
+ interpret Pointer_Drag3+AnyOfOrNone(all) {\r
+ action= LockPtrBtn(button=3,affect=both);\r
+ };\r
+ interpret Pointer_EnableKeys+AnyOfOrNone(all) {\r
+ action= LockControls(controls=MouseKeys);\r
+ };\r
+ interpret Pointer_Accelerate+AnyOfOrNone(all) {\r
+ action= LockControls(controls=MouseKeysAccel);\r
+ };\r
+ interpret Pointer_DfltBtnNext+AnyOfOrNone(all) {\r
+ action= SetPtrDflt(affect=button,button=+1);\r
+ };\r
+ interpret Pointer_DfltBtnPrev+AnyOfOrNone(all) {\r
+ action= SetPtrDflt(affect=button,button=-1);\r
+ };\r
+ interpret AccessX_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=AccessXKeys);\r
+ };\r
+ interpret AccessX_Feedback_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=AccessXFeedback);\r
+ };\r
+ interpret RepeatKeys_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=RepeatKeys);\r
+ };\r
+ interpret SlowKeys_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=SlowKeys);\r
+ };\r
+ interpret BounceKeys_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=BounceKeys);\r
+ };\r
+ interpret StickyKeys_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=StickyKeys);\r
+ };\r
+ interpret MouseKeys_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=MouseKeys);\r
+ };\r
+ interpret MouseKeys_Accel_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=MouseKeysAccel);\r
+ };\r
+ interpret Overlay1_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=Overlay1);\r
+ };\r
+ interpret Overlay2_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=Overlay2);\r
+ };\r
+ interpret AudibleBell_Enable+AnyOfOrNone(all) {\r
+ action= LockControls(controls=AudibleBell);\r
+ };\r
+ interpret Terminate_Server+AnyOfOrNone(all) {\r
+ action= Terminate();\r
+ };\r
+ interpret Alt_L+AnyOfOrNone(all) {\r
+ action= SetMods(modifiers=Alt,clearLocks);\r
+ };\r
+ interpret Alt_R+AnyOfOrNone(all) {\r
+ action= SetMods(modifiers=Alt,clearLocks);\r
+ };\r
+ interpret Meta_L+AnyOfOrNone(all) {\r
+ action= SetMods(modifiers=Meta,clearLocks);\r
+ };\r
+ interpret Meta_R+AnyOfOrNone(all) {\r
+ action= SetMods(modifiers=Meta,clearLocks);\r
+ };\r
+ interpret Super_L+AnyOfOrNone(all) {\r
+ action= SetMods(modifiers=Super,clearLocks);\r
+ };\r
+ interpret Super_R+AnyOfOrNone(all) {\r
+ action= SetMods(modifiers=Super,clearLocks);\r
+ };\r
+ interpret Hyper_L+AnyOfOrNone(all) {\r
+ action= SetMods(modifiers=Hyper,clearLocks);\r
+ };\r
+ interpret Hyper_R+AnyOfOrNone(all) {\r
+ action= SetMods(modifiers=Hyper,clearLocks);\r
+ };\r
+ interpret XF86Switch_VT_1+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=1,!same);\r
+ };\r
+ interpret XF86Switch_VT_2+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=2,!same);\r
+ };\r
+ interpret XF86Switch_VT_3+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=3,!same);\r
+ };\r
+ interpret XF86Switch_VT_4+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=4,!same);\r
+ };\r
+ interpret XF86Switch_VT_5+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=5,!same);\r
+ };\r
+ interpret XF86Switch_VT_6+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=6,!same);\r
+ };\r
+ interpret XF86Switch_VT_7+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=7,!same);\r
+ };\r
+ interpret XF86Switch_VT_8+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=8,!same);\r
+ };\r
+ interpret XF86Switch_VT_9+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=9,!same);\r
+ };\r
+ interpret XF86Switch_VT_10+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=10,!same);\r
+ };\r
+ interpret XF86Switch_VT_11+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=11,!same);\r
+ };\r
+ interpret XF86Switch_VT_12+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= SwitchScreen(screen=12,!same);\r
+ };\r
+ interpret XF86Ungrab+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= Private(type=0x86,data[0]=0x55,data[1]=0x6e,data[2]=0x67,data[3]=0x72,data[4]=0x61,data[5]=0x62,data[6]=0x00);\r
+ };\r
+ interpret XF86ClearGrab+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ action= Private(type=0x86,data[0]=0x43,data[1]=0x6c,data[2]=0x73,data[3]=0x47,data[4]=0x72,data[5]=0x62,data[6]=0x00);\r
+ };\r
+ interpret XF86Next_VMode+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ 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);\r
+ };\r
+ interpret XF86Prev_VMode+AnyOfOrNone(all) {\r
+ repeat= True;\r
+ 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);\r
+ };\r
+ interpret ISO_Level5_Shift+AnyOfOrNone(all) {\r
+ action= SetMods(modifiers=LevelFive,clearLocks);\r
+ };\r
+ interpret ISO_Level5_Latch+AnyOfOrNone(all) {\r
+ action= LatchMods(modifiers=LevelFive,clearLocks,latchToLock);\r
+ };\r
+ interpret ISO_Level5_Lock+AnyOfOrNone(all) {\r
+ action= LockMods(modifiers=LevelFive);\r
+ };\r
+ interpret Any+Exactly(Lock) {\r
+ action= LockMods(modifiers=Lock);\r
+ };\r
+ interpret Any+AnyOf(all) {\r
+ action= SetMods(modifiers=modMapMods,clearLocks);\r
+ };\r
+ group 2 = AltGr;\r
+ group 3 = AltGr;\r
+ group 4 = AltGr;\r
+ indicator "Caps Lock" {\r
+ !allowExplicit;\r
+ whichModState= locked;\r
+ modifiers= Lock;\r
+ };\r
+ indicator "Num Lock" {\r
+ !allowExplicit;\r
+ whichModState= locked;\r
+ modifiers= NumLock;\r
+ };\r
+ indicator "Shift Lock" {\r
+ !allowExplicit;\r
+ whichModState= locked;\r
+ modifiers= Shift;\r
+ };\r
+ indicator "Group 2" {\r
+ !allowExplicit;\r
+ groups= 0xfe;\r
+ };\r
+ indicator "Mouse Keys" {\r
+ indicatorDrivesKeyboard;\r
+ controls= mouseKeys;\r
+ };\r
+ indicator "Scroll Lock" {\r
+ whichModState= locked;\r
+ modifiers= ScrollLock;\r
+ };\r
+};\r
+\r
+xkb_symbols "unknown" {\r
+\r
+ key <> {\r
+ type= "ALPHABETIC",\r
+ symbols[Group1]= [ a, A ],\r
+ symbols[Group2]= [ aring, Aring ]\r
+ };\r
+ modifier_map Mod2 { <> };\r
+};\r
+\r
+xkb_geometry "pc(pc104)" {\r
+\r
+ width= 470;\r
+ height= 180;\r
+\r
+ baseColor= "white";\r
+ labelColor= "black";\r
+ xfont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1";\r
+ description= "Generic 104";\r
+\r
+ shape "NORM" {\r
+ corner= 1,\r
+ { [ 18, 18 ] },\r
+ { [ 2, 1 ], [ 16, 16 ] }\r
+ };\r
+ shape "BKSP" {\r
+ corner= 1,\r
+ { [ 38, 18 ] },\r
+ { [ 2, 1 ], [ 36, 16 ] }\r
+ };\r
+ shape "TABK" {\r
+ corner= 1,\r
+ { [ 28, 18 ] },\r
+ { [ 2, 1 ], [ 26, 16 ] }\r
+ };\r
+ shape "BKSL" {\r
+ corner= 1,\r
+ { [ 28, 18 ] },\r
+ { [ 2, 1 ], [ 26, 16 ] }\r
+ };\r
+ shape "RTRN" {\r
+ corner= 1,\r
+ { [ 42, 18 ] },\r
+ { [ 2, 1 ], [ 40, 16 ] }\r
+ };\r
+ shape "CAPS" {\r
+ corner= 1,\r
+ { [ 33, 18 ] },\r
+ { [ 2, 1 ], [ 31, 16 ] }\r
+ };\r
+ shape "LFSH" {\r
+ corner= 1,\r
+ { [ 42, 18 ] },\r
+ { [ 2, 1 ], [ 40, 16 ] }\r
+ };\r
+ shape "RTSH" {\r
+ corner= 1,\r
+ { [ 52, 18 ] },\r
+ { [ 2, 1 ], [ 50, 16 ] }\r
+ };\r
+ shape "MODK" {\r
+ corner= 1,\r
+ { [ 27, 18 ] },\r
+ { [ 2, 1 ], [ 25, 16 ] }\r
+ };\r
+ shape "SMOD" {\r
+ corner= 1,\r
+ { [ 23, 18 ] },\r
+ { [ 2, 1 ], [ 21, 16 ] }\r
+ };\r
+ shape "SPCE" {\r
+ corner= 1,\r
+ { [ 113, 18 ] },\r
+ { [ 2, 1 ], [ 111, 16 ] }\r
+ };\r
+ shape "KP0" {\r
+ corner= 1,\r
+ { [ 37, 18 ] },\r
+ { [ 2, 1 ], [ 35, 16 ] }\r
+ };\r
+ shape "KPAD" {\r
+ corner= 1,\r
+ { [ 18, 37 ] },\r
+ { [ 2, 1 ], [ 16, 35 ] }\r
+ };\r
+ shape "LEDS" { { [ 75, 20 ] } };\r
+ shape "LED" { { [ 5, 1 ] } };\r
+ section "Function" {\r
+ key.color= "grey20";\r
+ priority= 7;\r
+ top= 22;\r
+ left= 19;\r
+ width= 351;\r
+ height= 19;\r
+ row {\r
+ top= 1;\r
+ left= 1;\r
+ keys {\r
+ { <ESC>, "NORM", 1 },\r
+ { <FK01>, "NORM", 20, color="white" },\r
+ { <FK02>, "NORM", 1, color="white" },\r
+ { <FK03>, "NORM", 1, color="white" },\r
+ { <FK04>, "NORM", 1, color="white" },\r
+ { <FK05>, "NORM", 11, color="white" },\r
+ { <FK06>, "NORM", 1, color="white" },\r
+ { <FK07>, "NORM", 1, color="white" },\r
+ { <FK08>, "NORM", 1, color="white" },\r
+ { <FK09>, "NORM", 11, color="white" },\r
+ { <FK10>, "NORM", 1, color="white" },\r
+ { <FK11>, "NORM", 1, color="white" },\r
+ { <FK12>, "NORM", 1, color="white" },\r
+ { <PRSC>, "NORM", 8, color="white" },\r
+ { <SCLK>, "NORM", 1, color="white" },\r
+ { <PAUS>, "NORM", 1, color="white" }\r
+ };\r
+ };\r
+ }; // End of "Function" section\r
+\r
+ section "Alpha" {\r
+ key.color= "white";\r
+ priority= 8;\r
+ top= 61;\r
+ left= 19;\r
+ width= 287;\r
+ height= 95;\r
+ row {\r
+ top= 1;\r
+ left= 1;\r
+ keys {\r
+ { <TLDE>, "NORM", 1 }, { <AE01>, "NORM", 1 },\r
+ { <AE02>, "NORM", 1 }, { <AE03>, "NORM", 1 },\r
+ { <AE04>, "NORM", 1 }, { <AE05>, "NORM", 1 },\r
+ { <AE06>, "NORM", 1 }, { <AE07>, "NORM", 1 },\r
+ { <AE08>, "NORM", 1 }, { <AE09>, "NORM", 1 },\r
+ { <AE10>, "NORM", 1 }, { <AE11>, "NORM", 1 },\r
+ { <AE12>, "NORM", 1 },\r
+ { <BKSP>, "BKSP", 1, color="grey20" }\r
+ };\r
+ };\r
+ row {\r
+ top= 20;\r
+ left= 1;\r
+ keys {\r
+ { <TAB>, "TABK", 1, color="grey20" },\r
+ { <AD01>, "NORM", 1 }, { <AD02>, "NORM", 1 },\r
+ { <AD03>, "NORM", 1 }, { <AD04>, "NORM", 1 },\r
+ { <AD05>, "NORM", 1 }, { <AD06>, "NORM", 1 },\r
+ { <AD07>, "NORM", 1 }, { <AD08>, "NORM", 1 },\r
+ { <AD09>, "NORM", 1 }, { <AD10>, "NORM", 1 },\r
+ { <AD11>, "NORM", 1 }, { <AD12>, "NORM", 1 },\r
+ { <BKSL>, "BKSL", 1 }\r
+ };\r
+ };\r
+ row {\r
+ top= 39;\r
+ left= 1;\r
+ keys {\r
+ { <CAPS>, "CAPS", 1, color="grey20" },\r
+ { <AC01>, "NORM", 1 }, { <AC02>, "NORM", 1 },\r
+ { <AC03>, "NORM", 1 }, { <AC04>, "NORM", 1 },\r
+ { <AC05>, "NORM", 1 }, { <AC06>, "NORM", 1 },\r
+ { <AC07>, "NORM", 1 }, { <AC08>, "NORM", 1 },\r
+ { <AC09>, "NORM", 1 }, { <AC10>, "NORM", 1 },\r
+ { <AC11>, "NORM", 1 },\r
+ { <RTRN>, "RTRN", 1, color="grey20" }\r
+ };\r
+ };\r
+ row {\r
+ top= 58;\r
+ left= 1;\r
+ keys {\r
+ { <LFSH>, "LFSH", 1, color="grey20" },\r
+ { <AB01>, "NORM", 1 }, { <AB02>, "NORM", 1 },\r
+ { <AB03>, "NORM", 1 }, { <AB04>, "NORM", 1 },\r
+ { <AB05>, "NORM", 1 }, { <AB06>, "NORM", 1 },\r
+ { <AB07>, "NORM", 1 }, { <AB08>, "NORM", 1 },\r
+ { <AB09>, "NORM", 1 }, { <AB10>, "NORM", 1 },\r
+ { <RTSH>, "RTSH", 1, color="grey20" }\r
+ };\r
+ };\r
+ row {\r
+ top= 77;\r
+ left= 1;\r
+ keys {\r
+ { <LCTL>, "MODK", 1, color="grey20" },\r
+ { <LWIN>, "SMOD", 1, color="grey20" },\r
+ { <LALT>, "SMOD", 1, color="grey20" },\r
+ { <SPCE>, "SPCE", 1 },\r
+ { <RALT>, "SMOD", 1, color="grey20" },\r
+ { <RWIN>, "SMOD", 1, color="grey20" },\r
+ { <MENU>, "SMOD", 1, color="grey20" },\r
+ { <RCTL>, "SMOD", 1, color="grey20" }\r
+ };\r
+ };\r
+ }; // End of "Alpha" section\r
+\r
+ section "Editing" {\r
+ key.color= "grey20";\r
+ priority= 9;\r
+ top= 61;\r
+ left= 312;\r
+ width= 58;\r
+ height= 95;\r
+ row {\r
+ top= 1;\r
+ left= 1;\r
+ keys {\r
+ { <INS>, "NORM", 1 }, { <HOME>, "NORM", 1 },\r
+ { <PGUP>, "NORM", 1 }\r
+ };\r
+ };\r
+ row {\r
+ top= 20;\r
+ left= 1;\r
+ keys {\r
+ { <DELE>, "NORM", 1 }, { <END>, "NORM", 1 },\r
+ { <PGDN>, "NORM", 1 }\r
+ };\r
+ };\r
+ row {\r
+ top= 58;\r
+ left= 20;\r
+ keys {\r
+ { <UP>, "NORM", 1 }\r
+ };\r
+ };\r
+ row {\r
+ top= 77;\r
+ left= 1;\r
+ keys {\r
+ { <LEFT>, "NORM", 1 }, { <DOWN>, "NORM", 1 },\r
+ { <RGHT>, "NORM", 1 }\r
+ };\r
+ };\r
+ }; // End of "Editing" section\r
+\r
+ section "Keypad" {\r
+ key.color= "grey20";\r
+ priority= 10;\r
+ top= 61;\r
+ left= 376;\r
+ width= 77;\r
+ height= 95;\r
+ row {\r
+ top= 1;\r
+ left= 1;\r
+ keys {\r
+ { <NMLK>, "NORM", 1 }, { <KPDV>, "NORM", 1 },\r
+ { <KPMU>, "NORM", 1 }, { <KPSU>, "NORM", 1 }\r
+ };\r
+ };\r
+ row {\r
+ top= 20;\r
+ left= 1;\r
+ keys {\r
+ { <KP7>, "NORM", 1, color="white" },\r
+ { <KP8>, "NORM", 1, color="white" },\r
+ { <KP9>, "NORM", 1, color="white" },\r
+ { <KPAD>, "KPAD", 1 }\r
+ };\r
+ };\r
+ row {\r
+ top= 39;\r
+ left= 1;\r
+ keys {\r
+ { <KP4>, "NORM", 1, color="white" },\r
+ { <KP5>, "NORM", 1, color="white" },\r
+ { <KP6>, "NORM", 1, color="white" }\r
+ };\r
+ };\r
+ row {\r
+ top= 58;\r
+ left= 1;\r
+ keys {\r
+ { <KP1>, "NORM", 1, color="white" },\r
+ { <KP2>, "NORM", 1, color="white" },\r
+ { <KP3>, "NORM", 1, color="white" },\r
+ { <KPEN>, "KPAD", 1 }\r
+ };\r
+ };\r
+ row {\r
+ top= 77;\r
+ left= 1;\r
+ keys {\r
+ { <KP0>, "KP0", 1, color="white" },\r
+ { <KPDL>, "NORM", 1, color="white" }\r
+ };\r
+ };\r
+ }; // End of "Keypad" section\r
+\r
+ solid "LedPanel" {\r
+ top= 22;\r
+ left= 377;\r
+ priority= 0;\r
+ color= "grey10";\r
+ shape= "LEDS";\r
+ };\r
+ indicator "Num Lock" {\r
+ top= 37;\r
+ left= 382;\r
+ priority= 1;\r
+ onColor= "green";\r
+ offColor= "green30";\r
+ shape= "LED";\r
+ };\r
+ indicator "Caps Lock" {\r
+ top= 37;\r
+ left= 407;\r
+ priority= 2;\r
+ onColor= "green";\r
+ offColor= "green30";\r
+ shape= "LED";\r
+ };\r
+ indicator "Scroll Lock" {\r
+ top= 37;\r
+ left= 433;\r
+ priority= 3;\r
+ onColor= "green";\r
+ offColor= "green30";\r
+ shape= "LED";\r
+ };\r
+ text "NumLockLabel" {\r
+ top= 25;\r
+ left= 378;\r
+ priority= 4;\r
+ width= 19.8;\r
+ height= 10;\r
+ XFont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1";\r
+ text= "Num\nLock";\r
+ };\r
+ text "CapsLockLabel" {\r
+ top= 25;\r
+ left= 403;\r
+ priority= 5;\r
+ width= 26.4;\r
+ height= 10;\r
+ XFont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1";\r
+ text= "Caps\nLock";\r
+ };\r
+ text "ScrollLockLabel" {\r
+ top= 25;\r
+ left= 428;\r
+ priority= 6;\r
+ width= 39.6;\r
+ height= 10;\r
+ XFont= "-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1";\r
+ text= "Scroll\nLock";\r
+ };\r
+};\r
+\r
+};
\ No newline at end of file