Shift 键在终端中出现意外行为

Shift 键在终端中出现意外行为

我正在运行 macOS Mojave,但我的密钥出现了奇怪的行为Shift

在终端中输入任何文本后,如果我按下并释放该Shift键,它将添加;2D;10D到该字符串的末尾。例如,如果我输入hello并立即按下并释放Shift,它将变为hello;2D;10D,并且它将添加该附加字符串,次数与我按下和释放的次数相同Shift,例如,Shift在末尾按两次hello将创建hello;2D;10D;2D;10D,等等。如果我尚未输入任何文本并按下并释放,则Shift什么也不会发生。

当我处于 Vim 插入模式或冒号命令模式时,如果我输入了任何内容,按下并释放该Shift键会将光标移动到最近创建的字符串的第一个字符之后。例如,我按下i进入插入模式。|表示我的光标。如果我输入hello并立即按下并释放Shift,我的光标将停留在此处h|ello。我注意到,在正常模式下,当我按下并释放 时Shift,显示按键组合的右下角会快速闪烁~@#

为了调试,我删除了所有插件并注释掉了 .vimrc 文件,但仍然出现相同的行为。这种行为发生在我使用的任何终端仿真器中(标准 Mac 终端、iTerm2、VSCode 命令行等)。在命令行之外,例如当我使用 Microsoft Word 时,我不会遇到这种行为,甚至现在输入此内容,按下和释放键也Shift没有任何效果。任何关于为什么会发生这种情况的反馈都会有所帮助!

答案1

由于它发生在 iTerm 和 Terminal.app 上,请检查$TERM设置并尝试将其更改为另一个标准终端。 xterm-256color通常效果很好。

echo "$TERM"            # remember the output of this so you can return to it if needed!
export TERM='xterm-256color'

相关内容