emacs建议恢复文件,但我错过了:如何让它提示?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了emacs建议恢复文件,但我错过了:如何让它提示?相关的知识,希望对你有一定的参考价值。

当emacs注意到崩溃时,在下次打开文件时它会“建议”M-x恢复文件。但这只是短暂地闪现,所以我今天早上错过了它:(我继续编辑,并且失去了昨晚的工作。

有没有办法让这个建议成为必须在继续之前得到回应的提示?

答案

警告消息来自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的相关部分 - 但也许它会让你开始朝着正确的方向前进。

以上是关于emacs建议恢复文件,但我错过了:如何让它提示?的主要内容,如果未能解决你的问题,请参考以下文章

sudo如何在Ubuntu上使用Emacs编辑本地文件?

在 git 中切换分支时,如何让 Emacs 恢复所有未更改的缓冲区?

使用R会话和并排窗口启动Emacs?

禁用 Carbon Emacs 滚动提示音

如何使 emacs 突出显示超过 80 个字符的行?

编写日志条目时防止GNU Emacs退出