FuzzyFinder.vimとBlockDiff.vim

またまた、My vimpluginのアップデート。

BlockDiff

最近地味に便利なBlockDiff.vimというスクリプトをインストールしました。


開いているバッファからDiffをしたい範囲選択し、BlockDiff1とコマンドを入力するとレジスタに記憶され、
別のバッファを開いて選択したあとBlockDiff2とするとDiffができるというもの。


いちいち、DIFFモードを気にしたりパラメータ指定しないでいいのでお気楽。いい感じだ。

FuzzyFinder

FuzzyFinder.vimのアップデートが行われたようです。もちろん即アップデート。

  • ディレクトリモード
  • F12でモード切替時にエラーが発生していたのをBugFixしたみたい。

ディレクトリモードは例えばこんな感じで利用できそう。
ログファイルをまとめて開きたい。

  1. FuzzyFinderDir
  2. ログ格納ディレクトリへさくっと移動。
  3. args 20071225*.log
  4. ふむふむ。
  5. あとはFuzzyFiderMruFileとFuzzyFinderBufferでごにょごにょ。

特定のディレクトリファイルに対してなにかをする場合
コマンドモードでタブで補完が効いてcdできるし、CD.vimとか使えば、開いたファイルに対して自動的にcdしてくれるけど、
FuzzyFinderなら自分ですたすたと移動できてさらに便利。移動する事があまり苦にならない。(使用例になっていないw)


ちょっとFizzyFinder用の設定をした

よく使うので\ffとか\fbとかですぐに呼び出したいからvimrcにキーアサインを設定を書いた。

" FuzzyFineder用のマッピング
nmap <silent> <Leader>fa :FuzzyFinderAddMode<CR>
nmap <silent> <Leader>fb :FuzzyFinderBuffer<CR>
nmap <silent> <Leader>fc :FuzzyFinderMruCmd<CR>
nmap <silent> <Leader>fd :FuzzyFinderDir<CR>
nmap <silent> <Leader>ff :FuzzyFinderFile<CR>
nmap <silent> <Leader>fm :FuzzyFinderMruFile<CR>
nmap <silent> <Leader>fl :FuzzyFinderFavFile<CR>

あと、プロジェクトやよく使うディレクトリごとにぱっと検索できるように「短縮入力及び複合検索」の設定もした。

:let g:FuzzyFinder_FileModeVars =
            \ { "abbrevMap" :
            \   { ":prj1" : [ "/workspace/hogehoge/webapp/",
            \                 "/workspace/hogehoge/xxxxxx/"
            \               ]
            \   }
            \ }

実はこの設定は、ヘルプにでかでかと載っていたのに作者さんに問い合わせてしまった。
「ヘルプきちんと!」。読んだつもりになっていた自分に猛反省。


スクリプトの配布場所
【BlockDiff】
http://www.vim.org/scripts/script.php?script_id=2048
【FuzzyFinder】
http://www.vim.org/scripts/script.php?script_id=1984