When I am typing in cyrillic, I can not access any of the vim key bindings, unless I switch the keyboard layout to a latin-based one.
There existed a solution for 1-byte locales, the famous langmap command. Putting the following in the ~/.vimrc solved the problem for those who worked in e.g. a koi8-r or cp1251-based locale.
set langmap=ж;; set langmap=ё`,йq,цw,уe,кr,еt,нy,гu,шi,щo,зp,х[,ъ],фa,ыs,\ вd,аf,пg,рh,оj,лk,дl,э',яz,чx,сc,мv,иb,тn,ьm,б\,,ю.,Ё~,\ ЙQ,ЦW,УE,КR,ЕT,HY,ГU,ШI,ЩO,ЗP,Х{,Ъ},ФA,ЫS,ВD,АF,ПG,РH,\ ОJ,ЛK,ДL,Ж:,Э\",ЯZ,ЧX,СC,МV,ИB,ТN,ЬM,БUnfortunately, this did not work in a multibyte locale. Instead, one has to map every key independently with the map command:
map ё ` map й q map ц w map у e map к r map е t map н y map г u map ш i map щ o map з p map х [ map ъ ]map ф a map ы s map в d map а f map п g map р h map о j map л k map д l map ж ; map э ' map я z map ч x map с c map м v map и b map т n map ь m map б , map ю . map Ё ~ map Й Q map Ц W map У E map К R map Е T map Н Y map Г U map Ш I map Щ O map З P map Х { map Ъ } map Ф A map Ы S map В D map А F map П G map Р H map О J map Л K map Д L map Ж : map Э " map Я Z map Ч X map С C map М V map И B map Т N map Ь M map Б see also at http://www.vim.org/tips/tip.php?tip_id=1348