a *egh\@sLdZddlZddlZddlZddlZddlmZddlmZm Z ddl m Z m Z m Z mZmZmZmZddlmZmZmZmZmZmZddlmZddlmZmZdd lmZm Z m!Z!m"Z"m#Z#dd l$m%Z%dd l&m'Z'm(Z(dd l)m*Z*m+Z+dd l,m-Z-m.Z.ddZ/ddZ0ddZ1ddZ2ddZ3ddZ4Gdddej5Z5ej6fddZ7dS)z pygments.cmdline ~~~~~~~~~~~~~~~~ Command line interface. :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. N)dedent) __version__ highlight) ClassNotFound OptionErrordocstring_headline guess_decodeguess_decode_from_terminalterminal_encodingUnclosingTextIOWrapper)get_all_lexersget_lexer_by_name guess_lexerload_lexer_from_fileget_lexer_for_filenamefind_lexer_class_for_filename) TextLexer)LatexEmbeddedLexerLatexFormatter)get_all_formattersget_formatter_by_nameload_formatter_from_fileget_formatter_for_filenamefind_formatter_class)TerminalFormatter)Terminal256FormatterTerminalTrueColorFormatter)get_all_filtersfind_filter_class)get_all_stylesget_style_by_namec Csi}|s |S|D]r}|sq|d}|D]T}|}z$|dd\}}|}|}Wntyvd||<Yq,0|||<q,q|S)N,=T)stripsplit ValueError)Zo_strsoptsZo_strZo_argsZo_argZo_keyZo_valr(F/usr/local/lib/python3.9/site-packages/pip/_vendor/pygments/cmdline.py_parse_options!s"    r*cCsVg}|s |S|D]@}d|vrB|dd\}}||t|gfq||ifq|S)N:r#)r%appendr*)Zf_strsfiltersZf_strfnamefoptsr(r(r)_parse_filters6sr0c Csz|dkr4t|}td|jdtt|jn`|dkrft|}td|jdtt|jn.|dkrt|}td|dtt|jWdSttfyt|d t j d Yd S0dS) Nlexerz Help on the z lexer: formatterz formatter:filterz filter:rz not found!filer#) r printnamer__doc__rrAttributeErrorr&sysstderr)whatr7clsr(r(r) _print_helpCs"r>c Cs|dkrttdtdg}tD]@\}}}}d|d||rXdd|dpZdf}||q(||D]}td j|qvnH|d kr$ttd td g}tD]F}t|} d|jd| |j rdd|j dpdf}||q||D]}td j|q n|d kr~ttdtdt D]0} t | }td| dtdt|qJnX|dkrttdtdt D]0} t | }td| dtdt|qdS)Nr1zLexers:z~~~~~~~z, r+z (filenames )z* {} {} {}r2z Formatters:z ~~~~~~~~~~~r3zFilters:z~~~~~~~~z* z stylezStyles:)r6r joinr,sortformatrraliases filenamesrrrr ) r<infofullnamenamesexts_tupir=docr7r(r(r) _print_listWsZ        rOc Csddl}i}d|vrDi}tD]\}}}}|||d||<q||d<d|vri}tD]"}t|} |j|j| d||j<qV||d<d|vri}tD]} t| }d t|i|| <q||d <d |vri}t D]} t | }d t|i|| <q||d <| |t j dS) Nrr1)rErF mimetypesZlexersr2)rErFrN formattersr3rNr-rAZstyles)jsonr rrrErFr7rrrr dumpr:stdout) Zrequested_itemsrRresultrGrHrIrFrPr=rNr7r(r(r)_print_list_as_jsonsD      rVc& s jr|dSjr,tdtddSfdd}jdurt}tD]\}}|rV| |qV| d| d|r|t j dSj std d ghd d d jD}tfdd|Dr|t j dS|s}j s |D] }t|qnt|dSjrf|ds8|t j dSj\}} |dvr\|t j dSt|| Stjprg} jpgD]@} z| dd\} } Wntyd| | <Yn 0| | | <q| d| d} | d| d}jrtj}|durt}t|jddSjrjt jj !}zt"|| d}Wnt#yVt}Yn0t|jddSj$}j%}|dur(j&}|s|t j dSj'sj(r|t j dSz|| d<t)|fi| }Wn6t#y}zt|t j dWYd}~dSd}~00t|*|pd dSj%durD|t j dSt+j,pPg}t-j.}d}j'}|rp|rd|vrzdd}d} d|vr|/dd\}} d| vrd} |r| rt0|| fi| }nt0|fi| }Wn8t#y}ztd|t j dWYd}~dSd}~00nRzt1|fi| }Wn<t2t#fyn}ztd|t j dWYd}~dSd}~00d}j(rj3rtdt j ddSj(}z8t4|d}|!}Wdn1s0YWn8t5y }ztd |t j dWYd}~dSd}~00| s t6|\}} |s~zt7||fi| }Wnt#y}zlj8rzt"|fi| }Wn"t#ytfi| }Yn0ntd|t j dWYd}~dSWYd}~n@d}~0t2y}ztd|t j dWYd}~dSd}~00nj3sft jj !}| s&t9|t j\}} |s~zt"|fi| }Wn"t#ybtfi| }Yn0n|s~td!t j ddS|D]\\}}z|j:|fi|Wn:t#y}z td|t j dWYd}~dSd}~00qj;}j&}|r|rd|vrzdd}d} d|vr4|/dd\}} d| vr4d} |rT| rTt<|| fi| }nt<|fi| }Wn8t#y}ztd|t j dWYd}~dSd}~00nRzt)|fi| }Wn<t2t#fy}ztd|t j dWYd}~dSd}~00|r|sRzt=|fi| }Wn<t2t#fyP}ztd|t j dWYd}~dSd}~00zt4|d"} Wn8t5y}ztd#|t j dWYd}~dSd}~00nd|st>j?d$d d%vrt@fi| }n2d&t>j?d'd vrtAfi| }ntBfi| }t jCj } | s | r| |_Dn tEt jC|_D| st jFd(v r|jGd)v rtH| |jDd*} d|_Dz ddlI}!WntJ yrYn0|!jKjL| ddd+dd,} | d-d }"tM|"dk rtN|tO r|"d}#|"d}$tP|#|$|}j3 s z tQ|||| W| r| Rn| r| R0dSzzht jj S}%|% s$ q`| s:t9|%t jd}%tQ|%||| tT| d. r| U qWW| rr| RdStV yYW| r| RdS0W| r| Rn| r| R0dS)/NrzPygments version uD, (c) 2006-2024 by Georg Brandl, Matthäus Chajdas and contributors.cs tfddtD S)Nc3s|]\}}|kr|VqdSNr().0kvoptr(r) z5main_inner..is_only_option..)anyvarsitemsr[)argnsr[r)is_only_optionsz"main_inner..is_only_optionLrRr@-V>r3rAr2r1cSsg|]}|dqS)s)rstriprXargr(r(r) r^zmain_inner..c3s|]}|vVqdSrWr(ri) allowed_typesr(r)r]r^zmain_inner..H)r1r2r3r"r#T inencodingencoding outencoding)rnrAr4z.pyr+zError:z5Error: -s option not usable when input file specifiedrbzError: cannot read infile:z7Error: when using -s a lexer has to be selected with -lwbzError: cannot open outfile:Z COLORTERM)Z truecolorZ24bitZ256TERM)win32cygwin)ZTerminalZ Terminal256)roF)convertr$ autoresetwrap escapeinsideflush)Whelp print_helpVr6rrdsetr`raadddiscardr:r;rRmainr_rOrVrmr>r*OPr%r&getNrrrECstdinbufferreadrrSafl INPUTFILErZget_style_defsr0Fboolxrsplitrr rrgopen Exceptionrrgr Z add_filterorrosenvironrrrrTror platformr7r Zcolorama.initialise ImportError initialise wrap_streamlen isinstancerrrclosereadlinehasattrrzKeyboardInterrupt)&parserrbrcZarg_setrYrZlargsrjr<r7Z parsed_optsZp_optvaluernrpr1inpZS_optZa_optZf_optZfmtererrZF_optsZallow_custom_lexer_formatterZ lexernamefilenamecodeZinfninfpr.r/Zoutfnoutfilecoloramaryleftrightliner()rlrbr) main_inners                               , "                 rc@seZdZdddZdS) HelpFormatterreNcCsF|dur.ztjd}Wnty,Yn0tj|||||dS)Nre)shutilget_terminal_sizecolumnsrargparser__init__)selfprogindent_incrementmax_help_positionwidthr(r(r)rs  zHelpFormatter.__init__)rerN)__name__ __module__ __qualname__rr(r(r(r)rsrc Csd}tj|dtd}|d}|}|jdddd|jd d d d |jd dddd|jdddd|jddddd|jddddd|jdddd|jddd d!|d"}|jd#d d$d |jd%d d&d |jd'd d(d |jd)d*dd d+|d,}|}|jd-d.d/d|jd0d1d2d3d4|jd5d6d7d|jd8d d9d |jd:d;dd?|jd@d dAd |jdBdCd dDd |jdEdFdGd||dHdI}z t||WStyYdJSt y|j r of type , where is one of "lexer", "formatter" or "filter".)rrrr{rfzPrint the package version.z-hz--helpzPrint this help.z-aZARGzKFormatter-specific additional argument for the -S (print style sheet) mode.r#Nrr4zA*****************************************************************z3An unhandled exception occurred while highlighting.z9Please report the whole traceback to the issue tracker atz..z (f{}) z*** Error while highlighting:z>*** If this is a bug you want to report, please rerun with -v.)rArgumentParserradd_argument_groupadd_mutually_exclusive_group add_argument parse_argsrBrokenPipeErrorrrZr6r:r; tracebackformat_exceptionexc_infor$rrDr%) argsdescrZ operationZlexerselflagsZspecial_modes_groupZ special_modesrbrrGmsgr(r(r)rs       ( r)8r8rr:rrtextwraprZpip._vendor.pygmentsrrZpip._vendor.pygments.utilrrrrr r r Zpip._vendor.pygments.lexersr r rrrrZ#pip._vendor.pygments.lexers.specialrZ%pip._vendor.pygments.formatters.latexrrZpip._vendor.pygments.formattersrrrrrZ(pip._vendor.pygments.formatters.terminalrZ+pip._vendor.pygments.formatters.terminal256rrZpip._vendor.pygments.filtersrrZpip._vendor.pygments.stylesrr r*r0r>rOrVrrargvrr(r(r(r)s2  $    3,Q