与 Ctrl 键交换后无法重新映射 CapsLock

与 Ctrl 键交换后无法重新映射 CapsLock

我重新映射了 Caps Lock 键,以便 Emacs 中的开发速度更快。为此,我进行了编辑/etc/default/keyboard以包括:

XKBOPTIONS="ctrl:swapcaps"

这将 Caps Lock 键与Ctrl键互换。一段时间后,我意识到我宁愿让Caps lockCtrl键执行相同的功能,而不是互换。所以我将上面的内容改为:

XKBOPTIONS="ctrl:nocaps"

这应该使 Caps LockCtrl成为Ctrl键,对吗?好吧,当我运行:

sudo dpkg-reconfigure -phigh console-setup

并重新启动后,两个键的映射没有发生任何变化。它们仍然交换了。因此,我决定使用

XKBOPTIONS=""

再次,没有任何更改生效。有什么想法吗?谢谢。

答案1

如果你不介意解决方案仅适用于 X...

我推荐的技术是将以下内容放入脚本中:

#!/bin/sh
xmodmap - << !
remove Lock = Caps_Lock
remove Control = Control_L
keysym Control_L = Caps_Lock
keysym Caps_Lock = Control_L
add Lock = Caps_Lock
add Control = Control_L
!

您必须在登录时运行它一次。

如果运行两次,它将逆转行为,即再次恢复正常!

相关内容