anythingのcandidates-fileプラグイン用のファイルリストをgitから生成する
anything-match-pluginの制限→candidates-fileプラグイン推奨 - http://rubikitch.com/に移転しましたのcandidates-fileプラグイン、想像以上に便利です。
で、これを使うにはファイルのリストを自前で用意する必要があり、以下のようなコマンドが紹介されています。
$ find ~ > /tmp/tmp; mv /tmp/tmp /log/home.filelist
これだと、*~みたいな余分なファイルもファイルリストに登録されるのがちょっと気になります。
一方、ボクは~/cに必要なファイルを全部そこに放りこんで、それをgitで管理してます。そこでは.gitignoreを使って、余分なファイルを全部無視するようにしてあります。
じゃあ、この情報を使わないと損だよね。というわけで、gitからファイルリストを生成するシェルスクリプトを書いてみた。
#!/bin/sh function update(){ cd $1 # 絶対パスが出力されないので、補完する git ls-files | sed "s_^_$1/_" > /tmp/$2.$$ mv /tmp/$2.$$ ~/c/filelist/$2 } # ~/cのファイルリストを~/c/filelist/cに生成する update ~/c c # ~/c/external/schemeのファイルリストを~/c/filelist/schemeに生成する update ~/c/external/scheme scheme
git submoduleまでは追ってくれないのが、ちょっと残念。しょうがない気もするけど。