Nachdem Sie recover-this-filedie Autosave-Version ausgeführt und akzeptiert haben, haben Sie einen geänderten Puffer, der den Inhalt der Autosave-Version enthält. An dieser Stelle können Sie M-x diff-buffer-with-file RETdie Unterschiede zwischen dem geänderten Puffer und der gespeicherten Datei anzeigen.
Der Schlüssel, den ich dafür gebunden habe, führt tatsächlich eine benutzerdefinierte Funktion aus, um ein einheitliches Diff zu erzeugen und die Eingabeaufforderung für den Puffer zu überspringen (er übernimmt den aktuellen Puffer).
(defun my-diff-buffer-with-file ()
"Compare the current modified buffer with the saved version."
(interactive)
(let ((diff-switches "-u")) ;; unified diff
(diff-buffer-with-file (current-buffer))))
Es gibt auch ein Ediff-Äquivalent (das ich im Allgemeinen bevorzuge, obwohl ich beides verwende), das unter verfügbar ist M-x ediff-current-file RET
Wenn Sie die Änderungen nach dem Prüfen des Unterschieds verwerfen möchten, sollten Sie in der Lage sein, einfach undodie Wiederherstellung durchzuführen. (Ansonsten kannst du immer revert-bufferoder benutzen find-alternate-file.)
Da Tastenkombinationen für diff-Befehle häufig erforderlich sind =, finde ich Folgendes bequem (nb Ich habe die Standardbindung C-zaufgehoben und stattdessen in verschoben C-z C-z, was sich C-zals Präfix für benutzerdefinierte Bindungen öffnet ):
(global-set-key (kbd "C-z =") 'my-diff-buffer-with-file)
(global-set-key (kbd "C-z C-=") 'ediff-current-file)