Эту проблему можно решить с помощью опции keymap
. Это
позволяет определить альтернативное отображение клавиатуры для использования в режимах, требующих
ввод текста.
Для переключения между стандартными и альтернативными клавишами в режиме «Вставка»
Замените или в режиме командной строки используйте Ctrl + ^
( Ctrl + 6 ). Изменение раскладки клавиатуры влияет на ввод текста
только; поведение клавиатуры в обычном режиме остается неизменным независимо от
текущая настройка раскладки клавиатуры. Можно оставить режим вставки записи на греческом и
немедленно использовать сочетания клавиш в обычном режиме, не переключаясь на другое
раскладка клавиатуры. Если затем возвращается в режим вставки или, например,
начинает поиск, набрав /
, Vim переключает раскладку клавиатуры обратно на греческий
автоматически.
Текущая клавиатура, используемая в этих режимах ввода текста, запоминается
между переключениями в другие режимы. Единственное исключение из этого
поведение сделано для режима командной строки, который всегда начинается с
раскладка по умолчанию, так как большую часть времени требуется набирать Ex
команда (в ASCII). С установленной опцией keymap
пользователь должен
работать в Vim, сохраняя системную раскладку клавиатуры на английском, а
переключение раскладки клавиатуры Vim с помощью Ctrl + ^ (вместо
общесистемный переключатель макета).
Чтобы навсегда включить греческую раскладку UTF-8, добавьте следующую строку в
.vimrc
файл.
:set keymap=greek_utf-8
Существует множество предопределенных таблиц клавиш для большого набора языков, вы можете
просмотрите их все в самом Vim, используя :e $VIMRUNTIME/keymap
. Обратите внимание, что
обычно для одного языка предусмотрено несколько таблиц ключей, которые отличаются
только путем кодировки символов, чтобы любой мог выбрать тот, который подходит
их конфигурация.
Я также рекомендую установить параметры ниже, чтобы указать, является ли карта клавиш
должен быть включен по умолчанию в режиме вставки и при входе в поиск
рисунок.
:set iminsert=0
:set imsearch=-1
См. :help iminsert
и :help imsearch
для их подробного
объяснения.
Существует также специальный языковой режим, который, если я не ошибаюсь, был
введен в Vim ранее keymap
. Это позволяет добиться
поведение, аналогичное тому, которое предоставляется keymap
вручную
указание буквенных пар, которые соответствуют клавишам на клавиатуре в
длинная строка для сохранения в опции langmap
. Лично - мой родной
язык тоже не английский - я предпочитаю (и рекомендую) использовать keymap
вместо этого.
В заключение я должен подчеркнуть, что все вышеперечисленное одинаково
применимо к любому другому языку, который есть в Vim (или может быть настроен на него)
раскладка клавиатуры для.
См. Также мой ответ на аналогичный вопрос , который был задан
потом. Это включает в себя немного более подробное объяснение.