Після запуску recover-this-file
та прийняття версії автоматичного збереження у вас буде модифікований буфер, що містить вміст автоматичного збереження. У цей момент ви можете використовувати, M-x diff-buffer-with-file
RETщоб побачити відмінності між зміненим буфером і збереженим файлом.
Ключ, який я прив’язав до цього, насправді виконує власну функцію, щоб створити єдиний розріз та пропустити підказку для буфера (він передбачає поточний буфер).
(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))))
Є також еквівалент едіффа (який я, як правило, віддаю перевагу, хоча я використовую і те й інше), який доступний у M-x ediff-current-file
RET
Якщо ви хочете відхилити модифікації після перевірки різниці, вам слід мати можливість просто undo
відновити. (Якщо цього не можна використовувати revert-buffer
або find-alternate-file
).
Оскільки часто пов'язані сполучення клавіш для команд diff =, я вважаю таке зручним (nb я розв'язав C-z
прив'язку за замовчуванням і перемістив її замість до C-z C-z
, що відкривається C-z
як префікс для спеціальних прив’язок):
(global-set-key (kbd "C-z =") 'my-diff-buffer-with-file)
(global-set-key (kbd "C-z C-=") 'ediff-current-file)