¿Cómo soluciono la sangría de un archivo completo en Vi?
En Vim, ¿cuál es el comando para corregir la sangría de todas las líneas?
Muchas veces copio y pego código en una terminal remota y todo se estropea. Quiero solucionar esto de una sola vez.
=
, el comando de sangría puede realizar movimientos. Entonces, gg
para obtener el inicio del archivo, =
aplicar sangría G
hasta el final del archivo, gg=G
.
Antes de pegar en la terminal, inténtalo :set paste
y luego :set nopaste
cuando hayas terminado. Esto desactivará la sangría automática, el ajuste de línea y otras funciones que arruinan el pegado.
editar: Además, debo señalar que =
normalmente se puede obtener un resultado mucho mejor que la sangría utilizando un programa externo. Por ejemplo, corro :%!perltidy
todo el tiempo. astyle
, cindent
, etc. también se pueden utilizar. Y, por supuesto, puede asignarlos a una pulsación de tecla y asignar otros diferentes a la misma pulsación de tecla según el tipo de archivo.
El maestro de todos los comandos es
gg=G
¡Esto sangra todo el archivo!
Y a continuación se muestran algunos de los comandos simples y elegantes que se utilizan para sangrar líneas rápidamente en Vim o gVim.
Para sangrar todas las líneas debajo de la línea actual
=G
Para sangrar la línea actual
==
Para sangrar n
líneas debajo de la línea actual
n==
Por ejemplo, para sangrar 4 líneas debajo de la línea actual
4==
Para sangrar un bloque de código, vaya a una de las llaves y use el comando
=%