Bagaimana saya bisa melihat perubahan yang dibuat ke buffer yang dimodifikasi sejak penyimpanan terakhir?


Jawaban:


27

Anda menginginkan perintah M-x diff-buffer-with-file. Lihat manual:

diff-buffer-with-file adalah fungsi Lisp kompilasi autoloaded interaktif dalam `diff.el '.

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

Lihat perbedaan antara BUFFER dan file terkaitnya. Ini membutuhkan program eksternal diffuntuk berada di Anda exec-path.


Anda mungkin juga tertarik dengan highlight-changes-modeyang secara otomatis dan interaktif menyoroti perubahan yang dibuat pada buffer setelah diaktifkan.


Sepanjang garis highlight-changes-modeada juga diff-hlpaket di GNU ELPA.
Stefan

Ya, tetapi sekarang ini hanya berfungsi untuk menunjukkan perbedaan antara buffer (yang disimpan) dan vcrevisi. Saya bekerja pada diffing buffer (tidak seperti file backingnya) di diff-hl # 33 , tetapi diblokir pada bug di inti Emacs.
PythonNut

Apakah Anda memiliki nomor laporan bug untuk itu?
Stefan

@Stefan, saya belum sempat melakukannya.
PythonNut

Sudah diperbaiki (mungkin) dulu: bekerja di 2019! :)
mistige

13

Perintah 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-filememiliki beberapa manfaat dibandingkan diff-buffer-with-filejika Anda menginginkan peninjauan interaktif atas perubahan daripada perbedaan biasa. Tinjauan interaktif bahkan memungkinkan untuk mengembalikan beberapa bagian secara selektif, jika Anda akhirnya tidak ingin menyimpannya. Lihat juga emacs.stackexchange.com/a/3778/10614 untuk jawaban yang lebih lengkap.
Stéphane Gourichon
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.