我如何清除 xmodmap 设置?

我如何清除 xmodmap 设置?

正如标题所问。如何清除 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。

相关内容