概要
helmは、かの有名なanythingをforkして始まったプロジェクトで、最近はanythinguよりもこちらが主流となっています。
helmが持つ機能で一番使うものがhelm-mini
だと思います。で、普段はこのhelm-mini
で普通にファイル名を入力して検索するだけだと思いますが、割りといろんな検索が出来るのでそれの紹介をします。
正規表現で検索
実は正規表現が使えます。
例えば、
.c
ファイルを探したい場合
→ \.c$
.php
ファイル、あるいは.php5
ファイルを探したい場合
→\.php5?$
という具合です。いい例が拡張子くらいしか思い浮かばなくてこれくらいしか書いていませんが、基本的な正規表現はだいたい使えるようです。ただ {2, 3}
のように数を指定するのは出来ませんでした。\{2,3\}
のように中括弧にバックスラッシュをつけると出来ます( @ShingoFukuyama さんコメントありがとうございます)
バッファの内容で検索
現在開いているバッファのみですが、バッファの名前ではなくバッファの内容で検索することが出来ます。
やり方は@
に続けて探したいワードを入力するだけです。
例えば
require
というワードを含んだバッファを探したい場合
→@require
と入力することで検索できます。
また、バッファの内容で検索するのではなく普通にファイル名に@
を含んだものを探したい場合はエスケープ(\@
)することで検索できます(正確にはエスケープしなくてもファイル名に@
が入っているファイルの検索も行われます。エスケープすることによってバッファ内容検索が行われなくなります。)
組み合わせて検索
helmはスペース区切りで検索条件を複数指定することが出来ます。
例えば、
ファイル名にapp
を含んでいる.rb
ファイルでバッファ内にmodule
というワードで始まる行があるバッファを検索する場合
→ \.rb$ @^module app
と入れると検索できます。
おわりに
バッファの内容で検索や正規表現で拡張子指定して検索というのは、それなりに?需要あるけど知らない人が多いんじゃないでしょうか。僕はアドベントカレンダーのネタを探してhelmのhelp読んでさっき知りました。