U
ÀÒ.e ã @ s˜ d Z ddlZddlZddlmZ ddlmZmZ ddlm Z m
Z
ddlmZ ddl
mZmZ ddlmZ er|dd lmZmZ d
dgZdd
„ Zd
d„ ZdS )z=A single place for constructing and exposing the main parser
é N)Ú
cmdoptions)ÚConfigOptionParserÚUpdatingDefaultsHelpFormatter)Ú
commands_dictÚget_similar_commands)ÚCommandError)Úget_pip_versionÚget_prog)ÚMYPY_CHECK_RUNNING)ÚTupleÚListÚcreate_main_parserÚ
parse_commandc C st ddt ƒ dtƒ dœ} tf | Ž}| ¡ tƒ |_t tj|¡}| |¡ d|_
dgdd„ t ¡ D ƒ }d
|¡|_|S )
z6Creates and returns the main parser for pip's CLI
z
%prog [options]FÚglobal)ZusageZadd_help_optionZ formatterÚnameÚprogTÚ c S s g | ]\}}d ||j f ‘qS )z%-27s %s)Zsummary)Ú.0r Zcommand_info© r úA/usr/lib/python3.8/site-packages/pip/_internal/cli/main_parser.pyÚ
2 s ÿz&create_main_parser..Ú
)r r r Zdisable_interspersed_argsr Úversionr Zmake_option_groupZ
general_groupZadd_option_groupÚmainr ÚitemsÚjoinÚdescription)Z parser_kwÚparserZgen_optsr r r r r
s" û
þc C sÊ t ƒ }| | ¡\}}|jr>tj |j¡ tj tj¡ t ¡ |rZ|d dkrjt |ƒdkrj|
¡ t ¡ |d }|tkr¬t|ƒ}d| g}|rž|
d| ¡ td |¡ƒ‚| d d … }| |¡ ||fS )Nr Úhelpé zunknown command "%s"zmaybe you meant "%s"z - )r
Ú
parse_argsr ÚsysÚstdoutÚwriteÚosÚlinesepÚexitÚlenZ
print_helpr r Úappendr r Úremove)Úargsr Zgeneral_optionsZ args_elseZcmd_nameZguessÚmsgZcmd_argsr r r r ; s&