В режиме вставки сломаны клавиши со стрелками в Linux - PullRequest
91 голосов
/ 01 мая 2009

Мои клавиши со стрелками не работают в vi в режиме вставки дома, они просто вставляют новую строку и заглавную букву, например «A». Есть ли способ это исправить?

Ответы [ 11 ]

102 голосов
/ 01 мая 2009

Полагаю, вы используете vim, так как он помечен как Linux. Попробуйте:

:set nocompatible

(Вы можете настроить ваш .vimrc, добавив к нему эту команду. Создайте новый файл .vimrc, если его еще нет в вашем домашнем каталоге, запустите echo $HOME, чтобы проверить путь к домашнему каталогу.)

69 голосов
/ 20 июня 2009

Ubuntu поставляется по умолчанию с vim-tiny, в котором нет всех наворотов, которые есть у vim.

Сделайте быстрый sudo apt-get install vim, чтобы получить все сочные функции, о которых все говорят.

34 голосов
/ 16 августа 2013

:set term=builtin_ansi

исправил это для меня. Вы можете вставить его в vim, находясь в режиме escape (в режиме bleep), или добавить его в конец ~ / .vimrc без начального ":"

16 голосов
/ 01 мая 2009

vi не поддерживает клавиши со стрелками в режиме вставки. Используйте Vim. Хотя ваш vi может быть просто ссылкой на vim, он может быть настроен так, чтобы он вел себя как «оригинальный» vi, и таким образом отключает клавиши со стрелками. Просто вызовите vim напрямую.

8 голосов
/ 10 мая 2013

Еще один вариант: эта проблема появилась у меня после некоторых изменений .vimrc. В результате согласованного поиска выяснилось, что мое умное переопределение ESC в обычном режиме не было хорошей идеей. Устранение проблемы решило проблему:

" this is NOT something you want in .vimrc:
" In normal mode, hitting Esc turns off search highlights:
nmap <ESC> :nohl<CR>  " Do NOT add this to .vimrc
4 голосов
/ 05 марта 2013

Единственное, что сработало для меня, было ": set term = ansi"

1 голос
/ 26 августа 2017

У меня была та же проблема с клавишами со стрелками, но когда я использовал, установил ли он nocp или nocompatible, тогда мой backspace не работал правильно

по какой-то причине, когда я установил vim с sudo apt-get install vim, у vi больше не было проблем со стрелками или backspace

1 голос
/ 09 июля 2011

У меня просто была проблема с клавишами со стрелками после переключения на использование git в .vim.

Я установил репо - https://github.com/sunaku/.vim

и после рытья в течение часа я обнаружил, что плагин AutoClose (что не понравилось в любом случае) сломал клавиши со стрелками.

В документации по плагину рекомендуется установить set ttimeoutlen = 100, но это не сработало для меня! (используя urxvt + screen или urxvt и даже xterm)

Итак, я удалил плагин в конце.

0 голосов
/ 17 марта 2015

У меня была такая же проблема при использовании vim в Windows 8.1 с Cygwin.

Решение сработало для меня, просто запустите следующую команду в вашем терминале Cygwin:

cp vimrc_example.vim ~/.vimrc
0 голосов
/ 02 августа 2013

В командной строке напишите это:

EXINIT="set nocompatible"; export EXINIT
...