Add proper pyenv support to fish

This commit is contained in:
Colin Powell
2018-12-07 13:40:10 -05:00
parent 574abe6975
commit ce96d464e3
6 changed files with 50 additions and 49 deletions

View File

@ -1,24 +1,23 @@
function __fish_pyenv_needs_command
set cmd (commandline -opc)
if test (count $cmd) -eq 1 -a "$cmd[1]" = "pyenv"
return 0
end
return 1
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 test (count $cmd) -gt 1
if test "$argv[1]" = "$cmd[2]"
return 0
end
set cmd (commandline -opc)
if [ (count $cmd) -gt 1 ]
if [ $argv[1] = $cmd[2] ]
return 0
end
return 1
end
return 1
end
if command -s pyenv > /dev/null
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 $cmd)"
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