Ubuntu 17.10及Terminator中Caps Lock转Esc映射失败,求全局解决方案
兄弟,我太懂你这种在Ubuntu 17.10上想把Caps Lock改成Esc却碰壁的感觉了——毕竟默认的Wayland会话和旧的X11工具不兼容,你之前试的那些方法自然不管用。给你几个亲测有效的全局解决方案,分情况来:
方法一:用GNOME系统设置(最简单,推荐)
这是最直观的方式,不用敲任何命令:
- 打开系统设置,找到键盘选项
- 切换到快捷键标签页,拉到最底部选择打字分类
- 找到「Caps Lock键行为」的下拉菜单,直接选择「Escape」即可
- 这个设置全局生效,不管你用Wayland还是Xorg会话,注销一次就会全系统生效
方法二:用dconf-editor手动配置(适合设置项隐藏的情况)
如果你的系统设置里找不到上面的选项,可以直接修改GNOME的底层配置:
- 先安装dconf-editor:打开终端输入
sudo apt install dconf-editor - 启动dconf-editor,导航到路径
org.gnome.desktop.input-sources - 找到
xkb-options这个配置项,点击进入后,把'caps:escape'添加到列表中- 注意格式:每个选项要用单引号括起来,多个选项用逗号分隔,比如空列表就填
['caps:escape']
- 注意格式:每个选项要用单引号括起来,多个选项用逗号分隔,比如空列表就填
- 关闭dconf-editor,注销再登录,设置就会生效
方法三:针对Xorg会话的持久化配置
如果你登录时选择了「Ubuntu on Xorg」(而非默认的Wayland),可以用XKB的方式做永久配置:
- 打开终端,创建自定义XKB符号文件:
sudo nano /usr/share/X11/xkb/symbols/custom - 在文件中输入以下内容:
partial modifier_keys xkb_symbols "caps_to_esc" { replace key <CAPS> { [ Escape ] }; }; - 保存退出(按
Ctrl+O回车,再Ctrl+X) - 编辑XKB规则文件
evdev:
找到sudo nano /usr/share/X11/xkb/rules/evdev! option = symbols段落,添加一行:caps:escape = +custom(caps_to_esc) - 同样编辑
evdev.lst文件:
找到sudo nano /usr/share/X11/xkb/rules/evdev.lst! option部分,添加一行:caps:escape Caps Lock as Escape - 完成后,要么在系统设置的键盘选项里找到这个配置启用,要么直接在终端输入
setxkbmap -option caps:escape临时生效,重启后配置会自动保留
为啥之前的方法没用?因为Ubuntu 17.10默认用Wayland显示服务器,而你试的xmodmap是X11时代的工具,Wayland完全不支持它,所以那些旧教程自然不管用。上面的方法都是针对当前系统环境的正确姿势,选一个适合你的就行~
内容的提问来源于stack exchange,提问作者springloaded
相关产品推荐
相关产品推荐

