gvim mapeamento de chaves para ex comandos enquanto no modo visual?

0

Então no gvim, depois que eu pressiono

<Shift> + v

entra no modo visual. Eu normalmente tenho um comando ex configurado para o let 'm'. Quando entro no modo visual e depois clico em 'm', diz

No range allowed

Como faço para que, quando eu empurrar 'm' no modo visual, ele faça

:ya +
Basicamente, eu quero que assim que eu destacar algo no modo visual, se eu clicar em 'm', copie-o para minha área de transferência para que eu possa colá-lo em coisas fora do gvim.

    
por user2719875 10.10.2013 / 06:11

1 resposta

1

Isso (puxar para a área de transferência) seria simples

xnoremap m :ya +<CR>

Sem o seu mapeamento, não posso dizer de onde vem esse No range allowed . O : , quando pressionado no modo visual, insere automaticamente a faixa visual :'<,'> , e o comando :yank usa um intervalo, então tudo funciona bem. Por outro lado, se você tiver um comando que não tenha um intervalo, você terá que limpá-lo via :<C-u>command ... .

Observação: usei :xmap em vez de :vmap porque no modo de seleção , as letras imprimíveis devem substituir a seleção e não chamar um mapeamento.

    
por 10.10.2013 / 08:11