mirror of
https://github.com/pyenv/pyenv.git
synced 2024-12-24 03:11:29 +00:00
e09d61780c
This allows subcommand style plugins to properly autocomplete. Existing commands are not affected. Example, say you have support for `pyenv foo bar --flag`, then this allows the last `--flag` argument to be properly completed.
23 lines
541 B
Fish
23 lines
541 B
Fish
function __fish_pyenv_needs_command
|
|
set cmd (commandline -opc)
|
|
if [ (count $cmd) -eq 1 -a $cmd[1] = 'pyenv' ]
|
|
return 0
|
|
end
|
|
return 1
|
|
end
|
|
|
|
function __fish_pyenv_using_command
|
|
set cmd (commandline -opc)
|
|
if [ (count $cmd) -gt 1 ]
|
|
if [ $argv[1] = $cmd[2] ]
|
|
return 0
|
|
end
|
|
end
|
|
return 1
|
|
end
|
|
|
|
complete -f -c pyenv -n '__fish_pyenv_needs_command' -a '(pyenv commands)'
|
|
for cmd in (pyenv commands)
|
|
complete -f -c pyenv -n "__fish_pyenv_using_command $cmd" -a \
|
|
"(pyenv completions (commandline -opc)[2..-1])"
|
|
end
|