No hay una opción :help 'autosave'
integrada , aunque (en todo.txt) se refiere a una descripción de lo que podría hacer esa opción.
Una posible forma de implementar esto es usar el CursorHold
evento de autocomando. Este evento se activa cuando el usuario no ha presionado una tecla durante 'updatetime'
milisegundos.
autocmd CursorHold * update
El :update
comando solo guarda el búfer si se modifica. Si también desea que esto suceda mientras el modo de inserción está activo, CursorHoldI
podría agregarlo a la lista de eventos.
autocmd CursorHold,CursorHoldI * update
Otra alternativa es la 'autowrite'
opción, que guardará el búfer antes de ejecutar un comando externo (útil para guardar antes de ejecutar :make
) o cambiar a un búfer diferente.
Vim tiene una función de guardado automático, pero la guarda en el archivo de "recuperación".
Cuando edita un documento, por ejemplo,
MyFile.txt
vim creará el archivo de revocación.MyFile.txt.swp
. Si su sistema fallara, o si su sesión muriera, entonces puede volver a conectarse y recuperarse esencialmente de donde lo dejó, escribiendo:Esto abrirá el archivo para editarlo y recuperará los últimos cambios que le hizo.
Luego puede guardar la versión recuperada de la manera normal
:w
.Desafortunadamente, cuando salga de vim, dejará el
.MyFile.txt.swp
entorno y deberá eliminarlo manualmente:Consulte la página del manual "Recuperación". También el Capítulo 11
fuente
:wq
o:q!
oZZ
o etc.), los archivos de intercambio deberían eliminarse automáticamente.Hice un complemento vim-autosave que usa la función Vim 8 de Timers para guardar periódicamente sus buffers.
fuente
Hago que mi Vim guarde todo cada vez que se pierde el foco.
Mis patrones son bastante largos y los uso en varios autocmds, pero para completar esto es lo que parece:
fuente
Como otros han indicado, vim tiene un archivo de intercambio (.swp) que se creará donde sea que esté su archivo original, pero en su archivo .vimrc, puede configurar el directorio .swp.
Deberá crear el directorio con
mkdir
y luego configurar su .vimrc en esa ubicación.fuente
El complemento vim-workspace tiene una función de guardado automático bastante personalizable que puede satisfacer sus necesidades. De forma predeterminada, habilita el guardado automático cuando está en una sesión de espacio de trabajo (su característica principal), pero puede configurarlo para que siempre guarde automáticamente si eso es todo lo que está buscando (
let g:workspace_autosave_always = 1
).fuente
Intente guardar el búfer cada vez que cambie el texto
Esto funciona para mi.
Fuente
fuente