summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packaging/libxkbcommon.spec23
-rw-r--r--src/xkbcomp/parser.y2
-rw-r--r--test/data/keymaps/quartz.xkb2276
3 files changed, 1155 insertions, 1146 deletions
diff --git a/packaging/libxkbcommon.spec b/packaging/libxkbcommon.spec
index e1b01d1..b0291af 100644
--- a/packaging/libxkbcommon.spec
+++ b/packaging/libxkbcommon.spec
@@ -1,5 +1,5 @@
Name: libxkbcommon
-Version: 0.7.2
+Version: 0.10.0
Release: 0
License: MIT
Summary: Wayland libxkbcommon library
@@ -9,8 +9,7 @@ Group: Development/Libraries
Source: %{name}-%{version}.tar.xz
#X-Vcs-Url: https://github.com/xkbcommon/libxkbcommon.git
Source1001: libxkbcommon.manifest
-BuildRequires: autoconf >= 2.60
-BuildRequires: automake
+BuildRequires: meson
BuildRequires: bison
BuildRequires: flex
BuildRequires: libtool >= 2
@@ -19,6 +18,10 @@ BuildRequires: python
BuildRequires: xkb-tizen-data
BuildRequires: gawk
+## This BuildRequires is needed when an enable-wayland option is true.
+#BuildRequires: pkgconfig(wayland-client)
+#BuildRequires: wayland-protocols
+
%global TZ_SYS_RO_SHARE %{?TZ_SYS_RO_SHARE:%TZ_SYS_RO_SHARE}%{!?TZ_SYS_RO_SHARE:/usr/share}
%description
@@ -47,12 +50,18 @@ chmod a+x ./gen_tables.sh
./gen_tables.sh
%build
-chmod a+x ./autogen.sh
-%autogen --disable-static --disable-x11 --disable-docs
-%__make %{?_smp_mflags} V=1;
+meson setup \
+ -Denable-x11=false \
+ -Denable-docs=false \
+ -Denable-wayland=false \
+ --prefix /usr \
+ --libdir %{_libdir} \
+ builddir
+ninja -C builddir all
%install
-%make_install
+export DESTDIR=%{buildroot}
+ninja -C builddir install
%post -p /sbin/ldconfig
diff --git a/src/xkbcomp/parser.y b/src/xkbcomp/parser.y
index d71056d..579f8ad 100644
--- a/src/xkbcomp/parser.y
+++ b/src/xkbcomp/parser.y
@@ -734,7 +734,7 @@ KeySym : IDENT
| Integer
{
if ($1 < 0) {
- parser_warn(param, "unrecognized keysym \"%ld\"", $1);
+ parser_warn(param, "unrecognized keysym \"%lld\"", $1);
$$ = XKB_KEY_NoSymbol;
}
else if ($1 < 10) { /* XKB_KEY_0 .. XKB_KEY_9 */
diff --git a/test/data/keymaps/quartz.xkb b/test/data/keymaps/quartz.xkb
index 92ab623..c976fce 100644
--- a/test/data/keymaps/quartz.xkb
+++ b/test/data/keymaps/quartz.xkb
@@ -1,1139 +1,1139 @@
-xkb_keymap {
-xkb_keycodes "empty_aliases(qwerty)" {
- minimum = 8;
- maximum = 255;
- virtual indicator 1 = "Caps Lock";
- virtual indicator 2 = "Num Lock";
- virtual indicator 3 = "Shift Lock";
- virtual indicator 4 = "Group 2";
- virtual indicator 5 = "Mouse Keys";
- virtual indicator 6 = "Scroll Lock";
-};
-
-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= Control+Alt;
- map[Control+Alt]= Level2;
- level_name[Level1]= "Base";
- level_name[Level2]= "Ctrl+Alt";
- };
- type "LOCAL_EIGHT_LEVEL" {
- modifiers= Shift+Lock+Control+LevelThree;
- 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[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;
- map[Shift+Lock+LevelFive]= Level1;
- preserve[Shift+Lock+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[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_Lock+AnyOf(all) {
- action= ISOLock(modifiers=modMapMods,affect=all);
- };
- 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;
- action= LatchMods(modifiers=LevelFive,clearLocks,latchToLock);
- };
- interpret ISO_Level5_Lock+AnyOf(all) {
- virtualModifier= LevelFive;
- 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 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 XF86Ungrab+AnyOfOrNone(all) {
- repeat= True;
- 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);
- };
- interpret XF86ClearGrab+AnyOfOrNone(all) {
- repeat= True;
- 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);
- };
- 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 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 "Shift Lock" {
- !allowExplicit;
- whichModState= locked;
- modifiers= Shift;
- };
- indicator "Group 2" {
- !allowExplicit;
- groups= 0xfe;
- };
- indicator "Mouse Keys" {
- indicatorDrivesKeyboard;
- controls= mouseKeys;
- };
- indicator "Scroll Lock" {
- whichModState= locked;
- modifiers= ScrollLock;
- };
-};
-
-xkb_symbols "unknown" {
-
- key <> {
- type= "ALPHABETIC",
- symbols[Group1]= [ a, A ],
- symbols[Group2]= [ aring, Aring ]
- };
- modifier_map Mod2 { <> };
-};
-
-xkb_geometry "pc(pc104)" {
-
- width= 470;
- height= 180;
-
- 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";
- };
-};
-
+xkb_keymap {
+xkb_keycodes "empty_aliases(qwerty)" {
+ minimum = 8;
+ maximum = 255;
+ virtual indicator 1 = "Caps Lock";
+ virtual indicator 2 = "Num Lock";
+ virtual indicator 3 = "Shift Lock";
+ virtual indicator 4 = "Group 2";
+ virtual indicator 5 = "Mouse Keys";
+ virtual indicator 6 = "Scroll Lock";
+};
+
+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= Control+Alt;
+ map[Control+Alt]= Level2;
+ level_name[Level1]= "Base";
+ level_name[Level2]= "Ctrl+Alt";
+ };
+ type "LOCAL_EIGHT_LEVEL" {
+ modifiers= Shift+Lock+Control+LevelThree;
+ 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[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;
+ map[Shift+Lock+LevelFive]= Level1;
+ preserve[Shift+Lock+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[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_Lock+AnyOf(all) {
+ action= ISOLock(modifiers=modMapMods,affect=all);
+ };
+ 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;
+ action= LatchMods(modifiers=LevelFive,clearLocks,latchToLock);
+ };
+ interpret ISO_Level5_Lock+AnyOf(all) {
+ virtualModifier= LevelFive;
+ 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 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 XF86Ungrab+AnyOfOrNone(all) {
+ repeat= True;
+ 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);
+ };
+ interpret XF86ClearGrab+AnyOfOrNone(all) {
+ repeat= True;
+ 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);
+ };
+ 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 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 "Shift Lock" {
+ !allowExplicit;
+ whichModState= locked;
+ modifiers= Shift;
+ };
+ indicator "Group 2" {
+ !allowExplicit;
+ groups= 0xfe;
+ };
+ indicator "Mouse Keys" {
+ indicatorDrivesKeyboard;
+ controls= mouseKeys;
+ };
+ indicator "Scroll Lock" {
+ whichModState= locked;
+ modifiers= ScrollLock;
+ };
+};
+
+xkb_symbols "unknown" {
+
+ key <> {
+ type= "ALPHABETIC",
+ symbols[Group1]= [ a, A ],
+ symbols[Group2]= [ aring, Aring ]
+ };
+ modifier_map Mod2 { <> };
+};
+
+xkb_geometry "pc(pc104)" {
+
+ width= 470;
+ height= 180;
+
+ 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";
+ };
+};
+
}; \ No newline at end of file