2012-04-25 14 views
6

Tengo el siguiente código:alinear al palabra más larga

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

¿Cómo puedo alinear cada línea como se muestra a continuación, en vim?

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

Gracias por cualquier sugerencia.

Respuesta

6

Sin plugin:

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

primer comando insertar espacios antes de las primeras señales iguales en todas las líneas, segunda, se eliminarán todos los espacios antes de un signo igual en el 13 de la columna. También puede usar la selección de bloque visual y <..... para desplazarse a la izquierda tantas veces como sea necesario.

Sin embargo, esto es muy sucio. Con el complemento tabular, simplemente escriba :Tab /=/ y esto hará el trabajo y el rango se calculará automáticamente (mayor rango alrededor del cursor en el que todas las líneas coinciden con el patrón).

+0

gracias funciona perfectamente con el plugin tabular. – johannes

Cuestiones relacionadas