Haben Sie einen bestimmten Grund, dies zu wollen? Das wäre ziemlich verrückt. Ich tippe nicht schnell, aber ich weiß, dass selbst eine schnelle SSD nicht mit meiner Eingabe mithalten kann. (Zumindest nicht in Emacs)
PythonNut
Antworten:
9
(defun my-instant-save-buffer (eins zwei drei)"To be hooked into list `after-change-functions'
`after-change-functions' expects functions receiving three arguments.
Arguments are ignored here, but slots needed by add-hook"(save-buffer))(add-hook 'after-change-functions'my-instant-save-buffer)
Dies sollte mit einer Warnung einhergehen: Nur weil Sie es können , heißt das nicht, dass Sie es sollten . Ich habe nicht getestet, aber ich denke, dass dies die Leistung erheblich beeinträchtigen wird.
NickD
@ NickD Einverstanden. Beantwortete jedoch nur die Frage und gab keinen Hinweis auf eine gute Praxis.
Andreas Röhler
7
Ich hatte die gleichen Anforderungen und die Funktion zum automatischen Speichern von Emacs hat bei mir nicht gut funktioniert, da sie keine Funktionen zu c-Funktionen hinzufügen kann. Also habe ich ein Paket geschrieben, das echt automatisch gespeichert wird . Es ist auf Melpa erhältlich.
Sie können es installieren durch
M-x package-install RET real-auto-save
und in Ihrer Konfiguration können Sie hinzufügen
(require'real-auto-save)(add-hook 'prog-mode-hook'real-auto-save-mode)(setq real-auto-save-interval 1);; in seconds
Wenn Ihr Puffer nach jeder Sekunde geändert wird, wird er automatisch gespeichert.
Wenn Sie speziell nach dem Key-Up-Ereignis speichern möchten, können Sie dafür eine Lisp-Funktion schreiben.
Sie können aktivieren auto-save-mode, sodass Emacs Ihren aktuellen Puffer automatisch in einer anderen Datei speichert. Fügen Sie dann diese Funktion hinzu, auto-save-hookum sie auch direkt in die eigentliche Datei zu schreiben, die Sie bearbeiten:
(defun save-buffer-if-visiting-file (&optional args)"Save the current buffer only if it is visiting a file"(interactive)(if(and (buffer-file-name)(buffer-modified-p))(save-buffer args)))(add-hook 'auto-save-hook'save-buffer-if-visiting-file)
Die Variable Auto-Save-Intervall gibt an, wie viele Zeichen zwischen den automatischen Speichern liegen. Standardmäßig ist es 300. Emacs akzeptiert keine zu kleinen Werte: Wenn Sie das automatische Speicherintervall auf einen Wert unter 20 anpassen, verhält sich Emacs so, als wäre der Wert 20.
Wenn Sie also möchten, dass Emacs bei jedem Tastendruck speichert, wechseln Sie auto-save-intervalzu 1:
Antworten:
quelle
Ich hatte die gleichen Anforderungen und die Funktion zum automatischen Speichern von Emacs hat bei mir nicht gut funktioniert, da sie keine Funktionen zu c-Funktionen hinzufügen kann. Also habe ich ein Paket geschrieben, das echt automatisch gespeichert wird . Es ist auf Melpa erhältlich.
Sie können es installieren durch
und in Ihrer Konfiguration können Sie hinzufügen
Wenn Ihr Puffer nach jeder Sekunde geändert wird, wird er automatisch gespeichert.
Wenn Sie speziell nach dem Key-Up-Ereignis speichern möchten, können Sie dafür eine Lisp-Funktion schreiben.
quelle
Sie können aktivieren
auto-save-mode
, sodass Emacs Ihren aktuellen Puffer automatisch in einer anderen Datei speichert. Fügen Sie dann diese Funktion hinzu,auto-save-hook
um sie auch direkt in die eigentliche Datei zu schreiben, die Sie bearbeiten:Laut dem Emacs-Handbuch zur automatischen Speichersteuerung :
Wenn Sie also möchten, dass Emacs bei jedem Tastendruck speichert, wechseln Sie
auto-save-interval
zu1
:quelle