Em vez de evitar que Ctrl-O
altere um arquivo (o que tornaria Ctrl-O
muito menos útil), vamos fazer com que o Vim lembre de desfazer o histórico de todos os buffers abertos. Coloque o seguinte no seu vimrc:
set hidden
Depois disso, você poderá desfazer / refazer as alterações depois de alterar um arquivo.
E, mais do que isso, o Vim consegue lembrar-se da história de desfazer mesmo depois de fechar e abrir novamente! (desde que o arquivo não tenha sido alterado por outro programa enquanto o vim foi fechado). Isso é chamado de "Desfazer persistente" e pode ser ativado da seguinte maneira:
set undofile