Как исправить Home и закончить в Vim?
-
19-09-2019 - |
Вопрос
Я использую vim в gnome-терминале (2.26.0):хотя я использую в 95% случаев "$" для перехода к EOL и "0" для обратного, время от времени я нажимаю "Home" или "End".
Когда я использую Home, текст, который у меня есть в текущей строке, перемещается на строку вниз, оставляя меня в режиме вставки в текущей строке, и буква H появляется в начале строки.
Когда я нажимаю End, это то же самое, но с буквой F вместо H.
Почему это происходит?Как я могу это исправить?(исправление означало бы наличие стандартной функциональности при нажатии на эти клавиши).
Решение
Это происходит потому, что нажатие клавиш home и end в терминале отправляет в vim escape-последовательность, состоящую из нескольких символов, и vim некорректно связывает эти escape-последовательности обратно с нажатыми вами клавишами.
Чтобы исправить это, вам нужно настроить параметр term.Gnome-terminal совместим с xterm, поэтому вы могли бы попробовать добавить это в ваш .vimrc:
set term=xterm-256color
Параметр term является производным от переменной окружения TERM, поэтому вы можете захотеть выяснить, почему он изначально установлен неправильно.