unite の file_rec は特定のディレクトリ以下の全ファイルを列挙する source で、プロジェクトのルートなんかを指定すればプロジェクトの全ファイルを一望できてすごく便利なんだけど、肝心の指定方法が現在のディレクトリだったりコマンドラインからの指定だったりと何かと面倒だったので、unite で選択したディレクトリから file_rec を起動する action を定義してみた。
let s:unite_action_rec = {} function! s:unite_action_rec.func(candidate) call unite#start([['file_rec', a:candidate.action__path]]) endfunction call unite#custom_action('directory', 'rec', s:unite_action_rec) unlet! s:unite_action_rec
これを vimrc に書けば、 directory に rec と言う action が定義される。:Unite file でディレクトリを指定して
ちなみにこれを作るに当たって、作者の Shougo さんにいっぱい要望を出してしまいました。対応して下さってありがとうございます!
追記: 仕様変更に追従。
追記: 本家に取り込まれました! http://github.com/Shougo/unite.vim/commit/4fba98568d61ba246122feb715a3bc54c6b95968#L9R88