basyura's blog

あしたになったらほんきだす。

fuf → unite に乗り換えて1日目

fuf から unite.vim に乗り換え。netrw から vimfiler.vim へ。

会社で使いながら色々メモってたんだけど、持って帰る(evernote に貼り付ける)のを忘れてしまった。思い出しながら家で触ってみる。
一番気になるのが軽さ。 Windows + kaoriya 版 gvim と mac + MacVim で、天と地ほどの差がある(マジで)。
MacVim の方が 何倍も軽い。何でだろう。Windows は Pentium4 3.2GHz で、Mac は Core2Duo 1.6GHz。どちらかが飛び抜けて早いとも思えないし遅いとも思えない。Core2 のおかげにしては違いがありすぎる。
gvim だと mru_file で歴が 30 ぐらいで怪しくなって、g:unite_update_time を 1000 にして良くなった。その後、100 ぐらいになると一覧を出すのに時間がかかるし、一覧表示後のカーソル移動にも時間がかかるようになった。esc で閉じる際にも時間がかかる。cpu を使ってるのはシステムモニタをみれば一目瞭然。一覧を表示する際に同一ディレクトリのものばっかりの時は割と早く、それ以外の場所にある絶対パスを表示するものばっかりの時は遅いように感じた。編集処理が怪しい?
ところが、MacVim だとサックサク。全然問題無い。Core2 のおかげなのかなぁ。ん〜。
前置きはここまでで、今の設定。

""""""""""""""""""""""""""""""""""
"            vimfiler            "
""""""""""""""""""""""""""""""""""

let g:vimfiler_as_default_explorer = 1

""""""""""""""""""""""""""""""""""
"             unite              "
""""""""""""""""""""""""""""""""""

let g:unite_update_time = 1000

nnoremap <silent> <C-r>  :<C-u>Unite file_mru<CR>
nnoremap <silent> <C-n>  :<C-u>Unite buffer <CR>
nnoremap <silent> <Leader>d :<C-u>Unite file<CR>

autocmd FileType unite call s:unite_my_settings()
function! s:unite_my_settings()
  " Overwrite settings.
  imap <buffer> jj <Plug>(unite_insert_leave)
  imap <buffer> <ESC> <ESC><ESC>
  nnoremap <buffer> t G
  startinsert
endfunction

unite がいろいろできるので vimfiler はあまり必要ないのかな?と感じるけど、カーソル移動で階層をたどっていきたい場合に扱いやすい。j k で上下にカーソルを動かしながら、l で階層を潜り(フォルダを開き)、h で上の階層へ。e でファイルを開く。ブックマーク機能があればかなり便利になりそうだけど、それ以外に必要な機能あるのかな?というぐらいの充実っぷり。

unit で気になったところとほしい物リスト。

  • Unite に適当な引数を渡すとエラーになる
  • windows だと file で ~/ で階層をたどれない
  • windows だと file で C:/Document and Settings/ 配下のフォルダにアクセスできない(候補が表示されない)
  • file_mru でフォルダが記録されるのは正しい?選択した時の挙動は?
  • file_mru でデフォルトの表示件数をしぼりたい(レスポンスが上がるなら)
  • file_mru で時間を表示しないオプションが欲しい
  • ブックマーク機能が欲しい。ディレクトリも登録できる任意の名前が付けられるもの

機能的には自分が fuf で使ってたものはあるのでいいんだけど、mru の動作がなんとも。buffer は問題なく fuf よりサクサク切り替わる。

一日目はこんな感じ。