heavim/config-bits/20-neobundle.vim
Emmanuel BENOîT 49b97afd6a NeoBundle uses runtime directory
* Initial version included here as submodule
* Use version from g:vim_vardata/bundles otherwise
* This avoids polluting the configuration directory with bundles
2015-02-22 17:25:10 +01:00

48 lines
1.2 KiB
VimL

" Load and initialise NeoBundle and plugins
if !exists( "g:bundles_dir" )
let g:bundles_dir = g:vim_vardata . "/bundles/"
elseif g:bundles_dir !~ "/$"
let g:bundles_dir = g:bundles_dir . "/"
endif
if !CreateDirectoryIfNecessary( g:bundles_dir )
unlet g:bundles_dir
finish
endif
if has( 'vim_starting' )
if &compatible
set nocompatible
endif
if isdirectory( g:bundles_dir . "neobundle.vim" )
let s:neobundle_path = g:bundles_dir . "neobundle.vim"
else
let s:neobundle_path = g:vim_home . "/neobundle-initial"
endif
let &g:runtimepath = &g:runtimepath . "," . s:neobundle_path
endif
call neobundle#begin( g:bundles_dir )
" Load NeoBundle itself, as well as VimProc
NeoBundleFetch 'Shougo/neobundle.vim'
" Load all plugins from bundles-init/*.load
let s:binit_dir = g:vim_home . "/bundles-init"
for s:plfn in glob( s:binit_dir . "/*.load.vim" , 0 , 1 )
execute "source" s:plfn
" Create configuration loading hooks
let s:pname = fnamemodify( s:plfn , ":t:r:r" )
let s:bundle = neobundle#get( s:pname )
function! s:bundle.hooks.on_post_source( bundle )
let cfgfile = s:binit_dir . "/" . a:bundle.name . ".cfg.vim"
if filereadable( l:cfgfile )
execute "source" l:cfgfile
endif
endfunction
endfor
call neobundle#end()