O Vim encerra o modo de inserção ao navegar com as chaves de mapeamento

0

Para mover o cursor no modo de inserção, eu adiciono os seguintes mapas de chave no meu .vimrc (eu uso o vim 7.3 no Sun OS)

inoremap <Alt-h> <Left>
inoremap <Alt-j> <Down>
inoremap <Alt-k> <Up>
inoremap <Alt-l> <Right>

Quando eu pressiono as teclas de mapeamento, o cursor se move correto, mas o vim vai sair do modo de inserção e mudar para o modo normal, o que há de errado com o meu vim? Eu também tentei isso com o meu gvim no Windows, funciona bem. Perdi alguma opção para as chaves de mapeamento?

    
por zdd 26.06.2013 / 10:18

2 respostas

2

Alguns emuladores de terminal geram sequências de escape para caracteres meta (alt). Alt-A se torna <esc>a . Isso geralmente é um problema em máquinas * nix.

Você pode encontrar mais detalhes aqui:

link

    
por 27.06.2013 / 05:21
1

Não é uma solução, mas uma solução alternativa para o seu problema pode ser

inoremap <Alt-h> <c-o>h
inoremap <Alt-j> <c-o>j
inoremap <Alt-k> <c-o>k
inoremap <Alt-l> <c-o>l

:h i_CTRL-O = > execute one command, return to Insert mode

Se isso tiver o mesmo problema (abandonar o modo de inserção no Sun OS), o seguinte deverá funcionar entre plataformas [reivindicação não verificada].

inoremap <Alt-h> <esc>i
inoremap <Alt-j> <esc>ja
inoremap <Alt-k> <esc>ka
inoremap <Alt-l> <esc>la
    
por 26.06.2013 / 11:16

Tags