Il rientro intelligente in vim (normalmente eccezionale) è un disastro quando si incolla in una porzione di codice

StackOverflow https://stackoverflow.com/questions/470551

Domanda

Suppongo che altri editor siano abbastanza intelligenti da disattivare quella roba per incollare, ma quando si utilizza vim in un terminale non è in grado di distinguere tra incollare e digitare effettivamente.

Che tipo di soluzioni o soluzioni alternative hai per questo?

Aggiunto: c'è anche un'impostazione che fa in modo che i commenti continuino automaticamente sulla riga successiva. Il rientro almeno non cambia la semantica del codice ma la continuazione del commento automatico rovina davvero le cose. Vieni a pensarci bene, dovrei semplicemente disattivarlo del tutto - qualcuno sa come si chiama quell'opzione?

È stato utile?

Soluzione

: imposta incolla è la strada da percorrere, ma se dimentichi, come faccio spesso, quindi se stai usando una lingua con {} come apertura / chiusura di blocchi, quindi fai un =% sul primo {o last} riapplica il rientro.

Altri suggerimenti

: imposta incolla

aggiungi questo al tuo .vimrc e usalo con il tasto F2 per attivare / disattivare lo stato incolla prima e dopo aver aggiunto pezzi di codice:

set pastetoggle=<F2>

Un altro modo per farlo, supponendo che gli Appunti di sistema siano configurati correttamente è quello di farlo

"*p

Questo verrà incollato dagli Appunti di sistema.

Controlla il tuo vim --version . Su OS X avrai bisogno di + appunti e su Linux + xterm_clipboard , credo.

Se usi OS X, puoi sempre preparare macvim e usare mvim -v invece del Vim in bundle (non è stato compilato con + appunti ).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top