VIM: проблемы с клавиатурой - ABCD

archive view archive save

vim-logo В некоторых случаях при использовании редактора 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 для выхода из справки.


Об авторе
АдМинь БагоИскатель
АдМинь БагоИскатель ярый борец за безглючную работу любых механизмов и организмов во всей вселенной и потому пребывает в вечном поиске всяческих багов, а тот кто ищет как известно всегда находит. Когда что-то или кого-то вылечить не в состоянии, то со словами "Я в аду, а вы все черти" уходит в запой выйдя из которого снова берётся лечить неизлечимое.
Ещё статьи автора

Нет комментариев

Вы можете стать первым, кто добавит комментарий к этой записи.

Добавить комментарий

АХТУНГ! Все комменты гостей модерасятся модерастом.
  1. Мессаги исключительно рекламного содержания, либо содержащие только одни оценочные суждения типа "круто" ("отлично", "спасибо", "автор дебил" и т.п.) не публикуются;
  2. Злостным спамерам, пранкерам и прочей сетевой нечисти рекомендуем напрасно не тратить своего времени и удовлетворять свои больные фантазии на специализированных Интернет ресурсах!;
  3. Разумная обоснованная критика, замечания, дополнения приветствуются. Поля помеченные символом * обязательны к заполнению.


Защитный код
Обновить

Комментарии в блоге
Новое на форуме