Pregunta
Quiero reformatear mi archivo para que el ancho de línea máximo sea 79. Lo hice :set tw=79
y gggqG
Y los resultados no fueron lo que esperaba. Cuando una línea es de menos de 79 coles, los personajes de la línea debajo de ella se mueven hacia arriba y las líneas con más de 79 colonas no se dividen en dos líneas.
EDITAR: Bueno, estaba semi-mezclado, ya que rompe líneas en 79 excepto en la línea con asteriscos.
--CONVENTIONS**************************************************************************************
Además, todavía mueve los personajes cuando la línea tiene <79.
Solución
Una solución posible, aunque no la mejor.
Invasar formatexpr
y deja que fold
Programa para formatear su texto a 79 caracteres de ancho.
:set formatexpr=
:set formatprg=fold\ -w\ 79
Y ahora:
gg # Go to beginning of file.
gq # Format until...
G # End of file.
Y la última elimina esos devoluciones de carro (^m):
:%s/\r//g
En mi prueba cambió algunos personajes acentuados y algunas otras líneas estaban destrozadas, pero pruébalo tú mismo. De lo contrario, puede escribir su propia función de formato y usarla con formatexpr
opción.
Otros consejos
Ponga la línea vacía entre diferentes párrafos. Luego haz el reformato.