Recientemente, un usuario de Sublime Text probó Emacs por un tiempo, y estaba interesado en obtener el mismo comportamiento de guardado automático en Emacs.
Básicamente, quería que todos los buffers se guardaran cada vez que el marco perdiera el foco (realmente guardado, no solo respaldado). Esto incluye el cambio de ventanas a una aplicación completamente diferente.
No pude encontrar ningún evento que se activara al cambiar a una aplicación diferente. ¿Existe tal evento o hay otra forma de lograr el mismo comportamiento?
Tenga en cuenta que una solución basada en el tiempo no fue satisfactoria, y tampoco lo fue el comportamiento predeterminado de la copia de seguridad automática. Él específicamente quería que los buffers se guardaran (como en save-buffer
) para todos los archivos.
defadvice
versión, en caso de que la publicación del blog no funcione o algo así? ¡Gracias!(add-hook 'focus-out-hook (lambda () (flet ((message (format &rest args) nil)) (save-some-buffers t))))
Hay
focus-autosave-mode
ahora. Está disponible a través de MELPA. ¿Por qué no le das la oportunidad de hackear por ti?fuente
Esto guardará todos los buffers no guardados visitando el archivo, en emacs 24.4
fuente
add-to-list
en un gancho, useadd-hook
. La respuesta de shosti ya contiene la forma correcta de este fragmento.Para los vagabundos que tropiezan con esto, uso este formulario:
El uso de
cl-letf
evita que los(No files need saving)
mensajes molestos obstruyan su área de eco.fuente