我尝试将左 Control 键重新映射到左 Alt 键。通过/usr/share/X11/xkb/keycodes/evdev
这样做:
// <LALT> = 64;
// <RCTL> = 105;
// <LCTL> = 37;
// <RALT> = 108;
<LALT> = 64;
<LCTL> = 133;
<RCTL> = 134;
<RALT> = 105;
<SPCE> = 65;
// Microsoft keyboard extra keys
// <LWIN> = 133;
// <RWIN> = 134;
<RALT>
现在,不幸的是,当我按下应该发送 105 代码 ( )的键时,xev
显示Alt_R
未发送,相反,我看到了以下内容:
KeyPress event, serial 36, synthetic NO, window 0x1000001,
root 0x953, subw 0x0, time 3699145, (1608,681), root:(1609,682),
state 0x0, keycode 105 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XKeysymToKeycode returns keycode: 92
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
我该如何让它发送Alt_R
?
答案1
好吧,我大概知道出了什么问题。也许不完全是,但我设法让它发挥作用。
因此,为了重置键盘设置,我正在运行setxkbmap
.出于某种原因,我认为不带参数运行它会导致 X 重新加载键盘配置。事实证明,它可能将其他一些键盘布局设置为默认值,其中右 Alt 被映射到那个奇怪的 Shift 键。如果我重新启动显示管理器,该设置也会保留。
最终只是运行setxkbmap us
修复了它。