Bug#236086: New sun/us file breaks keyboard layout
Hi,
after upgrading xlibs to version 4.3.0.dfsg.1-9 my keyboard was not
usable anymore (Q was Tab, Compose was Enter, Find was m). XFree86
sayed:
syntax error: line 104 of sun/us
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Error: Error interpreting include file "sun/us"
> Exiting
> Abandoning symbols file "default"
The problem was in sun/us in each line, that contained srvr_ctrl. I
disabled all of them and the keyboard worked again. I guess the changes
from Denis Barbier are responsible for this:
Changes by Denis Barbier:
* Make Sun keyboards load srvr_ctrl(xfree86) symbol definitions to
have access to standard Ctrl+Alt key sequences. (Closes: #236086)
I have a SUN Ultra 5, running kernel-image-2.4.26-sparc64 on an unstable
debian.
I have no idea why srvr_ctrl is not working, so I don't know which
further information you may need. I did /usr/share/bug/xlibs. I attached
the output.
Thx
Henry
Keyboard-related contents of XFree86 X server log file
/var/log/XFree86.0.log:
(==) Using config file: "/etc/X11/XF86Config-4"
(==) ServerLayout "Default Layout"
(**) |-->Screen "Default Screen" (0)
(**) | |-->Monitor "Generic Monitor"
(**) | |-->Device "Generic Video Card"
(**) |-->Input Device "Generic Keyboard"
(**) Option "XkbRules" "sun"
(**) XKB: rules: "sun"
(**) Option "XkbModel" "type5"
(**) XKB: model: "type5"
(**) Option "XkbLayout" "us"
(**) XKB: layout: "us"
(==) Keyboard: CustomKeycode disabled
(**) |-->Input Device "Configured Mouse"
(WW) The directory "/usr/lib/X11/fonts/cyrillic" does not exist.
Entry deleted from font path.
(WW) The directory "/usr/lib/X11/fonts/CID" does not exist.
Entry deleted from font path.
--
(**) ATI(0): DPMS enabled
(==) RandR enabled
(II) Initializing built-in extension MIT-SHM
(II) Initializing built-in extension XInputExtension
(II) Initializing built-in extension XTEST
(II) Initializing built-in extension XKEYBOARD
(II) Initializing built-in extension LBX
(II) Initializing built-in extension XC-APPGROUP
(II) Initializing built-in extension SECURITY
(II) Initializing built-in extension XINERAMA
(II) Initializing built-in extension XFree86-Bigfont
(II) Initializing built-in extension RENDER
(II) Initializing built-in extension RANDR
(II) Keyboard "Generic Keyboard" handled by legacy driver
(**) Option "Protocol" "BusMouse"
(**) Configured Mouse: Protocol: "BusMouse"
(**) Option "CorePointer"
(**) Configured Mouse: Core Pointer
(**) Option "Device" "/dev/sunmouse"
--
Warning: font renderer for ".snf.gz" already registered at priority 0
Warning: font renderer for ".bdf" already registered at priority 0
Warning: font renderer for ".bdf.Z" already registered at priority 0
Warning: font renderer for ".bdf.gz" already registered at priority 0
Warning: font renderer for ".pmf" already registered at priority 0
Error loading keymap /usr/X11R6/lib/X11/xkb/compiled/server-0.xkm
GetModeLine - scrn: 0 clock: 108000
GetModeLine - hdsp: 1152 hbeg: 1216 hend: 1344 httl: 1600
vdsp: 864 vbeg: 865 vend: 868 vttl: 900 flags: 5
Keyboard-related contents of XFree86 X server log file
/var/log/XFree86.1.log:
(==) Using config file: "/etc/X11/XF86Config-4"
(==) ServerLayout "Default Layout"
(**) |-->Screen "Default Screen" (0)
(**) | |-->Monitor "Generic Monitor"
(**) | |-->Device "Generic Video Card"
(**) |-->Input Device "Generic Keyboard"
(**) Option "XkbRules" "sun"
(**) XKB: rules: "sun"
(**) Option "XkbModel" "type5"
(**) XKB: model: "type5"
(**) Option "XkbLayout" "us"
(**) XKB: layout: "us"
(==) Keyboard: CustomKeycode disabled
(**) |-->Input Device "Configured Mouse"
(WW) The directory "/usr/lib/X11/fonts/cyrillic" does not exist.
Entry deleted from font path.
(WW) The directory "/usr/lib/X11/fonts/CID" does not exist.
Entry deleted from font path.
--
(**) ATI(0): DPMS enabled
(==) RandR enabled
(II) Initializing built-in extension MIT-SHM
(II) Initializing built-in extension XInputExtension
(II) Initializing built-in extension XTEST
(II) Initializing built-in extension XKEYBOARD
(II) Initializing built-in extension LBX
(II) Initializing built-in extension XC-APPGROUP
(II) Initializing built-in extension SECURITY
(II) Initializing built-in extension XINERAMA
(II) Initializing built-in extension XFree86-Bigfont
(II) Initializing built-in extension RENDER
(II) Initializing built-in extension RANDR
(II) Keyboard "Generic Keyboard" handled by legacy driver
(**) Option "Protocol" "BusMouse"
(**) Configured Mouse: Protocol: "BusMouse"
(**) Option "CorePointer"
(**) Configured Mouse: Core Pointer
(**) Option "Device" "/dev/sunmouse"
XFree86 X server log files on system:
-rw-r--r-- 1 root root 36510 Dec 16 17:28 /var/log/XFree86.1.log
-rw-r--r-- 1 root root 36733 Dec 16 17:57 /var/log/XFree86.0.log
Compiled XKB description for X server ":0":
xkb_keymap {
xkb_keycodes "sun(type5)" {
minimum = 8;
maximum = 132;
<STOP> = 8;
<VOL-> = 9;
<AGAI> = 10;
<VOL+> = 11;
<FK01> = 12;
<FK02> = 13;
<FK10> = 14;
<FK03> = 15;
<FK11> = 16;
<FK04> = 17;
<FK12> = 18;
<FK05> = 19;
<ALGR> = 20;
<FK06> = 21;
<FK07> = 23;
<FK08> = 24;
<FK09> = 25;
<LALT> = 26;
<UP> = 27;
<PAUS> = 28;
<PRSC> = 29;
<SCLK> = 30;
<LEFT> = 31;
<PROP> = 32;
<UNDO> = 33;
<DOWN> = 34;
<RGHT> = 35;
<ESC> = 36;
<AE01> = 37;
<AE02> = 38;
<AE03> = 39;
<AE04> = 40;
<AE05> = 41;
<AE06> = 42;
<AE07> = 43;
<AE08> = 44;
<AE09> = 45;
<AE10> = 46;
<AE11> = 47;
<AE12> = 48;
<TLDE> = 49;
<BKSP> = 50;
<INS> = 51;
<MUTE> = 52;
<KPDV> = 53;
<KPMU> = 54;
<POWR> = 55;
<FRNT> = 56;
<KPDL> = 57;
<COPY> = 58;
<HOME> = 59;
<TAB> = 60;
<AD01> = 61;
<AD02> = 62;
<AD03> = 63;
<AD04> = 64;
<AD05> = 65;
<AD06> = 66;
<AD07> = 67;
<AD08> = 68;
<AD09> = 69;
<AD10> = 70;
<AD11> = 71;
<AD12> = 72;
<DELE> = 73;
<COMP> = 74;
<KP7> = 75;
<KP8> = 76;
<KP9> = 77;
<KPSU> = 78;
<OPEN> = 79;
<PAST> = 80;
<END> = 81;
<LCTL> = 83;
<AC01> = 84;
<AC02> = 85;
<AC03> = 86;
<AC04> = 87;
<AC05> = 88;
<AC06> = 89;
<AC07> = 90;
<AC08> = 91;
<AC09> = 92;
<AC10> = 93;
<AC11> = 94;
<BKSL> = 95;
<RTRN> = 96;
<KPEN> = 97;
<KP4> = 98;
<KP5> = 99;
<KP6> = 100;
<KP0> = 101;
<FIND> = 102;
<PGUP> = 103;
<CUT> = 104;
<NMLK> = 105;
<LFSH> = 106;
<AB01> = 107;
<AB02> = 108;
<AB03> = 109;
<AB04> = 110;
<AB05> = 111;
<AB06> = 112;
<AB07> = 113;
<AB08> = 114;
<AB09> = 115;
<AB10> = 116;
<RTSH> = 117;
<KP1> = 119;
<KP2> = 120;
<KP3> = 121;
<HELP> = 125;
<CAPS> = 126;
<LMTA> = 127;
<SPCE> = 128;
<RMTA> = 129;
<PGDN> = 130;
<KPAD> = 132;
indicator 1 = "Num Lock";
indicator 2 = "Scroll Lock";
indicator 3 = "Compose";
indicator 4 = "Caps Lock";
virtual indicator 5 = "Shift Lock";
virtual indicator 6 = "Group 2";
virtual indicator 7 = "Mouse Keys";
alias <RALT> = <ALGR>;
};
xkb_types "complete" {
virtual_modifiers
NumLock,Alt,LevelThree,AltGr,Meta,Super,Hyper,ScrollLock;
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]= Level1;
preserve[Lock]= Lock;
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_BREAK" {
modifiers= Control;
map[Control]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "Control";
};
type "PC_SYSRQ" {
modifiers= Alt;
map[Alt]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "Alt";
};
type "CTRL+ALT" {
modifiers= Control+Alt;
map[Control+Alt]= Level2;
level_name[Level1]= "Base";
level_name[Level2]= "Ctrl+Alt";
};
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 "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[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[Lock+LevelThree]= Level3;
preserve[Lock+LevelThree]= Lock;
map[Shift+Lock+LevelThree]= Level3;
map[Lock]= Level1;
preserve[Lock]= Lock;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
};
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,AltGr,Meta,Super,Hyper,ScrollLock;
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;
useModMapMods=level1;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Alt_R+AnyOf(all) {
virtualModifier= Alt;
useModMapMods=level1;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Meta_L+AnyOf(all) {
virtualModifier= Meta;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Meta_R+AnyOf(all) {
virtualModifier= Meta;
useModMapMods=level1;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Super_L+AnyOf(all) {
virtualModifier= Super;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Super_R+AnyOf(all) {
virtualModifier= Super;
useModMapMods=level1;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Hyper_L+AnyOf(all) {
virtualModifier= Hyper;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Hyper_R+AnyOf(all) {
virtualModifier= Hyper;
useModMapMods=level1;
action= SetMods(modifiers=modMapMods,clearLocks);
};
interpret Scroll_Lock+AnyOf(all) {
virtualModifier= ScrollLock;
action= LockMods(modifiers=modMapMods);
};
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 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=Alt,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 XF86_Switch_VT_1+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=1,!same);
};
interpret XF86_Switch_VT_2+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=2,!same);
};
interpret XF86_Switch_VT_3+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=3,!same);
};
interpret XF86_Switch_VT_4+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=4,!same);
};
interpret XF86_Switch_VT_5+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=5,!same);
};
interpret XF86_Switch_VT_6+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=6,!same);
};
interpret XF86_Switch_VT_7+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=7,!same);
};
interpret XF86_Switch_VT_8+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=8,!same);
};
interpret XF86_Switch_VT_9+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=9,!same);
};
interpret XF86_Switch_VT_10+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=10,!same);
};
interpret XF86_Switch_VT_11+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=11,!same);
};
interpret XF86_Switch_VT_12+AnyOfOrNone(all) {
repeat= True;
action= SwitchScreen(screen=12,!same);
};
interpret XF86_Ungrab+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 XF86_ClearGrab+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 XF86_Next_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 XF86_Prev_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 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 "Num Lock" {
!allowExplicit;
whichModState= locked;
modifiers= NumLock;
};
indicator "Scroll Lock" {
whichModState= locked;
modifiers= ScrollLock;
};
indicator "Caps Lock" {
!allowExplicit;
whichModState= locked;
modifiers= Lock;
};
indicator "Shift Lock" {
!allowExplicit;
whichModState= locked;
modifiers= Shift;
};
indicator "Group 2" {
!allowExplicit;
groups= 0xfe;
};
indicator "Mouse Keys" {
indicatorDrivesKeyboard;
controls= mouseKeys;
};
};
xkb_symbols "unknown" {
key <FK02> { [ F1, F11 ] };
key <FK10> { [ F2, F12 ] };
key <FK03> { [ F10, F20 ] };
key <FK11> { [ F3, F13 ] };
key <FK04> { [ F11 ] };
key <FK12> { [ F4, F14 ] };
key <FK05> { [ F12 ] };
key <ALGR> { [ F5, F15 ] };
key <FK06> { [ Alt_R ] };
key <> { [ F6, F16 ] };
key <FK08> { [ F7, F17 ] };
key <FK09> { [ F8, F18 ] };
key <LALT> { [ F9, F19 ] };
key <UP> { [ Alt_L ] };
key <PAUS> { [ Up ] };
key <PRSC> { [ Pause ] };
key <LEFT> { [ Scroll_Lock ] };
key <PROP> { [ Left ] };
key <RGHT> { [ Down ] };
key <ESC> { [ Right ] };
key <AE01> { [ Escape ] };
key <AE02> { [ 1, exclam ] };
key <AE03> { [ 2, at ] };
key <AE04> { [ 3, numbersign ] };
key <AE05> { [ 4, dollar ] };
key <AE06> { [ 5, percent ] };
key <AE07> { [ 6, asciicircum ] };
key <AE08> { [ 7, ampersand ] };
key <AE09> { [ 8, asterisk ] };
key <AE10> { [ 9, parenleft ] };
key <AE11> { [ 0, parenright ] };
key <AE12> { [ minus, underscore ] };
key <TLDE> { [ equal, plus ] };
key <BKSP> { [ grave, asciitilde ] };
key <INS> { [ BackSpace ] };
key <MUTE> { [ Insert ] };
key <KPDV> { [ equal ] };
key <KPMU> { [ KP_Divide ] };
key <POWR> { [ KP_Multiply ] };
key <COPY> { [ KP_Decimal ] };
key <TAB> { [ Home ] };
key <AD01> { [ Tab ] };
key <AD02> { [ q, Q ] };
key <AD03> { [ w, W ] };
key <AD04> { [ e, E ] };
key <AD05> { [ r, R ] };
key <AD06> { [ t, T ] };
key <AD07> { [ y, Y ] };
key <AD08> { [ u, U ] };
key <AD09> { [ i, I ] };
key <AD10> { [ o, O ] };
key <AD11> { [ p, P ] };
key <AD12> { [ bracketleft, braceleft ] };
key <DELE> { [ bracketright, braceright ] };
key <COMP> { [ BackSpace ] };
key <KP7> { [ Multi_key ] };
key <KP8> { [ KP_7 ] };
key <KP9> { [ KP_8 ] };
key <KPSU> { [ KP_9 ] };
key <OPEN> { [ KP_Subtract ] };
key <AC01> { [ Control_L ] };
key <AC02> { [ a, A ] };
key <AC03> { [ s, S ] };
key <AC04> { [ d, D ] };
key <AC05> { [ f, F ] };
key <AC06> { [ g, G ] };
key <AC07> { [ h, H ] };
key <AC08> { [ j, J ] };
key <AC09> { [ k, K ] };
key <AC11> { [ semicolon, colon ] };
key <BKSL> { [ apostrophe, quotedbl ] };
key <RTRN> { [ backslash, bar ] };
key <KPEN> { [ c, C ] };
key <KP4> { [ v, V ] };
key <KP5> { [ b, B ] };
key <KP6> { [ n, N ] };
key <KP0> { [ KP_6 ] };
key <FIND> { [ m, M ] };
key <PGUP> { [ comma, less ] };
key <CUT> { [ period, greater ] };
key <NMLK> { [ slash, question ] };
key <LFSH> { [ Shift_L ] };
key <AB01> { [ Linefeed ] };
key <AB02> { [ Prior ] };
key <AB04> { [ Caps_Lock ] };
key <AB05> { [ Shift_L ] };
key <AB06> { [ Num_Lock ] };
key <AB07> { [ z, Z ] };
key <AB08> { [ x, X ] };
key <KP1> { [ Next ] };
key <LMTA> { [ KP_Enter ] };
key <SPCE> { [ KP_4 ] };
key <RMTA> { [ KP_5 ] };
key <PGDN> { [ KP_6 ] };
modifier_map Mod1 { <FK06> };
modifier_map Mod1 { <UP> };
modifier_map Mod5 { <LEFT> };
modifier_map Control { <AC01> };
modifier_map Shift { <LFSH> };
modifier_map Lock { <AB04> };
modifier_map Shift { <AB05> };
modifier_map Mod2 { <AB06> };
};
xkb_geometry "sun(type5)" {
width= 515;
height= 170;
baseColor= "white";
labelColor= "black";
xfont=
"-*-helvetica-medium-r-normal--*-120-*-*-*-*-iso8859-1";
description= "Sun Type5 keyboard";
shape "EDGE" { corner= 2,{ [ 515, 170 ] } };
shape "NORM" {
corner= 1,
{ [ 18, 18 ] },
{ [ 2, 1 ], [ 16, 17 ] }
};
shape "BKSP" {
corner= 1,
{ [ 37, 18 ] },
{ [ 2, 1 ], [ 35, 17 ] }
};
shape "TABK" {
corner= 1,
{ [ 27, 18 ] },
{ [ 2, 1 ], [ 25, 17 ] }
};
shape "BKSL" {
corner= 1,
{ [ 27, 18 ] },
{ [ 2, 1 ], [ 25, 17 ] }
};
shape "RTRN" {
corner= 1,
{ [ 42, 18 ] },
{ [ 2, 1 ], [ 40, 17 ] }
};
shape "CAPS" {
corner= 1,
{ [ 32, 18 ] },
{ [ 2, 1 ], [ 30, 17 ] }
};
shape "LFSH" {
corner= 1,
{ [ 42, 18 ] },
{ [ 2, 1 ], [ 40, 17 ] }
};
shape "RTSH" {
corner= 1,
{ [ 51, 18 ] },
{ [ 2, 1 ], [ 49, 17 ] }
};
shape "LCTL" {
corner= 1,
{ [ 32, 18 ] },
{ [ 2, 1 ], [ 30, 17 ] }
};
shape "MODK" {
corner= 1,
{ [ 28, 18 ] },
{ [ 2, 1 ], [ 26, 17 ] }
};
shape "SPCE" {
corner= 1,
{ [ 157, 18 ] },
{ [ 2, 1 ], [ 155, 17 ] }
};
shape "KP0" {
corner= 1,
{ [ 37, 18 ] },
{ [ 2, 1 ], [ 35, 17 ] }
};
shape "KPAD" {
corner= 1,
{ [ 18, 37 ] },
{ [ 2, 1 ], [ 16, 36 ] }
};
shape "HELP" {
corner= 1,
{ [ 37, 18 ] },
{ [ 2, 1 ], [ 35, 17 ] }
};
shape "LOGO" { corner= 1,{ [ 16, 16 ] } };
section "Function" {
key.color= "white";
priority= 1;
top= 24;
left= 14;
width= 481;
height= 19;
row {
top= 1;
left= 1;
keys {
{ <HELP>, "HELP", 1 }, { <ESC>, "NORM", 9 },
{ <FK01>, "NORM", 19 }, { <FK02>, "NORM", 1 },
{ <FK03>, "NORM", 1 }, { <FK04>, "NORM", 1 },
{ <FK05>, "NORM", 11 }, { <FK06>, "NORM", 1 },
{ <FK07>, "NORM", 1 }, { <FK08>, "NORM", 1 },
{ <FK09>, "NORM", 11 }, { <FK10>, "NORM", 1 },
{ <FK11>, "NORM", 1 }, { <FK12>, "NORM", 1 },
{ <PRSC>, "NORM", 9 }, { <SCLK>, "NORM", 1 },
{ <PAUS>, "NORM", 1 }, { <MUTE>, "NORM", 9 },
{ <VOL->, "NORM", 1 }, { <VOL+>, "NORM", 1 },
{ <POWR>, "NORM", 1 }
};
};
}; // End of "Function" section
section "Alpha" {
key.color= "white";
priority= 2;
top= 61;
left= 14;
width= 333;
height= 95;
row {
top= 1;
left= 1;
keys {
{ <STOP>, "NORM", 1 }, { <AGAI>, "NORM", 1 },
{ <TLDE>, "NORM", 9 }, { <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 {
{ <PROP>, "NORM", 1 }, { <UNDO>, "NORM", 1 },
{ <TAB>, "TABK", 9 }, { <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 {
{ <FRNT>, "NORM", 1 }, { <COPY>, "NORM", 1 },
{ <CAPS>, "CAPS", 9 }, { <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 }
};
};
row {
top= 58;
left= 1;
keys {
{ <OPEN>, "NORM", 1 }, { <PAST>, "NORM", 1 },
{ <LFSH>, "LFSH", 9 }, { <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 {
{ <FIND>, "NORM", 1 }, { <CUT>, "NORM", 1 },
{ <LCTL>, "LCTL", 9 }, { <LALT>, "NORM", 1 },
{ <LMTA>, "NORM", 1 }, { <SPCE>, "SPCE", 1 },
{ <RMTA>, "NORM", 1 }, { <COMP>, "NORM", 1 },
{ <ALGR>, "NORM", 1 }
};
};
}; // End of "Alpha" section
section "Editing" {
key.color= "white";
priority= 3;
top= 61;
left= 352;
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= "white";
priority= 4;
top= 61;
left= 420;
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 }, { <KP8>, "NORM", 1 },
{ <KP9>, "NORM", 1 },
{ <KPAD>, "KPAD", 1, color="grey20" }
};
};
row {
top= 39;
left= 1;
keys {
{ <KP4>, "NORM", 1 }, { <KP5>, "NORM", 1 },
{ <KP6>, "NORM", 1 }
};
};
row {
top= 58;
left= 1;
keys {
{ <KP1>, "NORM", 1 }, { <KP2>, "NORM", 1 },
{ <KP3>, "NORM", 1 },
{ <KPEN>, "KPAD", 1, color="grey20" }
};
};
row {
top= 77;
left= 1;
keys {
{ <KP0>, "KP0", 1 }, { <KPDL>, "NORM", 1 }
};
};
}; // End of "Keypad" section
outline "Edges" {
top= 0;
left= 0;
priority= 0;
shape= "EDGE";
};
};
};
Reply to: