Remova os recuos do vim quando eu colar diretamente da área de transferência do sistema

2

Eu tenho um problema com vim quando colo algo que ele coloca colocando em cada nova linha. Como posso definir configurações padrão de vim .

    
por Abid Hilarious 08.05.2015 / 11:31

2 respostas

1

Se você colar da área de transferência do sistema, vim acha que o texto colado é inserido pelo usuário e, se for configurado para fornecer o autoindent, vim executará o trabalho e recuará automaticamente o código.

Você pode desativar esse autoindent ao colar o código em vim diretamente. Digite isso no modo de comando:

:set paste

Agora, seu código colado deve ser escrito sem recuo. Para reativar o autoindent novamente, use:

:set nopaste

Para simplificar, você pode definir um atalho em .vimrc da seguinte forma:

set pastetoggle=<F2>

Agora, quando você pressionar F2 no modo de inserção para ter o comportamento desejado. Em seguida, pressione novamente F2 , para trabalhar com autoindent como antes.

    
por chaos 08.05.2015 / 11:45
0

Você pode colar diretamente da área de transferência ( "* ) usando a instrução paste ( p ) do vim: "*p sem precisar inserir INSERT mode.

Como o acima não funciona quando você está conectado a um terminal remoto, a sugestão do caos seria sua melhor opção.

vim-unimpaired adiciona um bom atalho yo e yO que automaticamente faz set paste , insira um nova linha após / antes da linha atual do cursor e, em seguida, set nopaste quando você sair do modo INSERT .

    
por Sir_FZ 10.05.2015 / 14:07