Republicado de Fábio Perez at pt.stackoverflow.com
Para indentar um arquivo inteiro no vim, basta digitar o comando gg=G.
Porém, este comando faz com que a posição do cursor mude para a primeira linha do código.
Para evitar isso, utilize o comando gg=G'' ou gg=G``. O primeiro volta para a mesma linha que o usuário estava ao executar o comando, e o segundo volta para a mesma posição (mesma linha e mesma coluna).
Porém, este comando faz com que a posição da tela mude.
Para evitar isso, utilize o comando mqHmwgg=G`wzt`q. Note que este comando grava uma macro no marcador w. Como o comando é muito grande, recomendo criar um atalho para ele. Por exemplo: map
mqHmwgg=G`wzt`q.
Comentários