Hablemos de medidas relativas. Mi Vim se ve así:
aaaaaaaaaaaaa
bbbbbbbbbbbbb
ccccccccccccc
etc
Me gustaría que fuera más pequeño:
aaaaa
aaaaa
bbbbb
bbbbb
ccccc
ccccc
etc
¿Cómo puedo obtenerlo? ¿Y cómo puedo configurar la longitud de tal bloque?
vim
indentation
Léo Léopold Hertz 준영
fuente
fuente
Respuestas:
De hecho, puedes hacer dos cosas:
¿Cuál quieres?
La opción 1 se lograría estableciendo
textwidth
(por ejemplo:set textwidth=30
(de la respuesta de Swaarop)). Luego, puede reformatear el texto resaltándolo (en modo visual) y escribiendogq
. (textwidth
se puede abreviar comotw
, por lo tanto:set tw=30
).La opción 2 se puede alternar ejecutando
:set wrap
/:set nowrap
. Esto ajustará las líneas que son demasiado largas para la ventana.Ambos son independientes.
fuente
fold
comando como en la respuesta de fgm.wrap
se ajustará en el límite de la ventana, no entextwidth
.Una vez que establezca 'textwidth', puede seleccionar texto con modo visual y presionar gq para ajustarlo bien (también puede usar Q en algunas configuraciones antiguas / heredadas).
Algunos consejos útiles:
fuente
gqq
también envuelve la línea actual (en lugar degqgq
ogq$
).Usar fold (1) es una posibilidad:
Resultado:
fuente
fuente
textwidth
no manejará una situación sin espacios. Puede escribir su propiaformatexpr
función para hacer eso.Si tienes un texto sin espacios que quieres romper en una cierta longitud, no es necesario usar externo
fold
ni escribir el tuyo propioformatexpr
.:%s/\(.\{80\}\)/\1\r/g
romperá todas las líneas a 80 caracteres.
fuente