如何不保存文件中的更改(并在临时缓冲区!)?

问题描述:

必须是愚蠢的问题,但对于使用Emacs一段时间,我不知道我怎么能不适用我的变化...如何不保存文件中的更改(并在临时缓冲区!)?

当我退出ÇX C C它告诉我:

  • 类型SPC或'y'来保存当前的缓冲区;
  • DEL或`n'跳过当前缓冲区;
  • RET或'Q”放弃对保存(跳过所有剩余缓冲器);
  • C-g至退出(取消整个命令);
  • !保存所有剩余的缓冲区;
  • C-r查看此缓冲区;
  • d查看此缓冲区中的更改;
  • 或。 (句点)保存当前缓冲区并退出。

所以这里是一些机会不保存更改:N或Q,但总有保存当前阶段:(

我的意思是比如缓冲,当我通过添加随机文本那里,我打破了一些文件不想保存更改我想不保存的(未破),下一次启动编辑文件,但Emacs中总是打开保存的缓冲:(如何解决呢?

+0

如果按N,则它不会保存。 – Tom 2012-04-06 09:37:48

+0

是的但读取后,我将再次emacs此文件它将打开编辑的临时缓冲区。 – Cynede 2012-04-06 09:42:33

+0

它不应该默认这样做,除非你安装了一些包。如果您按下n,emacs会立即抛出您的更改。 – Tom 2012-04-06 09:57:13

你的问题的措辞非常混乱。我想你想添加 恢复的选项所提供的列表呢?这代码添加为复归 和标记缓冲区没有修改:

(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))))