(emacs) M-x occur: バッファに対する grep 機能

Published: 2023/7/13


Emacs でソースコードを見ていると、今見ているファイル(バッファ)に対して grep をかけたくなるときがある。 Emacs には、それ用の機能として、 M-x occur が用意されている。

M-x occur は、(インタラクティブ)引数として検索対象の文字列を受け取り、今現在開いているバッファにおいて、その対象文字列がある行を抽出して、別ウィンドウで表示してくれる。 また、その別ウィンドウ上で hit した行にカーソルを合わせると、それに合わせて元ウィンドウで hit 箇所がハイライトされたり、 <enter> によって hit 箇所へジャンプできたりする。

なので逆に、 emacs では元々 occur があるために、バッファに対しては grep を行うという機能がそもそも必要ないため、「バッファに対する grep 機能」で検索しても、 occur にまで辿りつかなかったりする。 定期的にこの機能のことを自分自身忘れたりしているので、改めて、 occur こそがその目的を果たすコマンドである、という備忘録。


Tags: emacs