windows 平台下
Esc
按键在vim经常使用,Caps Lock
很少使用,这两个按键的位置不合理,调换一下位置比较合理.
方法1.使用 PowerToys
仪表盘 -> 键盘管理器 -> 重新映射键
方法2.修改注册表
这种方法不太好.
Win+R
-> regedit
-> 找到 “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout”
-> 右键 “Keyboard Layout”
-> “新建”
-> “二进制值”
-> 重命名 “新 值 #1” 为 “Scancode Map”
-> 右键 “Scancode Map”
-> “修改”
-> 输入值如下
0000 00 00 00 00 00 00 00 00
0008 03 00 00 00 01 00 3a 00
0010 3a 00 01 00 00 00 00 00
0018
最后重启.
ubuntu 平台下
当使用ubuntu作为办公平台,设置映射。
如果在windows平台下使用ubuntu虚拟机,使用windows宿主平台的按键映射。
刚开始使用xmodmap进行设置,发现不起作用,发现使用xkb设置比较好.
1.调试手段
#查看按键信息
#一定要在ubuntu界面的虚拟终端中运行
xev
2.设置
2.1.查看当前键盘布局
setxkbmap -print
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+inet(evdev)" };
xkb_geometry { include "pc(pc105)" };
};
j
xkb_symbols
属性后面的 pc 即我们需要修改的文件,修改前务必做好备份.
2.2.修改配置
cd /usr/share/X11/xkb/symbols/
sudo cp pc pc.bak
sudo vim pc
修改内容如下:
- key <ESC> { [ Escape ] };
+ key <ESC> { [ Caps_Lock ] };
- key <CAPS> { [ Caps_Lock ] };
+ key <CAPS> { [ Escape ] };
2.3.重启或logout生效
3.查看按键映射表
xmodmap -pke
参考资料
- Ubuntu 使用 xkb 修改按键映射: https://blog.csdn.net/weixin_40407199/article/details/79234552
- https://wiki.archlinux.org/title/Keyboard_input#Identifying_keycodes_in_Xorg
- https://wiki.archlinux.org/title/X_keyboard_extension
- https://wiki.archlinux.org/title/Xmodmap#
- https://wiki.archlinuxcn.org/wiki/Xmodmap#
- https://www.jwz.org/xkeycaps/