neobundle.vimの設定晒す
何回かneobundle.vimの記事書きました。
個人的にはインストール前(後?)とかにhookがあれば便利かなーとか妄想してますが、とりあえず現状で十分な気もするので最後に自分はこう設定してますよー的なことを書こうと思います。
vimrcから重要な点だけ抜粋します。
let $VIM_HOME =expand('~/.vim') let $VIM_BUNDLE_PATH =expand($VIM_HOME.'/bundle') let $VIM_NEOBUNDLE_PATH =expand($VIM_BUNDLE_PATH.'/neobundle.vim') if has('vim_starting') if isdirectory($VIM_NEOBUNDLE_PATH) execute 'set runtimepath^='.$VIM_NEOBUNDLE_PATH else " install neobundle.vim {{{ if executable('git') fu! s:nb_install() if confirm('|・ω・`)? :'.$VIM_NEOBUNDLE_PATH, "&yes\n&no", 1) == 1 let nb_repo = 'git://github.com/Shougo/neobundle.vim' call system('git clone '.nb_repo.' '.shellescape($VIM_NEOBUNDLE_PATH)) if !v:shell_error filetype off execute 'set runtimepath^='.$VIM_NEOBUNDLE_PATH filetype plugin indent on source $MYVIMRC else echomsg 'git failed.' end end augroup NBInstall autocmd! augroup END endf augroup NBInstall autocmd! autocmd VimEnter * call s:nb_install() augroup END end "}}} end end try call neobundle#rc($VIM_BUNDLE_PATH) NeoBundleFetch 'Shougo/neobundle.vim' command! MyNeoBundleCount echomsg len(neobundle#config#get_neobundles()) catch /E117/ echomsg 'neobundle is not available' endtry if exists('*neobundle#rc') " && 0 NeoBundle... 以降プラグイン毎に設定 end filetype plugin indent on
neobundle.vimがなければgit cloneすればいいじゃない。
自分の環境だとconfirm()を起動時にやるとショートカットキーでgvimを起動できなかったのでVimEnterまで遅らせてますが、大丈夫だったらそのままやったほうがいいかも。
あとはneobundle.vimがinstallされていない場合も考えてneobundle#rcを呼ぶときはE117をキャッチしとけば安全だと思います。
neobundle#rcが呼ばれてればexistsで1が返ってくるのでちゃんとインストールされているとみなしてNeoBundle(Lazy|Fetch)で色々登録してます。
MyNeoBundleCountは登録されているバンドルの数が知りたい時用。
ほんとはvimrcをgithubで管理してそっち晒した方が手っ取り早いんですが、いまいちこうビビっとこないのでまだやりません。
もっと簡潔に書ける気もしますがvim力低いんでしゃーない。