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

只在 debian 系上进行了测试,发现xcape可用。(作者换用 Manjaro + KDE,可用)

  1. 首先,修改系统的按键映射。

键盘映射文件在/usr/share/X11/xkb/ 文件夹下。利用命令setxkbmap -print查看自己当前系统使用的键盘设定,选择合适的文件修改。我选择修改了symbols下面的pc文件,修改keycodes下面的文件应该也可以,我没有尝试。修改前注意备份。如果出现问题,可以开机引导时选择第二个然后选recovery 输入su的密码然后在命令行改回来。
重新登录或者重启后生效。

更新:KDE 设置中可以进行修改。

参考链接:https://bbs.deepin.org/forum.php?mod=viewthread&tid=185135

  1. 利用xcape进行esc映射。(arch 用户参考最后一条参考链接)
# 安装xcape
sudo apt install xcape
# 按键映射
xcape -e 'Control_L=Escape'

运行完命令后应该就成功了。可以考虑将命令添加到 ~/.profile中使其开机生效。

目前发现的问题有两个。一方面会有轻微的卡顿,另一方面可能和 fcitx 有一定冲突。(换用 Manjaro 之后尚未遇到这两个问题)

果然自己太渣了。网上搜索了一下,发现 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

posted @ 2020-05-28 17:46  飞舞的冰龙  阅读(497)  评论(0编辑  收藏  举报