From 52456534f9223b3f4dcfdf24fa42bbbe44cacb98 Mon Sep 17 00:00:00 2001 From: gmarik Date: Wed, 11 May 2011 21:29:57 -0500 Subject: [PATCH] replace runtime! calls with source - See: - src/main.c - for plugin loading - src/ex_cmds2.c - for how :runtime! and :source work - benefit of using source vs runtime is that it's faster as doesn't traverse &rtp --- autoload/vundle/config.vim | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/autoload/vundle/config.vim b/autoload/vundle/config.vim index edfc227..eedb646 100644 --- a/autoload/vundle/config.vim +++ b/autoload/vundle/config.vim @@ -13,15 +13,19 @@ endf func! vundle#config#require(bundles) abort for b in a:bundles + " TODO: should this be here? call s:rtp_add(b.rtpath()) - call s:rtp_add(g:vundle#bundle_dir) - " TODO: it has to be relative rtpath, not bundle.name - exec 'runtime! '.b.name.'/plugin/*.vim' - exec 'runtime! '.b.name.'/after/*.vim' - call s:rtp_rm(g:vundle#bundle_dir) + " load plugin + for s in s:glob(b.rtpath().'/plugin/**/*.vim') + exec 'source '.s + endfor endfor endf +func! s:glob(pattern) + return split(glob(a:pattern),"\n") +endf + func! vundle#config#init_bundle(bang, name, opts) let opts = extend(s:parse_options(a:bang, a:opts), s:parse_name(substitute(a:name,"['".'"]\+','','g')),'keep') return extend(opts, copy(s:bundle))