U ʗRe!@srddlZddlZddlmZddlmZddlmZddlm Z ddl m Z dZ dd d d d Z Gd ddeZdS)N)Values)List)Command)SUCCESS)get_progzD # pip {shell} completion start{script}# pip {shell} completion end a _pip_completion() {{ COMPREPLY=( $( COMP_WORDS="${{COMP_WORDS[*]}}" \ COMP_CWORD=$COMP_CWORD \ PIP_AUTO_COMPLETE=1 $1 2>/dev/null ) ) }} complete -o default -F _pip_completion {prog} aM function _pip_completion {{ local words cword read -Ac words read -cn cword reply=( $( COMP_WORDS="$words[*]" \ COMP_CWORD=$(( cword-1 )) \ PIP_AUTO_COMPLETE=1 $words[1] 2>/dev/null )) }} compctl -K _pip_completion {prog} au function __fish_complete_pip set -lx COMP_WORDS (commandline -o) "" set -lx COMP_CWORD ( \ math (contains -i -- (commandline -t) $COMP_WORDS)-1 \ ) set -lx PIP_AUTO_COMPLETE 1 string split \ -- (eval $COMP_WORDS[1]) end complete -fa "(__fish_complete_pip)" -c {prog} a if ((Test-Path Function:\TabExpansion) -and -not ` (Test-Path Function:\_pip_completeBackup)) {{ Rename-Item Function:\TabExpansion _pip_completeBackup }} function TabExpansion($line, $lastWord) {{ $lastBlock = [regex]::Split($line, '[|;]')[-1].TrimStart() if ($lastBlock.StartsWith("{prog} ")) {{ $Env:COMP_WORDS=$lastBlock $Env:COMP_CWORD=$lastBlock.Split().Length - 1 $Env:PIP_AUTO_COMPLETE=1 (& {prog}).Split() Remove-Item Env:COMP_WORDS Remove-Item Env:COMP_CWORD Remove-Item Env:PIP_AUTO_COMPLETE }} elseif (Test-Path Function:\_pip_completeBackup) {{ # Fall back on existing tab expansion _pip_completeBackup $line $lastWord }} }} )bashzshfish powershellc@s8eZdZdZdZddddZeeee ddd Z dS) CompletionCommandz3A helper command to be used for command completion.TN)returncCst|jjddddddd|jjdd dd dd d|jjd d ddddd|jjddddddd|jd|jdS)Nz--bashz-b store_constrshellzEmit completion code for bash)actionconstdesthelpz--zshz-zrzEmit completion code for zshz--fishz-fr zEmit completion code for fishz --powershellz-pr z#Emit completion code for powershellr)cmd_opts add_optionparserinsert_option_group)selfr/builddir/build/BUILDROOT/alt-python38-pip-22.2.1-2.el8.x86_64/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/commands/completion.py add_optionsLsB zCompletionCommand.add_options)optionsargsr cCszt}ddt|D}|j|krZtt|jdjtd}t t j||jdt St j dd|t SdS) z-Prints the completion code of the given shellcSsg|] }d|qS)z--r).0rrrr ssz)CompletionCommand.run..)prog)scriptrzERROR: You must pass {} z or N)COMPLETION_SCRIPTSkeyssortedrtextwrapdedentgetformatrprintBASE_COMPLETIONrsysstderrwritejoin)rrrZshellsZ shell_optionsr!rrrrunps zCompletionCommand.run) __name__ __module__ __qualname____doc__ignore_require_venvrrrstrintr/rrrrr Gs$r )r+r%optparsertypingrpip._internal.cli.base_commandrpip._internal.cli.status_codesrpip._internal.utils.miscrr*r"r rrrrs        9