В некоторых случаях при использовании редактора VIM в режиме вставки текста клавиши направления вверх-вниз, вправо-влево, вместо привычного перемещения курсора могут печатать ABCD.
Это может происходить при использовании совместимости с классическим VI редактором, в режиме которого вместо привычного перемещения курсора клавиши направления печатают буквы ABCD в таком соответствии: Arrow UP (A) Arrow DOWN (B) Arrow RIGHT (C) Arrow LEFT (D)
Проверим что за VIM у нас стоит:
$ ls -la /usr/bin/vi lrwxrwxrwx. 1 root root 20 Сен 9 09:31 /usr/bin/vi -> /etc/alternatives/vi $ ls -la /etc/alternatives/vi lrwxrwxrwx. 1 root root 17 Сен 9 09:32 /etc/alternatives/vi -> /usr/bin/vim.tiny
Как видим у нас установлена облегчённая (vim.tiny) версия редактора VIM. Самым простым способом будет удаление пакета vim-tiny и установка полной версии VIM, хотя и это может не спасти пока не отключить режим совместимости:
$ apt-get remove vim-tiny $ apt-get install vim
Простая (ака tiny) версия редактора VIM весит всего-навсего 1 МБ, а его полная версия целых 24 МБ, и если для кого целых 24 МБ это слишком много, то мы можем пойти другим путём. Сначала глянем где должны быть конфиги:
$ vi --version | egrep -i 'vimrc|exrc|fall-back' system vimrc file: "$VIM/vimrc" user vimrc file: "$HOME/.vimrc" user exrc file: "$HOME/.exrc" fall-back for $VIM: "/usr/share/vim" Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Обычно переменная $VIM не определена и тогда системный vimrc ищется по fall-back адресу, который в нашем случае /usr/share/vim, но трогать мы его не будем, хотя немного о нём поговорим.
Системный файл конфигурации /usr/share/vim/vimrc содержит строчку runtime! debian.vim
, которая подгружает файл debian.vim если он есть в директории /usr/share/vim. По умолчанию debian.vim в директории отсутствует, но его можно взять из /usr/share/vim/vimcurrent: cp /usr/share/vim/vimcurrent/debian.vim /usr/share/vim/ или сделать символьную ссылку на него ln -s /usr/share/vim/vimcurrent/debian.vim /usr/share/vim/debian.vim - или же ограничится ~/.vimrc в домашнем каталоге.
Создадим или отредактируем ~/.vimrc и добавим туда следующее:
$ vi ~/.vimrc set nocompatible " must be the first line filetype on filetype indent on filetype plugin on syntax on
После двойной кавычки " идёт комментарий. Вдруг 'nocompatible' не поможет, тогда пробуем 'nocp'.
Если мы не удаляли простую (ака tiny) версию редактора VIM и не установили полную, то при следующем запуске редактора можем увидеть ошибку обработки файла ~/.vimrc:
$ vi ~/.vimrc Error detected while processing /root/.vimrc: line 2: E319: Sorry, the command is not available in this version: filetype on line 3: E319: Sorry, the command is not available in this version: filetype indent on line 4: E319: Sorry, the command is not available in this version: filetype plugin on line 5: E319: Sorry, the command is not available in this version: syntax on Press ENTER or type command to continue
Удалим или закомментируем строки 2-5, или установим полную версию редактора.
Для получения справки можно использовать :help nocompatible, а :q для выхода из справки.