![gnome-terminal:Alt 键上有奇怪的控制字符](https://linux22.com/image/13110/gnome-terminal%EF%BC%9AAlt%20%E9%94%AE%E4%B8%8A%E6%9C%89%E5%A5%87%E6%80%AA%E7%9A%84%E6%8E%A7%E5%88%B6%E5%AD%97%E7%AC%A6.png)
我可能配置错误了一些东西,但我不知道是什么。(参见下面的更新1和2)在 中gnome-terminal
,当我点击Alt(没有任何其他键)时,它立即发送^[<
到终端(我之前通过点击Ctrl+进行了测试)。由于我经常使用+ ,这是非常不幸的,因为控制序列将例如移动到历史记录的开头或在.但是, +仍然可以工作并根据需要在窗口之间循环。VAltAltTabvim
AltTab
可能是什么原因以及如何恢复 gnome-terminal 中的默认行为?
- 操作系统:Linux Mint 19.3 Tricia x86_64
- 内核:5.3.0-24-generic
- 外壳:bash 4.4.20
- 使用 VTE 0.52.2 +GNUTLS -PCRE2 的 GNOME 终端 3.28.1
更新1
我发现这种情况仅发生在笔记本电脑键盘本身上,而不是使用外部连接的 USB 键盘。当连接外部键盘时,两个Alt键的行为不同。
笔记本电脑是联想 P53。
我仍然不知道如何修复笔记本电脑键盘的问题,但至少我更接近问题的根源。
更新2
跑步时我很快就按下了一次xev
(按下并立即松开) ;Alt首先在笔记本电脑键盘上,然后在外接 USB 键盘上:
# LAPTOP KEYBOARD ALT-KEY
MappingNotify event, serial 39, synthetic NO, window 0x0,
request MappingKeyboard, first_keycode 8, count 248
KeyPress event, serial 39, synthetic NO, window 0x6a00001,
root 0x2b6, subw 0x0, time 9398319, (162,-8), root:(903,449),
state 0x10, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 39, synthetic NO, window 0x6a00001,
root 0x2b6, subw 0x0, time 9398319, (162,-8), root:(903,449),
state 0x18, keycode 94 (keysym 0x3c, less), same_screen YES,
XLookupString gives 1 bytes: (3c) "<"
XmbLookupString gives 1 bytes: (3c) "<"
XFilterEvent returns: False
KeyRelease event, serial 40, synthetic NO, window 0x6a00001,
root 0x2b6, subw 0x0, time 9398360, (162,-8), root:(903,449),
state 0x18, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 40, synthetic NO, window 0x6a00001,
root 0x2b6, subw 0x0, time 9398360, (162,-8), root:(903,449),
state 0x10, keycode 94 (keysym 0x3c, less), same_screen YES,
XLookupString gives 1 bytes: (3c) "<"
XFilterEvent returns: False
# EXTERNAL USB KEYBOARD ALT-KEY
MappingNotify event, serial 40, synthetic NO, window 0x0,
request MappingKeyboard, first_keycode 8, count 248
KeyPress event, serial 40, synthetic NO, window 0x6a00001,
root 0x2b6, subw 0x0, time 9402608, (162,-8), root:(903,449),
state 0x10, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 41, synthetic NO, window 0x6a00001,
root 0x2b6, subw 0x0, time 9402704, (162,-8), root:(903,449),
state 0x18, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
更新3
这可能是硬件缺陷(请参阅评论和答案)。我将从制造商那里得到一个新键盘。
答案1
这是硬件缺陷,并已得到制造商的确认。更换键盘解决了这个问题。感谢您帮忙调查!