尝试使用xmodmap
摆脱大写锁定时出现此错误:
$ xmodmap -e 'clear Lock'
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 118 (X_SetModifierMapping)
Value in failed request: 0x17
Serial number of failed request: 8
Current serial number in output stream: 8
我在 Maverick "10.10" Meercat 上运行 xfce。在我将键盘布局小程序添加到面板之前,没有出现此问题;在此之前,我能够运行我的 xmodmap 脚本来交换 Esc 和 CapsLock:
!Remap Caps_Lock as Escape
remove Lock = Caps_Lock
keysym Caps_Lock = Escape
我在键盘布局首选项中选择 alt-capslock 作为键盘开关组合可能是相关的。
我之前遇到过类似的问题,在另一台机器上运行 openbox。在那台机器上,当我升级到 Lucid 时,这个问题就开始了,并且一直存在于 Maverick(10.10 版)中。我报告了 xorg 中的一个错误。但是,目前尚不清楚这是否真的是 xorg 的问题,或者我只是在配置上做错了什么。
其他人是否遇到过这个问题?有人可以阐明这里发生了什么吗?似乎涉及很多层,而且我对它们中的任何一个都不是特别了解,因此任何信息都会有所帮助。
更新
我发现该问题是通过添加加拿大布局变体“多语言”(ca-multix)而专门触发的。如果我改为添加变体“多语言(第一部分)”,则不会出现问题。我认为这可能最终会成为一个可用的解决方法,但我还不知道这些变体之间的区别是什么。
我已经提交了一个freedesktop 问题,并且正在评论一个相关的ubuntu 问题。
这对我有用;清除锁定键码 66 = Escape