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 に答える