Настройка редактора vim
Настройка редактора vim.
Содержание
1 Файлы конфигурации
- Глобальная конфигурация:
/etc/vim/vimrc
- Пользовательская конфигурация:
~/.vimrc
2 Синтаксис
- Комментарий начинается со знака кавычки:
"
.
3 Поддержка русского языка
- Поскольку vim работает в консоли, можно использовать системное переключение языка.
- Однако при этом не возможно использовать клавишные комбинации.
3.1 Модуль keymap
- Предлагается использовать внутренний переключатель раскладок vim, реализуемый модулем
keymap
. - С помощью
keymap
vim переводит символы, введённые в обычной раскладке клавиатуры, в определённые символы в режиме вставки (согласно некоторой предоставленной таблице). - Проверьте, что модуль
keymap
установлен:- в окне
vim
введите в командном буфере:version
; - в списке модулей должен присутствовать элемент
+keymap
.
- в окне
- Модули устанавливаются на этапе компиляции vim.
- Переключение между кириллицей и латиницей комбинацией
Ctrl+^
в режиме INSERT. - При этом, сохраняются все английские настройки для других режимов, как будто используем английскую раскладку, хотя в режиме INSERT набираем текст по-русски.
- Все доступные раскладки в каталоге
/usr/share/vim/vim<версия>/keymap
. - Возможные варианты (
russian-<вариант>
):jcuken
,jcukenwin
,jcukenwintype
,jcukenmac
,typograph
,yawerty
,dvorak
set keymap=russian-jcuken
Чтобы вставка и поиск работали на английском:
set iminsert=0 " Чтобы при старте ввод был на английском, а не русском set imsearch=0 " Чтобы при старте поиск был на английском, а не русском
- Сброс
iminsert
иimsearch
необходим, чтобы в самый первый раз вставка и ввод паттерна поиска начались с латиницы. Фактически,Ctrl+^
переключает эти значения между 0 и 1.
- Сброс
Чтобы можно было так же нажимать
Ctrl-\
для переключения, помимоCtrl+^
(для совместимости с Emacs):inoremap <C-\> <C-^>
Дополнительная подсветка для курсора, чтобы различать режимы:
highlight lCursor guifg=NONE guibg=Cyan
3.2 Модуль langmap
- Проверьте, что модуль
langmap
установлен:- в окне
vim
введите в командном буфере:version
; - в списке модулей должен присутствовать элемент
+langmap
.
- в окне
- Модули устанавливаются на этапе компиляции vim.
- С помощью
langmap
vim переводит символы, введённые в неправильной раскладке, в обычные команды нормального режима (согласно некоторой предоставленной таблице). - Установите в конфигурационном файле:
set langmap=йЙцЦуУкКеЕнНгГшШщЩзЗхХъЪфФыЫвВаАпПрРоОлЛдДжЖэЭяЯчЧсСмМиИтТьЬбБюЮ.\\,;qQwWeErRtTyYuUiIoOpP[{]}aAsSdDfFgGhHjJkKlL;:'\"zZxXcCvVbBnNmM\\,<.>/?