From 33e9af5cd2eeee141b301c46bd1050194685160c Mon Sep 17 00:00:00 2001 From: Henrik Kjelsberg Date: Wed, 5 Jun 2013 09:47:59 +0200 Subject: [PATCH] Open github-page from the interactive list Opening of the github-page of the bundle below the cursor using the keymap 'o'. Since search only returns the bundle-name, it will open the vim-scripts/bundle-name version. From the `:BundleList` however it will work as expected. Unfortunately, the open command here only works on MacOs. --- autoload/vundle/scripts.vim | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/autoload/vundle/scripts.vim b/autoload/vundle/scripts.vim index ded6a46..90f6326 100644 --- a/autoload/vundle/scripts.vim +++ b/autoload/vundle/scripts.vim @@ -78,6 +78,16 @@ func! vundle#scripts#bundle_names(names) return map(copy(a:names), ' printf("Bundle ' ."'%s'".'", v:val) ') endf +func! vundle#scripts#openGithubPage(page) + let base = 'http://github.com/' + if match(a:page, '/') != -1 + let url = base . a:page + else + let url = base . 'vim-scripts/' . a:page + endif + exec '!o '.url +endfunc + func! vundle#scripts#view(title, headers, results) if exists('g:vundle_view') && bufloaded(g:vundle_view) exec g:vundle_view.'bd!' @@ -123,12 +133,16 @@ func! vundle#scripts#view(title, headers, results) com! -buffer -nargs=0 VundleChangelog call s:view_changelog() + com! -buffer -bang -nargs=1 OpenGithubPage call vundle#scripts#openGithubPage() + nnoremap q :silent bd! nnoremap D :exec 'Delete'.getline('.') nnoremap add :exec 'Install'.getline('.') nnoremap add! :exec 'Install'.substitute(getline('.'), '^Bundle ', 'Bundle! ', '') + nnoremap o :silent call vundle#scripts#openGithubPage(split(getline('.'))[1]) + nnoremap i :exec 'InstallAndRequire'.getline('.') nnoremap I :exec 'InstallAndRequire'.substitute(getline('.'), '^Bundle ', 'Bundle! ', '')