grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026a ´i :ã@s<ddlZddlZdgZdZejejdZGdd„dƒZdS)éNÚCmdz(Cmd) Ú_c@sÎeZdZeZeZdZdZdZ dZ dZ dZ dZ dZdZd/d d „Zd0d d „Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zd d!„Zd"d#„Zd$d%„Zd&d'„Zd(d)„Zd*d+„Z d1d-d.„Z!dS)2rú=ÚNz(Documented commands (type help ):zMiscellaneous help topics:zUndocumented commands:z*** No help on %séÚtabcCs@|dur||_ntj|_|dur(||_ntj|_g|_||_dS©N)ÚstdinÚsysÚstdoutÚcmdqueueÚ completekey)Úselfr r r ©rú/usr/lib64/python3.9/cmd.pyÚ__init__Ls z Cmd.__init__cCsÀ| ¡|jrZ|jrZz2ddl}| ¡|_| |j¡| |jd¡Wnt yXYn0�z|durl||_ |j rˆ|j   t |j ƒd¡d}|�s2|jr¦|j d¡}nj|jrÔzt|jƒ}WntyÐd}Yn0n<|j   |j¡|j  ¡|j ¡}t|ƒ�sd}n | d¡}| |¡}| |¡}| ||¡}qŒ| ¡W|j�r¼|j�r¼zddl}| |j¡Wnt �yxYn0n@|j�rº|j�rºzddl}| |j¡Wnt �y¸Yn00dS)Nrz : completeÚ ÚEOFz )ÚpreloopÚ use_rawinputr ÚreadlineZ get_completerZ old_completerZ set_completerÚcompleteÚparse_and_bindÚ ImportErrorÚintror ÚwriteÚstrr ÚpopÚinputÚpromptÚEOFErrorÚflushr ÚlenÚrstripÚprecmdÚonecmdÚpostcmdÚpostloop)rrrÚstopÚlinerrrÚcmdloopbsZ             ûz Cmd.cmdloopcCs|Srr©rr)rrrr$–sz Cmd.precmdcCs|Srr)rr(r)rrrr&�sz Cmd.postcmdcCsdSrr©rrrrr¡sz Cmd.preloopcCsdSrrr,rrrr'¥sz Cmd.postloopcCs¼| ¡}|sdd|fS|ddkr4d|dd…}n2|ddkrft|dƒr\d|dd…}n dd|fSdt|ƒ}}||kr”|||jvr”|d}qt|d|…||d… ¡}}|||fS)Nrú?zhelp rú!Zdo_shellzshell )ÚstripÚhasattrr"Ú identchars)rr)ÚiÚnÚcmdÚargrrrÚ parseline¬s      z Cmd.parselinecCs�| |¡\}}}|s| ¡S|dur.| |¡S||_|dkrBd|_|dkrT| |¡Szt|d|ƒ}Wnty‚| |¡YS0||ƒSdS)NrrÚdo_)r6Ú emptylineÚdefaultÚlastcmdÚgetattrÚAttributeError)rr)r4r5Úfuncrrrr%Às    z Cmd.onecmdcCs|jr| |j¡SdSr)r:r%r,rrrr8Ûsz Cmd.emptylinecCs|j d|¡dS)Nz*** Unknown syntax: %s )r rr+rrrr9åsz Cmd.defaultcGsgSrr)rÚignoredrrrÚcompletedefaultîszCmd.completedefaultcsd|‰‡fdd„| ¡DƒS)Nr7cs"g|]}| ˆ¡r|dd…‘qS)éN©Ú startswith©Ú.0Úa©ZdotextrrÚ ùóz%Cmd.completenames..)Ú get_names)rÚtextr>rrFrÚ completenames÷szCmd.completenamesc CsÚ|dkr´ddl}| ¡}| ¡}t|ƒt|ƒ}| ¡|}| ¡|}|dkrž| |¡\} } } | dkrp|j} q¤zt|d| ƒ} Wq¤t yš|j} Yq¤0n|j } | ||||ƒ|_ z |j |WSt yÔYdS0dS)NrrZ complete_) rZget_line_bufferÚlstripr"Z get_begidxZ get_endidxr6r?r;r<rKZcompletion_matchesÚ IndexError) rrJÚstaterZorigliner)ÚstrippedZbegidxZendidxr4ÚargsZfooZcompfuncrrrrûs*     z Cmd.completecCs t|jƒSr)ÚdirÚ __class__r,rrrrIsz Cmd.get_namescs4t|jˆŽƒ}t‡fdd„| ¡Dƒƒ}t||BƒS)Nc3s,|]$}| dˆd¡r|dd…VqdS)Úhelp_réNrArC©rPrrÚ sÿz$Cmd.complete_help..)ÚsetrKrIÚlist)rrPÚcommandsZtopicsrrUrÚ complete_helpszCmd.complete_helpc Cs²|ršzt|d|ƒ}WnxtyŽz4t|d|ƒj}|rV|j dt|ƒ¡WYdSWntyjYn0|j dt|j|fƒ¡YdS0|ƒ�n| ¡}g}g}i}|D]$}|dd…dkr²d||dd…<q²| ¡d} |D]p}|dd…dkrè|| k�rqè|} |dd…} | |v�r4|  | ¡|| =qèt||ƒj�rN|  | ¡qè|  | ¡qè|j dt|j ƒ¡|  |j |dd ¡|  |j t| ¡ƒdd ¡|  |j|dd ¡dS) NrSr7ú%s rTrrr@ééP)r;r<Ú__doc__r rrÚnohelprIÚsortÚappendÚ doc_leaderÚ print_topicsÚ doc_headerÚ misc_headerrXÚkeysÚ undoc_header) rr5r=ÚdocÚnamesZcmds_docZ cmds_undocÚhelpÚnameZprevnamer4rrrÚdo_help$sN          z Cmd.do_helpcCs\|rX|j dt|ƒ¡|jr<|j dt|jt|ƒƒ¡| ||d¡|j d¡dS)Nr[rr)r rrÚrulerr"Ú columnize)rÚheaderZcmdsZcmdlenZmaxcolrrrrcRs zCmd.print_topicsr]csèˆs|j d¡dS‡fdd„ttˆƒƒDƒ}|rJtdd tt|ƒ¡ƒ‚tˆƒ}|dkrv|j dtˆdƒ¡dStdtˆƒƒD]œ}||d|}g}d }t|ƒD]h} d} t|ƒD]2} | || } | |krÔqìˆ| } t| t| ƒƒ} q¸|  | ¡|| d 7}||kr¨�qq¨||kr„�q4q„tˆƒ}d}dg}t|ƒD]¦} g}t|ƒD]4} | || } | |k�rld } nˆ| } |  | ¡�qL|�rœ|d �sœ|d =�q‚tt|ƒƒD]} ||   || ¡|| <�q¨|j dtd  |¡ƒ¡�q csg|]}tˆ|tƒs|‘qSr)Ú isinstancer)rDr2©rXrrrGdsÿz!Cmd.columnize..z list[i] not a string for i in %sz, rr[réþÿÿÿéréÿÿÿÿz ) r rÚranger"Ú TypeErrorÚjoinÚmaprÚmaxraÚljust)rrXZ displaywidthZ nonstringsÚsizeZnrowsZncolsZ colwidthsZtotwidthÚcolZcolwidthÚrowr2ÚxZtextsrrqrrnZs\ ÿ          z Cmd.columnize)rNN)N)r])"Ú__name__Ú __module__Ú __qualname__ÚPROMPTrÚ IDENTCHARSr1rmr:rrbrdrergr_rrr*r$r&rr'r6r%r8r9r?rKrrIrZrlrcrnrrrrr4s:   4   .)Ústringr Ú__all__r‚Ú ascii_lettersÚdigitsrƒrrrrrÚ-s