diff --git a/GetLatest/GetLatestVimScripts.dat b/GetLatest/GetLatestVimScripts.dat index 0338ee0..d2c9127 100644 --- a/GetLatest/GetLatestVimScripts.dat +++ b/GetLatest/GetLatestVimScripts.dat @@ -1,7 +1,7 @@ ScriptID SourceID Filename -------------------------- ### plugins -3619 16426 buffergator +3619 16686 buffergator 102 16171 DirDiff.vim 1984 13961 :AutoInstall: FuzzyFinder 311 7645 grep.vim @@ -17,7 +17,7 @@ ScriptID SourceID Filename 2540 11006 snipMate.vim 1697 12566 :AutoInstall: surround.vim 3465 15751 Tagbar -90 16616 vcscommand.vim +90 16705 vcscommand.vim 2226 15854 vimwiki.vim 1334 6377 vst.vim 2321 9055 zoom.vim diff --git a/doc/buffergator.txt b/doc/buffergator.txt index 9a3c453..e09e6bd 100644 --- a/doc/buffergator.txt +++ b/doc/buffergator.txt @@ -108,52 +108,72 @@ q Quit the index/catalog window. Open Selected Buffer~ The following keys all open the currently-selected buffer and switch focus to -it. The catalog buffer will be closed if 'g:buffergator_autodismiss_on_select' -evaluates to true; otherwise it will be kept open. +it. If the key presses are preceded by a number, then the buffer with that +number will be selected and opened instead of the current buffer. The catalog +buffer will be closed if 'g:buffergator_autodismiss_on_select' evaluates to +true; otherwise it will be kept open. -, o Open the currently-selected buffer in previous window. -s Open the currently-selected buffer in a new vertical +, o Open the currently-selected buffer (or, if [count] is + given, buffer with number [count]), in previous window. +s Open the currently-selected buffer (or, if [count] is + given, buffer with number [count]), in a new vertical split. -i Open the currently-selected buffer in a new split. -t Open the currently-selected buffer in a new tab page. +i Open the currently-selected buffer (or, if [count] is + given, buffer with number [count]), in a new split. +t Open the currently-selected buffer (or, if [count] is + given, buffer with number [count]), in a new tab page. ------------------------------------------------------------------------------- Preview Selected Buffer~ The following keys all open the currently-selected buffer, but retain focus on -the catalog viewer. +the catalog viewer. If the key presses are preceded by a number, than the +buffer with that number will be opened. -O, go Preview the currently-selected buffer in the previous +O, go Preview the currently-selected buffer (or, if [count] is + given, buffer with number [count]), in the previous window. -S, gs Preview the currently-selected buffer is a new vertical +S, gs Preview the currently-selected buffer (or, if [count] is + given, buffer with number [count]), is a new vertical split. -I, gi Preview the currently-selected buffer is a new split -T Preview the currently-selected buffer is a new tab +I, gi Preview the currently-selected buffer (or, if [count] is + given, buffer with number [count]), in a new split +T Preview the currently-selected buffer (or, if [count] is + given, buffer with number [count]), in a new tab page. -, Go to the next buffer entry and preview it in the previous - window. -, Go to the previous buffer entry and preview it in the +, Go to the next buffer entry (or, if [count] is + given, buffer with number [count]), and preview it in the + previous window. +, Go to the previous buffer entry (or, if [count] is + given, buffer with number [count]), and preview it in the previous window. ------------------------------------------------------------------------------- Go to Existing Viewport Showing Buffer~ The following keys will try to find the selected buffer in an existing -viewport (whether on the current tab page or another). +viewport (whether on the current tab page or another). If the key presses are +preceded by a number, then the buffer with that number will be the target +buffer. -eo If currently-selected buffer is showing in an existing +eo If currently-selected buffer (or, if [count] is + given, buffer with number [count]), is showing in an existing viewport on this or any other tab page, go it it; otherwise show it in the previous window. -es If currently-selected buffer is showing in an existing +es If currently-selected buffer (or, if [count] is + given, buffer with number [count]), is showing in an existing viewport on this or any other tab page, go it it; otherwise show it in a new vertical split. -ei If currently-selected buffer is showing in an existing +ei If currently-selected buffer (or, if [count] is + given, buffer with number [count]), is showing in an existing viewport on this or any other tab page, go it it; otherwise show it in a new horizontal split. -et If currently-selected buffer is showing in an existing +et If currently-selected buffer (or, if [count] is + given, buffer with number [count]), is showing in an existing viewport on this or any other tab page, go it it; otherwise show it in a new tab page. -E If currently-selected buffer is showing in an existing +E If currently-selected buffer (or, if [count] is + given, buffer with number [count]), is showing in an existing viewport on this or any other tab page, go it it; otherwise do nothing. diff --git a/plugin/buffergator.vim b/plugin/buffergator.vim index 6316667..805816c 100644 --- a/plugin/buffergator.vim +++ b/plugin/buffergator.vim @@ -533,8 +533,10 @@ function! s:NewCatalogViewer(name, title) execute("silent keepalt keepjumps " . self.split_mode . " " . self.bufnum) if g:buffergator_viewport_split_policy =~ '[RrLl]' && g:buffergator_split_size execute("vertical resize " . g:buffergator_split_size) + setlocal winfixwidth elseif g:buffergator_viewport_split_policy =~ '[TtBb]' && g:buffergator_split_size execute("resize " . g:buffergator_split_size) + setlocal winfixheight endif endif endfunction @@ -1004,28 +1006,28 @@ function! s:NewBufferCatalogViewer() noremap cd :call b:buffergator_catalog_viewer.cycle_display_regime() noremap r :call b:buffergator_catalog_viewer.rebuild_catalog() noremap q :call b:buffergator_catalog_viewer.close(1) - noremap d :call b:buffergator_catalog_viewer.delete_target(0, 0) - noremap D :call b:buffergator_catalog_viewer.delete_target(0, 1) - noremap x :call b:buffergator_catalog_viewer.delete_target(1, 0) - noremap X :call b:buffergator_catalog_viewer.delete_target(1, 1) + noremap d :call b:buffergator_catalog_viewer.delete_target(0, 0) + noremap D :call b:buffergator_catalog_viewer.delete_target(0, 1) + noremap x :call b:buffergator_catalog_viewer.delete_target(1, 0) + noremap X :call b:buffergator_catalog_viewer.delete_target(1, 1) """"" Selection: show target and switch focus - noremap :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "") - noremap o :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "") + noremap :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "") + noremap o :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "") " gryf: let's keep it stright: s should h split, v should vertical " split - noremap s :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "sb") - noremap v :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "vert sb") - noremap t :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "tab sb") + noremap s :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "sb") + noremap v :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "vert sb") + noremap t :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "tab sb") """"" Preview: show target , keeping focus on catalog - noremap O :call b:buffergator_catalog_viewer.visit_target(1, 1, "") - noremap go :call b:buffergator_catalog_viewer.visit_target(1, 1, "") - noremap S :call b:buffergator_catalog_viewer.visit_target(1, 1, "vert sb") - noremap gs :call b:buffergator_catalog_viewer.visit_target(1, 1, "vert sb") - noremap I :call b:buffergator_catalog_viewer.visit_target(1, 1, "sb") - noremap gi :call b:buffergator_catalog_viewer.visit_target(1, 1, "sb") - noremap T :call b:buffergator_catalog_viewer.visit_target(1, 1, "tab sb") + noremap O :call b:buffergator_catalog_viewer.visit_target(1, 1, "") + noremap go :call b:buffergator_catalog_viewer.visit_target(1, 1, "") + noremap S :call b:buffergator_catalog_viewer.visit_target(1, 1, "vert sb") + noremap gs :call b:buffergator_catalog_viewer.visit_target(1, 1, "vert sb") + noremap I :call b:buffergator_catalog_viewer.visit_target(1, 1, "sb") + noremap gi :call b:buffergator_catalog_viewer.visit_target(1, 1, "sb") + noremap T :call b:buffergator_catalog_viewer.visit_target(1, 1, "tab sb") noremap :call b:buffergator_catalog_viewer.goto_index_entry("n", 1, 1) noremap :call b:buffergator_catalog_viewer.goto_index_entry("p", 1, 1) noremap :call b:buffergator_catalog_viewer.goto_index_entry("p", 1, 1) @@ -1033,11 +1035,11 @@ function! s:NewBufferCatalogViewer() noremap :call b:buffergator_catalog_viewer.goto_index_entry("p", 1, 1) """"" Preview: go to existing window showing target - noremap E :call b:buffergator_catalog_viewer.visit_open_target(1, !g:buffergator_autodismiss_on_select, "") - noremap eo :call b:buffergator_catalog_viewer.visit_open_target(0, !g:buffergator_autodismiss_on_select, "") - noremap es :call b:buffergator_catalog_viewer.visit_open_target(0, !g:buffergator_autodismiss_on_select, "vert sb") - noremap ei :call b:buffergator_catalog_viewer.visit_open_target(0, !g:buffergator_autodismiss_on_select, "sb") - noremap et :call b:buffergator_catalog_viewer.visit_open_target(0, !g:buffergator_autodismiss_on_select, "tab sb") + noremap E :call b:buffergator_catalog_viewer.visit_open_target(1, !g:buffergator_autodismiss_on_select, "") + noremap eo :call b:buffergator_catalog_viewer.visit_open_target(0, !g:buffergator_autodismiss_on_select, "") + noremap es :call b:buffergator_catalog_viewer.visit_open_target(0, !g:buffergator_autodismiss_on_select, "vert sb") + noremap ei :call b:buffergator_catalog_viewer.visit_open_target(0, !g:buffergator_autodismiss_on_select, "sb") + noremap et :call b:buffergator_catalog_viewer.visit_open_target(0, !g:buffergator_autodismiss_on_select, "tab sb") else @@ -1140,7 +1142,7 @@ function! s:NewBufferCatalogViewer() " explicit split command not given: switch to buffer in current " window let &switchbuf="useopen" - execute("silent keepalt keepjumps buffer " . a:bufnum) + execute("silent buffer " . a:bufnum) else " explcit split command given: split current window let &switchbuf="split" @@ -1149,14 +1151,38 @@ function! s:NewBufferCatalogViewer() let &switchbuf=l:old_switch_buf endfunction + function! l:catalog_viewer.get_target_bufnum(cmd_count) dict + if a:cmd_count == 0 + let l:cur_line = line(".") + if !has_key(l:self.jump_map, l:cur_line) + call s:_buffergator_messenger.send_info("Not a valid navigation line") + return -1 + endif + let [l:jump_to_bufnum] = self.jump_map[l:cur_line].target + return l:jump_to_bufnum + else + let l:jump_to_bufnum = a:cmd_count + if bufnr(l:jump_to_bufnum) == -1 + call s:_buffergator_messenger.send_info("Not a valid buffer number: " . string(l:jump_to_bufnum) ) + return -1 + endif + for lnum in range(1, line("$")) + if self.jump_map[lnum].target[0] == l:jump_to_bufnum + call cursor(lnum, 1) + return l:jump_to_bufnum + endif + endfor + call s:_buffergator_messenger.send_info("Not a listed buffer number: " . string(l:jump_to_bufnum) ) + return -1 + endif + endfunction + " Go to the selected buffer. - function! l:catalog_viewer.visit_target(keep_catalog, refocus_catalog, split_cmd) dict - let l:cur_line = line(".") - if !has_key(l:self.jump_map, l:cur_line) - call s:_buffergator_messenger.send_info("Not a valid navigation line") + function! l:catalog_viewer.visit_target(keep_catalog, refocus_catalog, split_cmd) dict range + let l:jump_to_bufnum = self.get_target_bufnum(v:count) + if l:jump_to_bufnum == -1 return 0 endif - let [l:jump_to_bufnum] = self.jump_map[l:cur_line].target let l:cur_tab_num = tabpagenr() if !a:keep_catalog call self.close(0) @@ -1171,13 +1197,11 @@ function! s:NewBufferCatalogViewer() " Go to the selected buffer, preferentially using a window that already is " showing it; if not, create a window using split_cmd - function! l:catalog_viewer.visit_open_target(unconditional, keep_catalog, split_cmd) dict - let l:cur_line = line(".") - if !has_key(l:self.jump_map, l:cur_line) - call s:_buffergator_messenger.send_info("Not a valid navigation line") + function! l:catalog_viewer.visit_open_target(unconditional, keep_catalog, split_cmd) dict range + let l:jump_to_bufnum = self.get_target_bufnum(v:count) + if l:jump_to_bufnum == -1 return 0 endif - let [l:jump_to_bufnum] = self.jump_map[l:cur_line].target let wnr = bufwinnr(l:jump_to_bufnum) if wnr != -1 execute(wnr . "wincmd w") @@ -1204,13 +1228,11 @@ function! s:NewBufferCatalogViewer() endif endfunction - function! l:catalog_viewer.delete_target(wipe, force) dict - let l:cur_line = line(".") - if !has_key(l:self.jump_map, l:cur_line) - call s:_buffergator_messenger.send_info("Not a valid navigation line") + function! l:catalog_viewer.delete_target(wipe, force) dict range + let l:bufnum_to_delete = self.get_target_bufnum(v:count) + if l:bufnum_to_delete == -1 return 0 endif - let [l:bufnum_to_delete] = self.jump_map[l:cur_line].target if !bufexists(l:bufnum_to_delete) call s:_buffergator_messenger.send_info("Not a valid or existing buffer") return 0 @@ -1290,18 +1312,29 @@ function! s:NewBufferCatalogViewer() endfunction " Finds next line with occurrence of a rendered index - function! l:catalog_viewer.goto_index_entry(direction, visit_target, refocus_catalog) dict - let l:ok = self.goto_pattern("^\[", a:direction) - execute("normal! zz") - if l:ok && a:visit_target - call self.visit_target(1, a:refocus_catalog, "") + function! l:catalog_viewer.goto_index_entry(direction, visit_target, refocus_catalog) dict range + if v:count > 0 + let l:target_bufnum = v:count + if bufnr(l:target_bufnum) == -1 + call s:_buffergator_messenger.send_info("Not a valid buffer number: " . string(l:target_bufnum) ) + return -1 + endif + let l:ok = 0 + for lnum in range(1, line("$")) + if self.jump_map[lnum].target[0] == l:target_bufnum + call cursor(lnum, 1) + let l:ok = 1 + break + endif + endfor + if !l:ok + call s:_buffergator_messenger.send_info("Not a listed buffer number: " . string(l:target_bufnum) ) + return -1 + endif + else + let l:ok = self.goto_pattern("^\[", a:direction) + execute("normal! zz") endif - endfunction - - " Finds next line with occurrence of a file pattern. - function! l:catalog_viewer.goto_file_start(direction, visit_target, refocus_catalog) dict - let l:ok = self.goto_pattern("^:::", a:direction) - execute("normal! zz") if l:ok && a:visit_target call self.visit_target(1, a:refocus_catalog, "") endif @@ -1382,7 +1415,8 @@ function! s:NewTabCatalogViewer() if l:cur_tab_num - 1 == l:tidx let l:initial_line = line("$") endif - let l:tabfield = "==== Tab Page [" . string(l:tidx+1) . "] ====" + " let l:tabfield = "==== Tab Page [" . string(l:tidx+1) . "] ====" + let l:tabfield = "TAB PAGE " . string(l:tidx+1) . ":" call self.append_line(l:tabfield, l:tidx+1, 1) for widx in range(len(l:tabinfo)) let l:tabbufnum = l:tabinfo[widx] @@ -1419,7 +1453,7 @@ function! s:NewTabCatalogViewer() function! l:catalog_viewer.setup_buffer_syntax() dict if has("syntax") - syn match BuffergatorTabPageLine '^==== Tab Page \[\d\+\] ====$' + syn match BuffergatorTabPageLine '^TAB PAGE \d\+\:$' " syn match BuffergatorTabPageLineStart '^==== Tab Page \[' nextgroup=BuffergatorTabPageNumber " syn match BuffergatorTabPageNumber '\d\+' nextgroup=BuffergatorTabPageLineEnd " syn match BuffergatorTabPageLineEnd '\] ====$' @@ -1476,7 +1510,7 @@ function! s:NewTabCatalogViewer() endfunction function! l:catalog_viewer.goto_index_entry(direction) dict - let l:ok = self.goto_pattern("^=", a:direction) + let l:ok = self.goto_pattern("^T", a:direction) execute("normal! zz") " if l:ok && a:visit_target " call self.visit_target(1, a:refocus_catalog, "") @@ -1523,7 +1557,12 @@ function! BuffergatorBuffersStatusLine() return l:status_line endfunction function! BuffergatorTabsStatusLine() - let l:status_line = "[[buffergator: tabs]]" + let l:status_line = "[[buffergator]]" + let l:line = line(".") + if has_key(b:buffergator_catalog_viewer.jump_map, l:line) + let l:status_line .= " Tab Page: " . b:buffergator_catalog_viewer.jump_map[l:line].target[0] + let l:status_line .= ", Window: " . b:buffergator_catalog_viewer.jump_map[l:line].target[1] + endif return l:status_line endfunction " 1}}} diff --git a/plugin/vcsbzr.vim b/plugin/vcsbzr.vim index 877990d..966f2ee 100644 --- a/plugin/vcsbzr.vim +++ b/plugin/vcsbzr.vim @@ -43,7 +43,9 @@ if v:version < 700 finish endif -runtime plugin/vcscommand.vim +if !exists('g:loaded_VCSCommand') + runtime plugin/vcscommand.vim +endif if !executable(VCSCommandGetOption('VCSCommandBZRExec', 'bzr')) " BZR is not installed @@ -105,7 +107,7 @@ endfunction " Function: s:bzrFunctions.Annotate(argList) {{{2 function! s:bzrFunctions.Annotate(argList) if len(a:argList) == 0 - if &filetype == 'BZRannotate' + if &filetype ==? 'bzrannotate' " Perform annotation of the version indicated by the current line. let caption = matchstr(getline('.'),'\v^\s+\zs\d+') let options = ' -r' . caption diff --git a/plugin/vcscommand.vim b/plugin/vcscommand.vim index 2698322..1ea79b6 100644 --- a/plugin/vcscommand.vim +++ b/plugin/vcscommand.vim @@ -820,7 +820,15 @@ function! s:VCSAnnotate(bang, ...) endif let originalFileType = getbufvar(originalBuffer, '&ft') let annotateFileType = getbufvar(annotateBuffer, '&ft') - execute "normal! 0zR\G/" . splitRegex . "/e\d" + + let saveselection = &selection + set selection=inclusive + try + execute "normal! 0zR\G/" . splitRegex . "/e\d" + finally + let &selection = saveselection + endtry + call setbufvar('%', '&filetype', getbufvar(originalBuffer, '&filetype')) set scrollbind leftabove vert new diff --git a/plugin/vcscvs.vim b/plugin/vcscvs.vim index 53e6770..11c7433 100644 --- a/plugin/vcscvs.vim +++ b/plugin/vcscvs.vim @@ -89,7 +89,9 @@ if v:version < 700 finish endif -runtime plugin/vcscommand.vim +if !exists('g:loaded_VCSCommand') + runtime plugin/vcscommand.vim +endif if !executable(VCSCommandGetOption('VCSCommandCVSExec', 'cvs')) " CVS is not installed @@ -180,7 +182,7 @@ endfunction " Function: s:cvsFunctions.Annotate(argList) {{{2 function! s:cvsFunctions.Annotate(argList) if len(a:argList) == 0 - if &filetype == 'CVSannotate' + if &filetype ==? 'cvsannotate' " This is a CVSAnnotate buffer. Perform annotation of the version " indicated by the current line. let caption = matchstr(getline('.'),'\v^[0-9.]+') diff --git a/plugin/vcsgit.vim b/plugin/vcsgit.vim index b440565..2667982 100644 --- a/plugin/vcsgit.vim +++ b/plugin/vcsgit.vim @@ -48,7 +48,9 @@ if v:version < 700 finish endif -runtime plugin/vcscommand.vim +if !exists('g:loaded_VCSCommand') + runtime plugin/vcscommand.vim +endif if !executable(VCSCommandGetOption('VCSCommandGitExec', 'git')) " git is not installed diff --git a/plugin/vcshg.vim b/plugin/vcshg.vim index e9e894a..775ede0 100644 --- a/plugin/vcshg.vim +++ b/plugin/vcshg.vim @@ -50,7 +50,9 @@ if v:version < 700 finish endif -runtime plugin/vcscommand.vim +if !exists('g:loaded_VCSCommand') + runtime plugin/vcscommand.vim +endif if !executable(VCSCommandGetOption('VCSCommandHGExec', 'hg')) " HG is not installed @@ -110,10 +112,10 @@ endfunction " Function: s:hgFunctions.Annotate(argList) {{{2 function! s:hgFunctions.Annotate(argList) if len(a:argList) == 0 - if &filetype == 'HGannotate' + if &filetype ==? 'hgannotate' " Perform annotation of the version indicated by the current line. - let caption = matchstr(getline('.'),'\v^\s+\zs\d+') - let options = ' -r' . caption + let caption = matchstr(getline('.'),'\v^\s*\w+\s+\zs\d+') + let options = ' -un -r' . caption else let caption = '' let options = ' -un' diff --git a/plugin/vcssvk.vim b/plugin/vcssvk.vim index b58b603..bee84c3 100644 --- a/plugin/vcssvk.vim +++ b/plugin/vcssvk.vim @@ -43,7 +43,9 @@ if v:version < 700 finish endif -runtime plugin/vcscommand.vim +if !exists('g:loaded_VCSCommand') + runtime plugin/vcscommand.vim +endif if !executable(VCSCommandGetOption('VCSCommandSVKExec', 'svk')) " SVK is not installed @@ -104,7 +106,7 @@ endfunction " Function: s:svkFunctions.Annotate(argList) {{{2 function! s:svkFunctions.Annotate(argList) if len(a:argList) == 0 - if &filetype == 'SVKannotate' + if &filetype ==? 'svkannotate' " Perform annotation of the version indicated by the current line. let caption = matchstr(getline('.'),'\v^\s+\zs\d+') let options = ' -r' . caption diff --git a/plugin/vcssvn.vim b/plugin/vcssvn.vim index 30f7a24..8ad6388 100644 --- a/plugin/vcssvn.vim +++ b/plugin/vcssvn.vim @@ -50,7 +50,9 @@ if v:version < 700 finish endif -runtime plugin/vcscommand.vim +if !exists('g:loaded_VCSCommand') + runtime plugin/vcscommand.vim +endif if !executable(VCSCommandGetOption('VCSCommandSVNExec', 'svn')) " SVN is not installed @@ -89,22 +91,17 @@ endfunction " Function: s:svnFunctions.Identify(buffer) {{{2 function! s:svnFunctions.Identify(buffer) - let fileName = resolve(bufname(a:buffer)) - if isdirectory(fileName) - let directoryName = fileName - else - let directoryName = fnamemodify(fileName, ':h') - endif - if strlen(directoryName) > 0 - let svnDir = directoryName . '/.svn' - else - let svnDir = '.svn' - endif - if isdirectory(svnDir) - return 1 - else - return 0 - endif + let oldCwd = VCSCommandChangeToCurrentFileDir(resolve(bufname(a:buffer))) + try + call s:VCSCommandUtility.system(s:Executable() . ' info .') + if(v:shell_error) + return 0 + else + return g:VCSCOMMAND_IDENTIFY_EXACT + endif + finally + call VCSCommandChdir(oldCwd) + endtry endfunction " Function: s:svnFunctions.Add() {{{2 @@ -115,7 +112,7 @@ endfunction " Function: s:svnFunctions.Annotate(argList) {{{2 function! s:svnFunctions.Annotate(argList) if len(a:argList) == 0 - if &filetype == 'SVNannotate' + if &filetype ==? 'svnannotate' " Perform annotation of the version indicated by the current line. let caption = matchstr(getline('.'),'\v^\s+\zs\d+') let options = ' -r' . caption @@ -187,7 +184,7 @@ endfunction function! s:svnFunctions.GetBufferInfo() let originalBuffer = VCSCommandGetOriginalBuffer(bufnr('%')) let fileName = bufname(originalBuffer) - let statusText = s:VCSCommandUtility.system(s:Executable() . ' status --non-interactive -vu -- "' . fileName . '"') + let statusText = s:VCSCommandUtility.system(s:Executable() . ' status --non-interactive -v -- "' . fileName . '"') if(v:shell_error) return [] endif