Swapping B and Caps_Lock in a new keyboard layout

Swapping B and Caps_Lock in a new keyboard layout

Dotan Cohen dotancohen at gmail.com
Thu May 12 00:05:40 IDT 2011


Hi all, I'm trying to create a new ergonomic keyboard layout:
http://dotancohen.com/eng/noah_ergonomic_keyboard_layout.html

I'm getting stuck on moving the modifier keys and CapsLock. My current
approach is simply to modify the standard US layout to swap CapsLock
and B, like so:

First I enable standard US layout like this:
✈demios:~$ setxkbmap -layout us
Then export it to a file:
✈demios:~$ xmodmap -pke > noah
Then do the mods:
✈demios:~$ vi noah
Then load the file:
✈demios:~$ xmodmap noah

The mods consist of swapping the scancodes for the two keys and adding
some statements at the end:
..snip..
keycode  56 = b B b B // WAS 66
..snip..
keycode  66 = Caps_Lock NoSymbol Caps_Lock // WAS 56
..snip..
remove Lock = Caps_Lock
keysym b = Caps_Lock
keysym B = Caps_Lock
add Lock = Caps_Lock

However, although the B key now engages Caps_Lock, pressing the key
again does not disengage it! How can I get the key to disengage
Caps_Lock as well?

Thanks!

-- 
Dotan Cohen

http://gibberish.co.il
http://what-is-what.com



More information about the Linux-il mailing list