Alan Coopersmith wrote:
> Lars Frantzen wrote:
> > I run Solaris Express 10/06 on an x86 machine. Working fine, but there is
> > one
> > very annoying "feature" with the Xserver.
> >
> > Whenever I press Control + Backspace (no Alt needed here), the Xserver
> > running
> > Gnome is killed. Since this combination is quite common, I manage to kill
> > it accidently
> > over and over.
> >
> > Can someone please hint me to an .xorg.conf option or something
> > which helps here?
>
> Try turning off NumLock - it's a bug.
Hmm, so root cause of this nasty problem is that Solaris' xkb symbol mappings
setup the Num_Lock key as Modifier #3, but the Xorg server seems to have
some hardcoded defaults and expects some "AltLang" key as Modifier #3:
(.../hw/xfree86/common/atKeynames.h)
#define AltMask Mod1Mask
#define NumLockMask Mod2Mask
#define AltLangMask Mod3Mask
#define KanaMask Mod4Mask
#define ScrollLockMask Mod5Mask
The Xorg "terminate server" feature checks for
ControlMask + AltMask, or ControlMask + AltLangMask.
That is, Control + Mod1 + BACKSPACE, or
Control + Mod3 + BACKSPACE terminates the Xorg
Server.
On Solaris (with an USB german layout keyboard):
% xmodmap
xmodmap: up to 2 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x6d)
mod1 Alt_L (0x40) <<<<<<<<<<<<<<<<<<<
mod2 Mode_switch (0x71)
mod3 Num_Lock (0x4d) <<<<<<<<<<<<<<<<<<<
mod4 Meta_L (0x73), Meta_R (0x74)
mod5
So, if you need the "Ctrl+Alt+Backspace terminates the Xorg
server" feature, changing xmodmap to have Num_Lock on
Modifier2 and Mode_switch on Modifier 3 fixes the problem with
accidental stopping the Xorg by "NumLock + Control + Backspace":
% xmodmap -e 'clear mod2' -e 'clear mod3' \
-e 'add mod2 = Num_Lock' -e 'add mod3 = Mode_switch'
You can also change that in the "defaults" section in
/usr/X11/lib/X11/xkb/symbols/sun/solaris.
This message posted from opensolaris.org