mirror of
https://github.com/fish-shell/fish-shell
synced 2024-11-10 15:14:44 +00:00
completions pipenv: made pipenv completions compatible with recent versions
pipenv switched from older click-completion package to new built-in completions from click framework in v2021.11.9. This command achieves compatibility with both, older and more recent versions.
This commit is contained in:
parent
15a89718ae
commit
3e3996c9a5
1 changed files with 9 additions and 4 deletions
|
@ -1,7 +1,12 @@
|
|||
if command -sq pipenv
|
||||
# pipenv determines which completions to print via some automagic that might not be perfect.
|
||||
# Force it to be correct.
|
||||
_PIPENV_COMPLETE=source-fish pipenv --completion 2>/dev/null | source
|
||||
# try new completion generation of click first
|
||||
set -l comps (_PIPENV_COMPLETE=fish_source pipenv 2>/dev/null)
|
||||
if test -z "$comps" || string match -q 'Usage:*' -- $comps
|
||||
# fall back to older click-completion used in prior versions
|
||||
set comps (_PIPENV_COMPLETE=source-fish pipenv --completion 2>/dev/null)
|
||||
end
|
||||
|
||||
set -q comps[1] && printf %s\n $comps | source
|
||||
|
||||
|
||||
# manual workaround for pipenv run command completion until this is supported by the built-in mechanism
|
||||
complete -c pipenv -n "__fish_seen_subcommand_from run" -a "(__fish_complete_subcommand --fcs-skip=2)" -x
|
||||
|
|
Loading…
Reference in a new issue