2012-04-25 15 views
6

Ho il seguente codice:allineamento in parola più lunga

a = 123 
p.value 0.123 
p.long.name = "abc" 

Come posso allineare ogni linea, come mostrato di seguito in vim?

a   = 123 
p.value  = 0.123 
p.long.name = "abc" 

Grazie per eventuali suggerimenti.

risposta

6

Senza plugin:

:%s/=/      &/ 
:%s/\%13c\s\+=/= 

primo comando inserirà spazi prima primi segni uguali su tutte le linee, secondo rimuoverà tutti gli spazi prima di un segno di uguale a 13 ° colonna. È anche possibile utilizzare la selezione del blocco visivo e <..... per spostarsi a sinistra tutte le volte necessarie.

Tuttavia questo è veramente impuro. Con il plug-in tabular devi solo digitare :Tab /=/ e questo eseguirà il lavoro e l'intervallo verrà calcolato automaticamente (intervallo massimo attorno al cursore in cui tutte le linee corrispondono al modello).

+0

grazie funziona perfettamente con il plugin tabulare. – johannes

Problemi correlati