O recuo inteligente em Vim (normalmente ótimo) é um desastre ao colar em um pedaço de código
-
19-08-2019 - |
Pergunta
Eu acho que outros editores são inteligentes o suficiente para desligar essas coisas para colar, mas ao usar o VIM em um terminal, ele não pode distinguir entre colar e digitação real.
Que tipos de soluções ou soluções alternativas você tem para isso?
Adicionado: Há também uma configuração que faz com que os comentários continuem automaticamente na próxima linha. O recuo pelo menos não muda a semântica do código, mas a continuação do comentário automático realmente estraga tudo. Venha para pensar sobre isso, eu deveria desligar isso completamente - alguém sabe como essa opção é chamada?
Solução
: Set Paste é o caminho a percorrer, mas se você esquecer, como eu costumo, se você estiver usando um idioma com {} como o aberto/fechamento de blocos, então fazendo um =% no primeiro {ou o último} irá reaplicar o recuo.
Outras dicas
: defina pasta
Adicione isso ao seu .VIMRC e use -o com a tecla F2 para alternar o status da pasta antes e depois de adicionar pedaços de código:
set pastetoggle=<F2>
Outra maneira de fazer isso, supondo
"*p
Isso colará na área de transferência do sistema.
Verifique o seu vim --version
. No OS X, você precisará +clipboard
e no Linux +xterm_clipboard
, Eu acredito.
Se você está no OS X, você sempre pode brew install macvim
E use mvim -v
em vez do vim agrupado (não foi compilado com +clipboard
).