我在文件中有以下内容~/.Xmodmap
! change CapsLock to Escape
clear Lock
keycode 0x42 = Escape
当我发出命令时,它将 CapsLock 键重新映射到 Escape,并且工作得很好xmodmap ~/.Xmodmap
。但是,当我启动笔记本电脑时它并不总是有效。但有时它可以工作!
有人知道发生了什么吗?我该如何尝试解决此问题?
答案1
我会研究一下~/.xinitrc
,但还有无数其他的可能性,这取决于你的窗口管理器或桌面环境(例如,如何在登录时设置 Xmodmap?)。问题中没有足够的信息来找出答案。
但将 CapsLock 重新映射到 Escape 是 XKB 扩展提供的规范映射之一,如所列man xkeyboard-config
. 刚刚发布
setxkbmap -option 'caps:escape'
瞧,CapsLock 就是 Escape。可以通过编辑以下“XKBOPTIONS”行使其持久化/etc/default/keyboard
:
XKBOPTIONS="caps:escape"
Debian 和 Ubuntu 根据该文件设置键盘,因此这是一个可靠的解决方案。您可以删除.Xmodmap
它,并确保没有其他程序干扰键盘映射。