在 Linux 中将 Caps 根据是否为修饰键分别映射到 esc 和 Ctrl

只在 debian 系上进行了测试,发现xcape可用。

  1. 首先,修改系统的按键映射。
    键盘映射文件在/usr/share/X11/xkb/ 文件夹下。利用命令setxkbmap -print查看自己当前系统使用的键盘设定,选择合适的文件修改。我选择修改了symbols下面的pc文件,修改keycodes下面的文件应该也可以,我没有尝试。修改前注意备份。如果出现问题,可以开机引导时选择第二个然后选recovery 输入su的密码然后在命令行改回来。
    重新登录或者重启后生效。
    参考链接:https://bbs.deepin.org/forum.php?mod=viewthread&tid=185135
  2. 利用xcape进行esc映射。(arch 用户参考最后一条参考链接)
# 安装xcape
sudo apt install xcape
# 按键映射
xcape -e 'Control_L=Escape'

运行完命令后应该就成功了。可以考虑将命令添加到 ~/.profile中使其开机生效。
目前发现的问题有两个。一方面会有轻微的卡顿,另一方面可能和 fcitx 有一定冲突。
果然自己太渣了。网上搜索了一下,发现 emacs-China 上有很多人讨论过了。渣渣遇到的问题果然大神们早就遇到了。
参考链接:
https://askubuntu.com/questions/177824/remapping-caps-lock-to-control-and-escape-not-the-usual-way/228379#228379
https://www.dannyguo.com/blog/remap-caps-lock-to-escape-and-control/#linux

上一篇:linux 退出


下一篇:4、阿里云ESC服务器:Linux执行jar包