Ich hatte kürzlich einen Sublime Text-Benutzer, der Emacs eine Weile ausprobierte, und er war daran interessiert, dasselbe Verhalten beim automatischen Speichern in Emacs zu erzielen.
Grundsätzlich wollte er, dass alle Puffer gespeichert werden, wenn der Frame den Fokus verliert (wirklich gespeichert, nicht nur gesichert). Dies gilt auch, wenn Sie Windows auf eine völlig andere Anwendung umschalten.
Ich konnte kein Ereignis finden, das beim Wechsel zu einer anderen Anwendung ausgelöst wurde. Gibt es ein solches Ereignis oder gibt es einen anderen Weg, um dasselbe Verhalten zu erreichen?
Beachten Sie, dass eine zeitbasierte Lösung nicht zufriedenstellend war und auch nicht das Standardverhalten für die automatische Sicherung. Er wollte ausdrücklich, dass die Puffer (wie in save-buffer
) für alle Dateien gespeichert werden.
defadvice
Version etwas erweitern, falls der Blog-Beitrag ausfällt oder so? Vielen Dank!(add-hook 'focus-out-hook (lambda () (flet ((message (format &rest args) nil)) (save-some-buffers t))))
Da ist
focus-autosave-mode
jetzt. Es ist über MELPA erhältlich. Warum nicht die Chance geben, das Hacken für dich zu erledigen?quelle
Dadurch werden alle ungespeicherten Puffer, die die Datei besuchen, auf dem Emacs 24.4 gespeichert
quelle
add-to-list
an einem Haken verwenden, verwendenadd-hook
. Die Antwort von shosti enthält bereits die richtige Form dieses Snippets.Für Wanderer, die darüber stolpern, benutze ich dieses Formular:
Die Verwendung von verhindert, dass
cl-letf
die lästigen(No files need saving)
Nachrichten Ihren Echobereich verstopfen.quelle