2009-02-05 16 views
6

Mi rendo conto che c'è un modo in Vim per nascondere/piegare le linee, ma quello che sto cercando è un modo per selezionare un blocco di testo e avere linee di avvolgimento di Vim vicino o vicino alla colonna 80.Esiste un Vim equivalente al comando "fold" di Linux/Unix?

Principalmente voglio usalo nei commenti in situazioni in cui sto aggiungendo del testo ad un commento esistente che lo spinge oltre 80 caratteri. Sarebbe anche bello se potesse inserire il marcatore di commento all'inizio della riga quando si avvolge anche. Inoltre preferirei che la soluzione non eseguisse l'autowrap dell'intero file poiché ho una particolare convenzione che uso quando si tratta di mantenere il mio codice strutturato sotto la lunghezza della linea di 80 caratteri.

Questo è principalmente per codice Python, ma sono anche interessato ad apprendere la soluzione generale del problema nel caso in cui debba applicarlo ad altri tipi di testo.

risposta

11
gq 

È controllato dall'opzione textwidth, vedere ":help gq" per ulteriori informazioni.

gq funzionerà sulla riga corrente per impostazione predefinita, ma è possibile evidenziare un blocco visivo con Ctrl +V e formato più linee/paragrafi genere.

gqap fa l'attuale "paragrafo" del testo.

0

Date un'occhiata a ": help =" e ": help 'equalprg"

:set equalprg=fold 

e in modalità normale == i filtri della linea corrente attraverso il programma di piega esterno. O visual-selezionare qualcosa e premere =