Najpierw próbowałem użyć langmap
jak w tym gist, ale IdeaVim nie obsługuje langmap
.
Następny Próbowałem użyć map
więc zrobiłem tego rozwiązania:
let rumap = 'йцукенгшщзхъфывапролджэёячсмитьбюЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ'
let enmap = 'qwertyuiop[]asdfghjkl;''\zxcvbnm,.QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>'
let mapLen = strchars(rumap)
let i = 0
while i < mapLen
let ruChar = matchstr(rumap, ".", byteidx(rumap, i))
let enChar = enmap[i]
"echo 'map '.ruChar.' '.enChar
execute 'map '.ruChar.' '.enChar
execute 'cmap '.ruChar.' '.enChar
let i += 1
endwhile
map Ё \|
cmap Ё \|
można dostosować go do układu klawiatury.
Ale zapomniałem, że IdeaVim nie obsługuje vimscript i cmap
i dodałem echo 'map '.ruChar.' '.enChar
(skomentowany linia), kod dołączony do .vimrc
z góry i otworzył vim z linii poleceń, dlatego drukowane mi wszystkie map
poleceń. I dodaje je do .ideavimrc
i dołączane odwzorowanie potoku (|) Charakter:
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 ё \
map я z
map ч x
map с c
map м v
map и b
map т n
map ь m
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 Б <
map Ю >
map Ё /|
Teraz mam IdeaVim pracy z cyrylicą w układzie normalnym, wybierz i operator-pending tryby wizualnych +.
Dzięki, to działa dla mnie! Cóż prawie. Zdałem sobie sprawę, że kombinacje takie jak 'ciw' lub' daw' nadal nie działają. Wygląda na to, że 'i' i' a' nie są poprawnie obsługiwane, gdy są używane jako "wewnątrz" i "w pobliżu". Jakieś pomysły, jak to naprawić? –
Te kombinacje też nie działają dla mnie :(Nie znalazłem jeszcze rozwiązania.Jeśli następnie wyślemy tutaj .. – mixel
Wielkie dzięki! Dodałem, że kodowanie powinno być ANSI – zhekaus