Como remapear backspace ao usar o ibus e o vim?

1

Primeiro eu faço

:inoremap <BS> x

e, em seguida, insira o modo de inserção. Então mude para a entrada Hangul no ibus. Agora tento digitar

e aparece como

ㅁx마

Eu acho que isso faz sentido, certo? O ibus deve ter gerado um backspace para se livrar do e substituí-lo por . Mas isso significa que não posso remapear backspace sem interferir.

Há algo que eu possa fazer para contornar isso?

    
por Owen 09.02.2014 / 08:06

1 resposta

0

Eu não sei sobre o ibus, mas você pode tentar este plugin , referenciado em uma pergunta semelhante em vim_use .

Talvez você possa usar inoremap <BS> <c-r>=Backspace()<CR> e criar uma função Backspace() para detectar de alguma forma a situação em que a expansão do mapa deve ser evitada, semelhante a Vim Dica 68 -" Verificando mapeamentos inválidos ". Talvez você possa verificar a sequência inserida pelo ibus usando feedkeys() .

    
por 11.02.2014 / 17:44