Skip to content

Commit 3b753cf

Browse files
committed
Use --list-cmds=others instead of hunting through PATH
Resolves: #2458
1 parent 045d2de commit 3b753cf

File tree

1 file changed

+1
-11
lines changed

1 file changed

+1
-11
lines changed

autoload/fugitive.vim

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4106,7 +4106,7 @@ function! s:CompletableSubcommands(dir) abort
41064106
let c_exec_path = s:cpath(s:VimExecPath())
41074107
if !has_key(s:path_subcommands, c_exec_path)
41084108
if fugitive#GitVersion(2, 18)
4109-
let [lines, exec_error] = s:LinesError([a:dir, '--list-cmds=list-mainporcelain,nohelpers,list-complete'])
4109+
let [lines, exec_error] = s:LinesError([a:dir, '--list-cmds=list-mainporcelain,nohelpers,list-complete,others'])
41104110
call filter(lines, 'v:val =~# "^\\S\\+$"')
41114111
if !exec_error && len(lines)
41124112
let s:path_subcommands[c_exec_path] = lines
@@ -4120,16 +4120,6 @@ function! s:CompletableSubcommands(dir) abort
41204120
endif
41214121
endif
41224122
let commands = copy(s:path_subcommands[c_exec_path])
4123-
for path in split($PATH, has('win32') ? ';' : ':')
4124-
if path !~# '^/\|^\a:[\\/]'
4125-
continue
4126-
endif
4127-
let cpath = s:cpath(path)
4128-
if !has_key(s:path_subcommands, cpath)
4129-
let s:path_subcommands[cpath] = filter(map(s:GlobComplete(path.'/git-', '*', 1),'substitute(v:val,"\\.exe$","","")'), 'v:val !~# "--\\|/"')
4130-
endif
4131-
call extend(commands, s:path_subcommands[cpath])
4132-
endfor
41334123
call extend(commands, keys(fugitive#ConfigGetRegexp('^alias\.\zs[^.]\+$', a:dir)))
41344124
let configured = split(FugitiveConfigGet('completion.commands', a:dir), '\s\+')
41354125
let rejected = {}

0 commit comments

Comments
 (0)