[vox-tech] using xmodmap to swap modifier key locations
Rob Rogers
vox-tech@lists.lugod.org
Wed, 08 Oct 2003 23:45:37 -0700
On Wed, 8 Oct 2003 22:05:50 -0700, Henry House <hajhouse@houseag.com>
wrote:
> The manual page for xmodmap lists the following example (exact quote):
>
> !
> ! Swap Caps_Lock and Control_L
> !
> remove Lock = Caps_Lock
> remove Control = Control_L
> keysym Control_L = Caps_Lock
> keysym Caps_Lock = Control_L
> add Lock = Caps_Lock
> add Control = Control_L
>
> which is said to turn the left caps lock key into a control key and the
> left
> control key into a caps lock key. It does not work. On my system,
> running the
> above commands (saved to a file, then run using 'xmodmap <filename>')
> turns
> the left control key into a shift key (!) and has no effect on the caps
> lock
> key. Neither xmodmap nor the x server print any errors or other messages.
> Does anyone have a suggestion? My XFree86 config file follows.
[snip]
> Section "InputDevice"
> Identifier "Keyboard1"
> Driver "Keyboard"
> Option "AutoRepeat" "500 30"
> #Option "XkbRules" "xfree86"
> #Option "XkbModel" "pc101"
> #Option "XkbLayout" "us"
> EndSection
I know this isn't quite what you were asking for specifically, but I
wasn't sure if xmodmap was a requirement. In your InputDevice section for
your keyboard in your XFree86 config, you can try adding the following:
Option "XkbOptions" "ctrl:swapcaps"
I haven't used that specific option, but I do use "ctrl:nocaps" and it's
been working great here. (it turns your caps lock into a second left
control, without switching l-ctrl into caps lock)