a
lj6
@ s d Z ddlZddlZddlmZmZ ddlmZ ddlm Z m
Z
ddlmZm
Z
ddlmZ ddlmZmZ d d
gZe ddd Zee eeee f d
dd
ZdS )z=A single place for constructing and exposing the main parser
N)ListTuple)
cmdoptions)ConfigOptionParserUpdatingDefaultsHelpFormatter)
commands_dictget_similar_commands)CommandError)get_pip_versionget_progcreate_main_parser
parse_command)returnc C sl t ddt dt d} | t | _ttj| }| | d| _
dgdd t D }d
|| _| S )
z1Creates and returns the main parser for pip's CLIz
%prog [options]Fglobal)usageZadd_help_option formatternameprogT c S s" g | ]\}}|d d|j qS )Z27 )Zsummary).0r Zcommand_info r A/usr/lib/python3.9/site-packages/pip/_internal/cli/main_parser.py
' s z&create_main_parser..
)r r r Zdisable_interspersed_argsr
versionr Zmake_option_groupZ
general_groupZadd_option_groupmainr itemsjoindescription)parserZgen_optsr r r r r s"
)argsr c C s t }|| \}}|jr>tj|j tjtj t |rZ|d dkrjt |dkrj|
t |d }|tvrt|}d| dg}|r|
d| d td|| d d }|| ||fS )Nr help zunknown command ""zmaybe you meant "z - )r
parse_argsr sysstdoutwriteoslinesepexitlen
print_helpr r appendr r remove)r! r Zgeneral_optionsZ args_elseZcmd_nameZguessmsgZcmd_argsr r r r
0 s&