1

一定是个愚蠢的问题,但有一段时间使用 Emacs 我不知道如何才能不应用我的更改......

当我退出 C x C c 它告诉我:

  • 输入 SPC 或 `y' 保存当前缓冲区;
  • DEL 或 `n' 跳过当前缓冲区;
  • RET 或 `q' 放弃保存(跳过所有剩余的缓冲区);
  • Cg 退出(取消整个命令);
  • !保存所有剩余的缓冲区;
  • Cr 查看此缓冲区;
  • d 查看此缓冲区中的更改;
  • 或者 。(句点)保存当前缓冲区并退出。

所以这里有一些不保存更改的机会:n 或 q 但总有当前阶段的保存缓冲区:(

我的意思是,例如,当我通过在其中添加随机文本来破坏某些文件并且我不想保存更改时我想在下次未保存(未破坏)文件时开始编辑但 Emacs 总是打开保存的缓冲区:( 如何解决它?

4

1 回答 1

5

您对问题的措辞非常混乱。我认为您想将还原添加到提供的选项列表中?此代码添加,了还原并将%缓冲区标记为未修改:

(when (boundp 'save-some-buffers-action-alist)
  (setq save-some-buffers-action-alist
        (cons
         (list
          ?%
          #'(lambda (buf)
              (with-current-buffer buf
                (set-buffer-modified-p nil))
              nil)
          "mark buffer unmodified.")
         (cons
          (list
           ?, 
           #'(lambda (buf)
               (with-current-buffer buf
                 (revert-buffer t))
               nil)
           "revert buffer.")
          save-some-buffers-action-alist))))
于 2012-04-06T12:00:12.143 回答