あなたは自動保存系のelispを使っていますか?
real-auto-saveauto-save-buffers-enhanced を本サイトでは紹介しました。

どちらも一定時間ごとにバッファをファイルに保存してくれます。
おかげさまでC-x C-sを押す手間を省いてくれます。
僕はとても便利だと感じています。

ところで、これらのパッケージを使っていると、
たまにおかしい現象に出喰わしませんか?
こちらでは
「File to save in:」
というプロンプトがいきなり出てくることがあります。

このプロンプトは basic-save-buffer 関数経由です。

僕は今はreal-auto-saveを使っています。
僕が思うに、保存されるタイミングが悪くてEmacs的に
「ちょっとタンマ、今ダメ!」
みたいなことだと思います。

とりあえず run-at-time から run-with-idle-timer
書き換えることでその現象は出なくなりました。
どちらもユーザがEmacsを操作しなくても関数を実行するタイマー機能です。

run-at-timeは指定された時間になったらたとえ作業中だろうと
問答無用でタイマー関数が実行されます。

対してrun-with-idle-timerは一定時間Emacsを触っていないときに
タイマー関数が実行されます。

後者の方が「ちょっとタンマ」になりにくいので、
上の怪現象が起きないのだと思います。

real-auto-saveでは以下のアドバイスを設定しています。

(defun real-auto-save-start-timer--idle-timer ()
  "Start real-auto-save-timer."
  (setq real-auto-save-timer
        (run-with-idle-timer real-auto-save-interval
          real-auto-save-interval 'real-auto-save-buffers)))
(advice-add 'real-auto-save-start-timer :override
            'real-auto-save-start-timer--idle-timer)

まだ仮説段階なのでissueは出していません。

本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。