正如标题所问。如何清除 xmodmap 设置?
我有一台 IBM M 型键盘,但不知何故 xkeycaps 误以为我的End键根本不是任何键。xev
当我使用它时,它会报告按键,所以我知道事件是由键盘生成的。此外,xkeycaps 认为我的箭头键全都坏了,而且显然滚动条坏了,所以它只能向下滚动 - 因此我无法向上滚动以找到可能靠近我的地图的 IBM 键盘,以便我可以修复我的键。
因此,我尝试将键盘重置为默认设置,但 xmodmap 手册页中却缺少“全部重置”或“全部清除”或任何类似的功能(我能找到)。
答案1
xmodmap
没有状态概念,因此无法直接重置状态。您可以在进行xmodmap -pke >.xmodmap.orig
任何更改之前使用来模拟它(尽管它不会保存修改器映射,您必须手动保存和恢复它)——但为时已晚。
不过,现代系统通常不使用它xmodmap
来配置键盘。 setxkbmap
这是现代的做法;而且做运行时重置绑定。因此,您可以使用setxkbmap -layout us
将一切重置为正常。更完整的方法是检查 中的默认配置/etc/X11/xorg.conf
。例如,在我的系统上
jinx:718 Z$ sed -n '/Identifier.*Keyboard/,/EndSection/p' /etc/X11/xorg.conf
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
Option "XkbOptions" "grp:alt_shift_toggle"
EndSection
对应的命令是
setxkbmap -model pc105 -layout us -option grp:alt_shift_toggle
XkbVariant
如果输出中有条目,则可以使用 传递其值-variant
。需要注意的一点是,选项是经过特殊处理的:每个-option
参数只能设置一个选项,并且需要先使用-option ''
重置参数。因此,当出现类似情况时,要完全重置,XkbOptions "grp:alt_shift_toggle,grp:ctrls_toggle"
您需要
setxkbmap -model pc105 -layout us -option '' -option grp:alt_shift_toggle -option grp:ctrls_toggle
答案2
setxkbmap -option
将元键重置为默认值。
答案3
尝试使用xmodmap
,我弄乱了我的密钥设置
xmodmap -en "keysym BackSpace = Delete"
。我以为该-n
标志不会导致采取任何行动,因为man xmodmap
页面指出
-n This option indicates that xmodmap should not change the mappings, but should display what it would
do, like make(1) does when given this option.
但是该命令导致我的Delete
钥匙变得毫无用处。
阅读完上述内容后,我只是输入了setxkbmap
,希望它会向我显示选项,而事实上它立即返回而没有任何输出,然后我的Delete
键奇迹般地再次工作了!
看起来好像
setxkbmap
独自一人就能完成这项工作……
答案4
插入新键盘后 xmodmap 将重置。
因此,拔下并插入键盘(按任意顺序)
这将重置 xmodmap。