U ��.e� �@sXddlmZddlZddlZddlmZddlmZdZdddd �Z Gd d �d e�Z dS) �)�absolute_importN)�Command)�get_progzJ # pip %(shell)s completion start%(script)s# pip %(shell)s 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)s 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)s aw 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)s )�bash�zsh�fishcs,eZdZdZdZ�fdd�Zdd�Z�ZS)�CompletionCommandz3A helper command to be used for command completion.Tcsltt|�j||�|j}|jddddddd�|jdd dd dd d�|jd d ddddd�|j�d|�dS)Nz--bashz-b� store_constr�shellzEmit completion code for bash)�action�const�dest�helpz--zshz-zrzEmit completion code for zshz--fishz-frzEmit completion code for fishr)�superr�__init__�cmd_optsZ add_option�parserZinsert_option_group)�self�args�kwr�� __class__��E/usr/lib/python3.8/site-packages/pip/_internal/commands/completion.pyr8s6���zCompletionCommand.__init__cCsrt��}dd�t|�D�}|j|krXt�t�|jd�dt�i�}tt ||jd��nt j � dd� |��dS) z-Prints the completion code of the given shellcSsg|] }d|�qS)z--r)�.0r rrr� Usz)CompletionCommand.run..��prog)�scriptr zERROR: You must pass %s z or N)�COMPLETION_SCRIPTS�keys�sortedr �textwrap�dedent�getr�print�BASE_COMPLETION�sys�stderr�write�join)rZoptionsrZshellsZ shell_optionsrrrr�runRs  �� �zCompletionCommand.run)�__name__� __module__� __qualname__�__doc__Zignore_require_venvrr+� __classcell__rrrrr3s r) Z __future__rr'r"Zpip._internal.cli.base_commandrZpip._internal.utils.miscrr&rrrrrr�s     �#