// $XConsortium: basic /main/5 1995/12/07 21:32:21 kaleb $ // Minimal set of symbol interpretations to provide // reasonable default behavior (Num lock, shift and // caps lock and mode switch) and set up the // automatic updating of common keyboard LEDs. default xkb_compatibility "basic" { virtual_modifiers NumLock,AltGr; interpret.repeat= False; setMods.clearLocks= True; latchMods.clearLocks= True; latchMods.latchToLock= True; interpret Shift_Lock+AnyOf(Shift+Lock) { action= LockMods(modifiers=Shift); }; interpret Any+Lock { action= LockMods(modifiers=Lock); }; interpret Num_Lock+Any { // Uncommenting this line and commenting out the line above gets the // NumLock LED working properly, but breaks the ScrollLock LED (it no // longer goes on when ScrollLock is active). That wouldn't be so bad, // but it also causes BackSpace to map to Delete, which makes editing // with vi a pain (backspace doesn't work like it should anymore, you // have to use Ctrl-h...) // //JWE interpret Scroll_Lock+AnyOf(Shift_L+Shift_R) { virtualModifier= NumLock; action= LockMods(modifiers=NumLock); }; interpret Mode_switch { useModMapMods= level1; virtualModifier= AltGr; action= SetGroup(group=2,clearLocks); }; interpret Any + Any { action= SetMods(modifiers=modMapMods); }; group 2 = AltGr; group 3 = AltGr; group 4 = AltGr; indicator.allowExplicit= False; indicator "Caps Lock" { whichModState= Locked; modifiers= Lock; }; // Commenting out this section fixes the "both NumLock and ScrollLock LEDs // come on when ScrollLock is active" problem. Now the NumLock LED never // comes on... //JWE indicator "Num Lock" { //JWE whichModState= Locked; //JWE modifiers= NumLock; //JWE }; indicator "Shift Lock" { whichModState= Locked; modifiers= Shift; }; indicator.allowExplicit= True; };