強制的に yes にする

ただ今回は並行して make を走らせたいのではなくて後から実行された方の make を優先してほしいだけなので毎回 yes と答えたいだけである。

うまい方法が思いつかなかったので compile.el の以下の該当部分を直接書き換えてしまったがもっと良いテクニックはあるだろうか。

こんなんどうでしょうか。yes-or-no-p を強制的に yes にする force-yes という advice を定義しておいて、compilation-start の間だけ force-yes を有効にする advice を定義すると。ややこしいな。Emacs Lisp の advice がわかる人はコードをみたほうが早い。
あと force-kill-compilation-process を nil にしておくとちゃんと yes/no を聞いてくるようになる。

(defvar force-kill-compilation-process t
  "*If non nil, kill before compilation proces when compile sources")

(defadvice yes-or-no-p
  (around force-yes)
  (setq ad-return-value t))

(defadvice compilation-start
  (around force-kill-compilation-process activate)
  (if force-kill-compilation-process
      (progn
        (ad-activate-regexp "force-yes")
        ad-do-it
        (ad-deactivate-regexp "force-yes"))
    ad-do-it))

聞きたいことしか聞かない人

人力検索はてな - なぜ都内のJRだけでも24時間運転しないのですか? 24時間電車が使えれば、もっと経済が潤うと思うのですが、絶対的な問題があるのでしょうか? お金が足りないならど..
viaREVの日記 @はてな
ワロタ。聞きたいことしか聞かない人だなぁ。