unite.vim で良い感じ(?)にディレクトリ周りの source を使う
とりあえず、以下のコードを .vimrc に記述してみた。
(元々の記述上、色々と違うところはあるが、大枠は以下のような記述になるはず。。。)
let s:unite_action_open_unite_file = { \ } function! s:unite_action_open_unite_file.func(candidate) " echoerr a:candicate.word let path = a:candidate.action__path execute 'Unite' 'file:'.path call unite#custom_action('directory', 'open_unite_file', s:unite_action_open_unite_file) endfunction unlet! s:unite_action_action_open_unite_file nnoremap <Leader>d :<C-u>Unite directory_mru -default-action=open_unite_file<CR>
unite.vim の directory kind の action を作成して、ディレクトリが選択されたら、
source=file を起動させる action を定義した。
kind=directory の default action が narrow かとおもってたりしたんだけど、違ったみたいなのでこのような定義をしてみたり…。
作った理由としては、file_mru が食いつぶされていたため、「あれ〜、あのディレクトリなんだっけ???」→「unite-z」が必要だ→できた!!→「directpry_mru」あるよね?→directory kind の挙動なにこれ???
から始まった騒動だったり…。
まぁ、なんで directory kind が展開されないの〜?はともかく、超短時間で拡張できてしまう(リアルに3分程度で対応できてしまった…w) unite.vim の底力に驚かされた出来事でした。(笑)