В vim есть свой input method и раскладка.

Добавим небольшой конфиг:

set keymap=russian-jcukenwin
set iminsert=0 " Английская раскладка по упочанию при активации режима input.
set imsearch=0 " Английская раскладка по уполчанию при активации режима search.

set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯ;ABCDEFGHIJKLMNOPQRSTUVWXYZ,фисвуапршолдьтщзйкыегмцчня;abcdefghijklmnopqrstuvwxyz

Теперь можно переключать раскладку с помощью комбинации i_CTRL-^.

Удобно вводить только один символ, доступный в английской раскладке, не переключая раскладку туда-обратно. Для этого жмём комбинацию i_CTRL-V или i_CTRL-Q, вводим символ из английской раскладки, продолжаем вводить текст на русском.