rgrep という emacs から指定したディレクトリ以下に対して grep する機能がある。M-x rgrep で実行可能。だけど一度 rgrep して *grep* バッファを削除していない場合、次に rgrep しようとしたときに "rgrep: Buffer is read-only: #<buffer *grep*>" といわれ実行できない。以前その対策をしたことがある。 *grep* バッファがあれば、M-x rgrep したときにそれを削除する処理をはさむというもの。 *grep* バッファがあっても rgrep する - わからん grep-a-lot.el はこれとは違い、*grep* バッファをどんどん増やしていくというアプローチ。 rubikitch さんの本で紹介されていた。 http://www.emacswiki.org/emacs/grep-a-lot.el