Emacs の M-x grep をマルチエンコーディングに

なんかたまにエンコーディングの混ざっているファイル群に対して検索を掛ける必要があったりするんだけど、そのときだけ mi を起動したりしてものすごい敗北感を味わっていたんだけど、lgrep を使うことにした。

厳密には以前から emacs の grep で lgrep は使っていたんだけど、recursive に検索してくれなくてなんじゃこれめんどくさ、と放置気味だったわけ。

今回一念発起してこうしてみた。

(setq grep-program "find . -type f -a -print0 | xargs -0 lgrep -nk -Ou8 ")
  • UTF-8 出力で
  • 半角カナを全角カナに変換してから検索する

ようにしてみた。うむ、やっと便利になった。バイナリファイルも大量にあるっつー場合は適当に find の条件を書き換えて使うこと。lgrep を知らない人は勝手にググること。

More