Emacs предлагает восстановить файл, но я пропустил его: как заставить это подсказать? - PullRequest
0 голосов
/ 30 августа 2018

Когда emacs замечает сбой, при следующем открытии файла он «предлагает» восстановить файл M-x. Но это вспыхивает только ненадолго, поэтому я пропустил это сегодня утром :( Я продолжал редактировать и потерял работу вчера вечером.

Есть ли способ сделать это предложение подсказкой, на которую нужно ответить, прежде чем оно продолжится?

1 Ответ

0 голосов
/ 30 августа 2018

Предупреждающее сообщение поступает от функции after-find-file. Я не нахожу опцию для управления этим, но вы можете определить функцию для выполнения чего-то подобного:

(defvar already-in-prompt-for-auto-save nil)

(defun prompt-for-auto-save-recovery ()
  (if (and (not buffer-read-only)
           (not already-in-prompt-for-auto-save)
           (file-newer-than-file-p (or buffer-auto-save-file-name
                                       (make-auto-save-file-name))
                                   buffer-file-name)
           (y-or-n-p (format "%s has auto save data: do you want to recover it? "
                              (file-name-nondirectory buffer-file-name))))
      (let ((already-in-prompt-for-auto-save t))
         (recover-this-file))))

и затем установите его как крючок.

(add-hook 'find-file-hook 'prompt-for-auto-save-recovery)

Это слегка проверенный код - я извлек то, что выглядело как соответствующие части after-find-file, - но, возможно, это поможет вам начать в правильном направлении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...