Например, когда я нажимаю «I», чтобы перейти в режим вставки, а затем с помощью клавиш со стрелками перемещаться по строке, стрелка влево заканчивается вставкой буквы «D» на одну строку выше строки, которую я собирался редактировать, стрелка вправо вставляет 'C' и т. д. Это конфигурация сервера, SSH, vim или что? Любой совет приветствуется, я понимаю, что это не совсем вопрос программирования, но я не уверен, куда именно еще его подать.
4 ответа
Это проблема типа терминала. Окно, создающее удаленное соединение, неправильно отображает понятный тип терминала. Или, может быть, хост не распознает тип терминала и делает ставку на vt100 или что-то еще.
Конкретный клиент и платформа ssh, а также тип хоста необходимы для получения подробной справки, но после подключения и входа в систему, но перед запуском vim введите echo $TERM
. Если он пуст или поврежден, попробуйте установить его в xterm и посмотреть, работает ли vim лучше.
Добавьте следующую строку в файл .profile
вашего домашнего каталога:
TERM=xterm-color
Ваш локальный терминал и настройки $TERM
на удаленной стороне не совпадают. Сконфигурируйте свой клиент для VT110, VT220 или VT525 (чем выше, тем лучше), затем установите $TERM
на удаленной стороне на то же значение.
На этой странице сказано, что ручная установка переменной TERM почти никогда не является хорошей идеей, и предлагаются некоторые альтернативы:
https://wiki.archlinux.org/index.php/Why_don%27t_my_Home_and_End_keys_work_in_terminals%3f
Конечно же, для меня просто сбрасывание моей переменной TERM устранило проблему, а также другие проблемы, такие как цвета терминала.