
Eu queria saber se é possível fazer com que o vim atualize seu histórico de arquivos com mais frequência.
Por exemplo, se eu entrar no modo de inserção e digitar 20 linhas de código, sair e pressionar 'u', tudo o que digitei será desfeito.
Existe uma maneira de tornar esses desfazer mais granulares sem precisar entrar e sair do modo de inserção o tempo todo?
Responder1
Você pode criar explicitamente um ponto de desfazer adicional <C-G>u
no modo de inserção ( :help i_CTRL-G_u
).
Como isso é tedioso, eu recomendaria construir mapeamentos que acionassem isso. Por exemplo, ao completar uma frase:
inoremap . <C-g>u.
Ou ao inserir um registro:
inoremap <C-r> <C-g>u<C-r>
Você também pode criar um durante uma breve pausa, por meio de :autocmd
:
autocmd CursorHoldI * call feedkeys("\<C-g>u", 'n')