En Vim, lo más cercano que puede obtener es (como se menciona en la respuesta de Ingo y en el comentario de Christian) es:
augroup viminfo
autocmd!
autocmd FocusLost * wviminfo
autocmd FocusGained * rviminfo
augroup end
Es importante darse cuenta de que los Focus*
comandos automáticos no siempre se ejecutan cuando usa Vim desde un terminal, especialmente no si está usando tmux o screen. Debe probar esto primero usando :au FocusLost :echoerr "Focus lost!"
.
Hasta donde sé, no hay una buena solución si estos comandos automáticos no funcionan para usted. El uso de otros eventos (como CursorHold
) me parece problemático debido a problemas de tiempo que seguramente surgirán.
Neovim viene con "ShaDa", que es un reemplazo para el sistema viminfo de Vim. Un aspecto en el que es mejor es fusionar archivos de diferentes instancias, y aunque no admite directamente la sincronización entre varias instancias ( todavía ), esto parece funcionar bien para al menos un desarrollador de Neovim :
augroup shada
autocmd!
autocmd CursorHold * rshada | wshada
augroup end
Consulte :help shada-merging
para obtener detalles sobre el proceso de fusión.