在Microsoft Store 中下载PowerToys,其中有一个Keyboard Manager
的工具,可以用来交换键位
无论是Xorg
还是Wayland
,该方法都适用
修改以下文件
/usr/share/X11/xkb/symbols/pc
格式类似如下风格
key <ESC> { [ Escape ] };
key <CAPS> { [ Caps_Lock ] };
若要交换Caps_Lock
和Esc
,则修改为
key <ESC> { [ Caps_Lock ] };
key <CAPS> { [ Escape ] };
-
运行以下命令,备份当前键盘映射
dumpkeys > back.kmap cp back.kmap new.kmap
-
修改
new.kmap
文件,将Caps_Lock
和Esc
的映射交换keycode 1 = Escape ... keycode 58 = CtrlL_Lock ...
keycode 1 = CtrlL_Lock ... keycode 58 = Escape ...
-
运行以下命令,使新的键盘映射生效
loadkeys new.kmap
-
若要恢复默认键盘映射,运行以下命令
loadkeys back.kmap
-
若要每次开机自动生效,将以下命令添加到
/etc/rc.local
中即可,注意/etc/rc.local
文件需要有可执行权限,可运行sudo chmod u+x /etc/rc.local
赋予其可执行权限#!/bin/bash /usr/bin/loadkeys /path/to/new.kmap