これには組み込みのメカニズムはないと思うので、自分でロールする必要があるかもしれません。
直接の回答はありませんが、構成に似たようなものがあります。ディスク上のファイルと一致するファイルを強制終了するときに確認を求められません。これを確認するために、私はdiffを実行してから出力をスキャンしています-おそらくあなたのユースケースに似たようなことをすることができます。
(defun my/matches-file-p ()
"Return t if the current buffer is identical to its associated file."
(autoload 'diff-no-select "diff")
(when buffer-file-name
(diff-no-select buffer-file-name (current-buffer) nil 'noasync)
(with-current-buffer "*Diff*"
(search-forward-regexp "^Diff finished \(no differences\)\." (point-max) 'noerror))))
(defun my/kill-buffer ()
"Kill the current buffer.
Don't prompt for confirmation if the buffer is unmodified or matches its file."
(interactive)
(when (my/matches-file-p)
(set-buffer-modified-p nil))
(kill-buffer))
自動復帰のケースを詳しく見てみましょう。そのプロンプトはafter-find-file
タイムスタンプ(file-newer-than-file-p
)を見ているから来ているようです。この動作をカスタマイズまたはアドバイスする簡単な方法はわかりません。after-find-file
ファイルを自動保存ファイルと比較して、warn
一致する場合は引数をnilに設定することをお勧めします。