I start my X session with startx, and lately I've noticed that some
(but not all) of my .Xmodmap settings are being lost once my X session
is up. I think this behavior started sometime in the past month or two.

I'm using xmodmap to make Caps_Lock key a second Control_L. These are
the contents of my .Xmodmap:

clear Lock
keysym Caps_Lock = Control_L
add Control = Control_L

I'm calling xmodmap in my .xinitrc like this:

if [ -f "$USRMODMAP" ]; then
  /usr/bin/xmodmap $USRMODMAP

Once my X session is up, Caps_Lock is recognized as a second Control_L
(as expected), but it's assigned to the lock modifier instead of the
control modifier. I've edited my .xinitrc to print the modifier map at
various points to demonstrate what's going on:

Before applying .Xmodmap:
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)

After applying .Xmodmap (and immediately before executing the window
control     Control_L (0x25),  Control_L (0x42),  Control_R (0x69)

This is exactly how I want it to look. However, once the window
manager is up and I print the modifier map again, I get this:
lock        Control_L (0x42)
control     Control_L (0x25),  Control_R (0x69)

What could be moving Control_L (0x42) from control to lock? How can I
prevent it? I'm using the blackbox window manager, but I've also tried
other window managers (awesome, openbox, twm) and saw the same
behavior. I've tried moving .xinitrc to .xsession, and that didn't
help. Using xdm instead of startx does fix the problem, however. This
is on Debian unstable.

In researching this problem, I've seen a few comments that xmodmap is
deprecated. If this is true, what is the replacement? I'd like the
option to apply these settings on a per-user basis.

Thanks for any help you can provide.

To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org 
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to