Wie kann ich die Änderungen sehen, die seit dem letzten Speichern an einem geänderten Puffer vorgenommen wurden?


Antworten:


27

Sie wollen den Befehl M-x diff-buffer-with-file. Siehe das Handbuch:

diff-buffer-with-file ist eine interaktive, automatisch geladene, kompilierte Lisp-Funktion in diff.el.

(diff-buffer-with-file &optional BUFFER)

Zeigen Sie die Unterschiede zwischen BUFFER und der zugehörigen Datei an. Dies setzt voraus, dass sich das externe Programm diffin Ihrem befindet exec-path.


Möglicherweise interessiert Sie auch, highlight-changes-modewelche Änderungen nach der Aktivierung des Puffers automatisch und interaktiv hervorgehoben werden.


Im Sinne von highlight-changes-modegibt es auch das diff-hlPaket in GNU ELPA.
Stefan

Ja, aber im Moment funktioniert es nur, Unterschiede zwischen dem (gespeicherten) Puffer und einer vcRevision anzuzeigen . Ich habe daran gearbeitet, den Puffer (im Gegensatz zu seiner Sicherungsdatei) in diff-hl # 33 zu unterscheiden , aber er ist aufgrund eines Fehlers im Emacs-Kern blockiert.
PythonNut

Hast du eine Bug-Report Nummer dafür?
Stefan

@ Stefan, ich bin noch nicht dazu gekommen.
PythonNut

Wurde vor (wahrscheinlich) langer Zeit behoben: Funktioniert ab 2019! :)
Mistige

13

Befehl ediff-current-file:

ediff-current-file is an interactive autoloaded Lisp function in
`ediff.el'.

(ediff-current-file)

Start ediff between current buffer and its file on disk.
This command can be used instead of `revert-buffer'.  If there is
nothing to revert then this command fails.

1
ediff-current-filehat einige Vorteile gegenüber, diff-buffer-with-filewenn Sie eine interaktive Überprüfung von Änderungen anstelle eines einfachen Diffs wünschen. Die interaktive Überprüfung ermöglicht es sogar, einige Teile selektiv zurückzusetzen, falls Sie sie endgültig nicht speichern möchten. Eine vollständigere Antwort finden Sie unter emacs.stackexchange.com/a/3778/10614 .
Stéphane Gourichon
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.