sábado, 7 de fevereiro de 2009

Recuperando um arquivo após um crash

Se aconteceu um crash durante uma edição, pode-se recuperar as mudanças não salvas.
O Vim mantém o swap file que guarda temporariamente as mudanças sendo feitas. O
Vim mantém o swap file até que se tenha gravado com sucesso o arquivo corrente. Após
isso ele é deletado.

Quando o Vim aborta no meio de uma edição, ele não consegue deletar o swap file.
Ao reiniciar e editar um arquivo o Vim verificar se existe um swap file
significa que o Vim abortou ou há uma outra sessão editando o arquivo.

O Vim emite um aviso e pede para você tomar uma decisão, entre elas recuperar o
arquivo.

A recuperação pode ser feita também na linha de comando:
vim -r a.txt
o vim lerá o swap file e o arquivo original.
O arquivo pode ser recuperado dentro do Vim com:
:recover a.txt
Se quiser descartar quaisquer mudanças que você fez no arquivo e tentar
recuperar use:
:recover! a.txt
Se estava editando um arquivo sem nome use:
vim -r ""
Como medida de segurança grave o arquivo recuperado com outro nome:
:w a.txt.rec
Compare com o arquivo original e verifique se é o que você esperava. O vimdiff é útil para isto.
Preste atenção se o arquivo original é mais recente (significa que ele foi salvo exatamente do crash do vim) e algumas linhas estão faltando (o vim não pode recuperar).

É normal que algumas poucas mudanças não são recuperadas. O vim grava em disco quando não se digita por 4 segundos ou depois de digitar 200 caracteres.

0 comentários:

Postar um comentário