[caption id="attachment_114" align="aligncenter" width="150"] vim[/caption]
É possível utilizar o Vim de forma programática para realizar grandes tarefas de forma automatizada. Uma situação onde este recurso pode ser muito útil é na conversão do charset/encoding de arquivos sem perder os caracteres originais.
vim -S setcharset.vim finded.txt
-S = indica o arquivo contendo o script
Exemplo de script:
set encoding=utf-8 set fileencoding-utf-8 wq
- Define o encoding do buffer atual
- Define o encoding do arquivo atual
- Salva e fecha o arquivo
Um exemplo de utilização deste recurso seria modificar o charset de todos os arquivos .java de uma pasta:
find ./ -name '*.java' -exec vim -S script.vim {} \;
O comando acima quando utilizado tendo na mesma pasta um arquivo de nome script.vim com o conteúdo de script mostrado acima, localiza dos os arquivos com a extensão .java contidos na pasta atual, e para cada arquivo encontrado ele abre o arquivo utilizando o script previamente criado, que faz com que o Vim modifique o charset/encoding, salve e fecha o arquivo em seguida dando continuidade a busca.
Algums links úteis caso queira se aprofundar no assunto: