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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编写日志条目时防止GNU Emacs退出相关的知识,希望对你有一定的参考价值。

每当我不小心胖手指C-x C-c(或Mac上的Cmd-Q)时,GNU Emacs会立即退出,除非打开外壳或缓冲(由文件支持),在这种情况下它会提示如何继续。

不幸的是,如果我没有打开shell会话并保存了我的文件,但我正在编写一个精彩的,但也许并不完全精简的git日志消息(在*vc-log*缓冲区中),这不会阻止我退出一下子,无助,猛扑 - 因此失去了选秀权,这显然不会在我能找到的任何地方自动保存。

解决这个问题的最佳方法是什么?我认为最好是*vc-log*,以及任何其他这样的缓冲区提供“动态”组合,而不是由传统文件(例如提交/签入消息或电子邮件)支持,但仍有“待定”的支持草案“文件。这不仅有助于避免意外退出Emacs,还可以在Emacs(或计算机本身)崩溃时恢复此类草案。

如果这是一种合理的方法,应该如何实施?

我考虑过的其他方法(看起来不太理想):

  • 以某种方式说服相关的Emacs退出钩子在退出之前总是提示,即使没有shell会话也没有修改过,文件支持的缓冲区
  • 使用一个新的Emacs会话,由(例如)git commit自动调用(没有-m选项并假设环境中有GIT_EDITOR=emacs),因此文件支持的COMMIT_EDITMSG缓冲区用于组成提交消息 - 这会阻止新的Emacs会话在没有提示的情况下退出并避免意外退出原始Emacs会话(通常“胖”,有许多缓冲区和其他上下文)
  • 使用git commit -m ...作为单行提交消息
  • 始终保持shell会话打开(在Emacs中),因此退出始终首先提示

有什么建议?

答案

M-x customize-option RET confirm-kill-emacs RET

允许您设置确认提示。

以上是关于编写日志条目时防止GNU Emacs退出的主要内容,如果未能解决你的问题,请参考以下文章

dbus 方法中的错误类型错误(GNU Emacs)

使用导航从一个片段导航到另一个片段后,防止后按工作

防止 clang-format 删除 emacs 的换页符

Emacs 24.4 正式发布!!!

片段中 ListView 的 setOnItemClickListener

片段中ListView的setOnItemClickListener