general:linux:swap_left_shift_and_ctrl_useful_on_typematrix_keyboards
Use setxkbmap to swap the Left Shift and Left Control
sunkan@sunkan:~$ find .xkb/ -ls 265001 4 drwxr-xr-x 4 sunkan sunkan 4096 jan 17 12:29 .xkb/ 265003 4 drwxr-xr-x 2 sunkan sunkan 4096 jan 17 12:28 .xkb/keymap 265014 4 -rw-r--r-- 1 sunkan sunkan 319 jan 17 12:21 .xkb/keymap/mykbd 265012 16 -rw-r--r-- 1 sunkan sunkan 16080 jan 17 12:28 .xkb/keymap/mykbd.xkm 265009 4 drwxr-xr-x 2 sunkan sunkan 4096 jan 17 12:20 .xkb/symbols 265013 4 -rw-r--r-- 1 sunkan sunkan 142 jan 17 12:20 .xkb/symbols/myswap 265018 4 -rwxr-xr-x 1 sunkan sunkan 69 jan 17 12:29 .xkb/set.sh sunkan@sunkan:~$
sunkan@sunkan:~$ cat .xkb/keymap/mykbd
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us(dvorak)+se(dvorak_a5):2+se:3+inet(evdev)+ctrl(ac_ctrl)+myswap(swap_l_shift_ctrl)" };
xkb_geometry { include "typematrix(tm2030USB-102)" };
};
sunkan@sunkan:~$ cat .xkb/symbols/myswap
partial modifier_keys
xkb_symbols "swap_l_shift_ctrl" {
replace key <LCTL> { [ Shift_L ] };
replace key <LFSH> { [ Control_L ] };
};
sunkan@sunkan:~$ cat .xkb/set.sh #!/bin/sh xkbcomp -w3 -I$HOME/.xkb $HOME/.xkb/keymap/mykbd $DISPLAY
general/linux/swap_left_shift_and_ctrl_useful_on_typematrix_keyboards.txt · Last modified: 2021/01/17 11:34 by sunkan