Com um valor grande o suficiente de 'undolevel'
, o Vim poderá desfazer as alterações do dia inteiro. Se você encerrar o Vim no meio, você também precisa habilitar o undo persistente definindo a opção 'undofile'
.
O Vim captura não apenas uma lista sequencial de comandos para desfazer, mas, na verdade, uma árvore de todas as alterações. Também possui vários comandos ao redor de undo (cp. :help undo-branches
); para voltar ao estado no começo do dia,
:earlier 12h
é um bom candidato.
Existem também plugins como Gundo e undotree.vim , que visualiza a árvore de desfazer e permite navegá-la.
Se navegar na árvore de desfazer parecer um pouco incômodo (por exemplo, porque você faz muitas alterações ao longo do dia), você também pode adicionar um sistema de controle de versão leve (além do Subversion), como meu writebackup plugin , e crie explicitamente um backup em determinados momentos.