Skip to content

Commit

Permalink
Error when Vundle is loading from multiple sources.
Browse files Browse the repository at this point in the history
It's quite common to see issues related to Vundle accidentally loading
from several sources.
Try to mitigate this issue by echoing an error.
  • Loading branch information
Shahaf Arad committed Mar 20, 2015
1 parent 7d9b108 commit a321861
Showing 1 changed file with 22 additions and 0 deletions.
22 changes: 22 additions & 0 deletions autoload/vundle.vim
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,20 @@ endif
" :Plugin command in the vimrc. It is not possible to do this automatically
" because when loading the vimrc file no plugins where loaded yet.
func! vundle#rc(...) abort
" If this function has already been called and Vim hasn't finished loading,
" that is, we are not sourcing our .vimrc file later on, Vundle is probably
" loading from several sources which can lead to unpredictable results.
if exists('g:vundle_loading') && g:vundle_loading
echoerr 'Vundle is probably loading from several sources. ' .
\ 'This can lead to unpredictable results! ' .
\ 'Please find and remove the duplication.'
endif

" Set g:vundle_loading only if Vim hasn't finished loading.
if !exists('g:vundle_loaded') || !g:vundle_loaded
let g:vundle_loading = 1
endif

let g:bundle_dir = len(a:000) > 0 ? expand(a:1, 1) : expand('$HOME/.vim/bundle', 1)
let g:updated_bundles = []
let g:vundle_log = []
Expand All @@ -81,4 +95,12 @@ func! vundle#end(...) abort
call vundle#config#activate_bundles()
endf

augroup vundle
au!

" Tell Vundle it has finished loading and Vim is up and running.
au VimEnter * unlet g:vundle_loading
au VimEnter * let g:vundle_loaded = 1
augroup END

" vim: set expandtab sts=2 ts=2 sw=2 tw=78 norl:

0 comments on commit a321861

Please sign in to comment.