Я использую 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'