
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
U
    ¡ê,a:  ã                   @   s<   d dl Z d dlZdgZdZe je j d ZG dd„ dƒZdS )é    NÚCmdz(Cmd) Ú_c                   @   sÎ   e Zd ZeZeZdZdZdZ	dZ
dZdZdZdZdZd/d
d„Zd0dd„Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zd d!„ Zd"d#„ Zd$d%„ Zd&d'„ Zd(d)„ Zd*d+„ Z d1d-d.„Z!dS )2r   ú=Ú Nz(Documented commands (type help <topic>):zMiscellaneous help topics:zUndocumented commands:z*** No help on %sé   Útabc                 C   s@   |d k	r|| _ ntj | _ |d k	r(|| _ntj| _g | _|| _d S ©N)ÚstdinÚsysÚstdoutÚcmdqueueÚcompletekey)Úselfr   r	   r   © r   ú(/opt/alt/python38/lib64/python3.8/cmd.pyÚ__init__L   s    zCmd.__init__c                 C   s†  |   ¡  | jr\| jr\z2dd l}| ¡ | _| | j¡ | | jd ¡ W n t	k
rZ   Y nX zâ|d k	rl|| _
| j
rˆ| j t| j
ƒd ¡ d }|�s4| jr¦| j d¡}nl| jrÖzt| jƒ}W n tk
rÒ   d}Y nX n<| j | j¡ | j ¡  | j ¡ }t|ƒ�sd}n
| d¡}|  |¡}|  |¡}|  ||¡}qŒ|  ¡  W 5 | j�r€| j�r€zdd l}| | j¡ W n t	k
�r~   Y nX X d S )Nr   z
: 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)r   r   r   ÚstopÚliner   r   r   Úcmdloopb   sN    






zCmd.cmdloopc                 C   s   |S r   r   ©r   r)   r   r   r   r$   –   s    z
Cmd.precmdc                 C   s   |S r   r   )r   r(   r)   r   r   r   r&   �   s    zCmd.postcmdc                 C   s   d S r   r   ©r   r   r   r   r   ¡   s    zCmd.preloopc                 C   s   d S r   r   r,   r   r   r   r'   ¥   s    zCmd.postloopc                 C   s¼   |  ¡ }|sd d |fS |d dkr4d|dd …  }n2|d dkrft| dƒr\d|dd …  }n
d d |fS dt|ƒ }}||k r”|| | jkr”|d }qt|d |… ||d …   ¡  }}|||fS )Nr   ú?zhelp r   ú!Zdo_shellzshell )ÚstripÚhasattrr"   Ú
identchars)r   r)   ÚiÚnÚcmdÚargr   r   r   Ú	parseline¬   s    


 
zCmd.parselinec                 C   s’   |   |¡\}}}|s|  ¡ S |d kr.|  |¡S || _|dkrBd| _|dkrT|  |¡S zt| d| ƒ}W n tk
r„   |  |¡ Y S X ||ƒS d S )Nr   r   Údo_)r6   Ú	emptylineÚdefaultÚlastcmdÚgetattrÚAttributeError)r   r)   r4   r5   Úfuncr   r   r   r%   À   s    


z
Cmd.onecmdc                 C   s   | j r|  | j ¡S d S r   )r:   r%   r,   r   r   r   r8   Û   s    zCmd.emptylinec                 C   s   | j  d| ¡ d S )Nz*** Unknown syntax: %s
)r   r   r+   r   r   r   r9   å   s    zCmd.defaultc                 G   s   g S r   r   )r   Úignoredr   r   r   Úcompletedefaultî   s    zCmd.completedefaultc                    s   d| ‰ ‡ fdd„|   ¡ D ƒS )Nr7   c                    s"   g | ]}|  ˆ ¡r|d d… ‘qS )é   N©Ú
startswith©Ú.0Úa©Zdotextr   r   Ú
<listcomp>ù   s     
 z%Cmd.completenames.<locals>.<listcomp>)Ú	get_names)r   Útextr>   r   rF   r   Úcompletenames÷   s    zCmd.completenamesc                 C   sÞ   |dkr¶dd l }| ¡ }| ¡ }t|ƒt|ƒ }| ¡ | }| ¡ | }|dkr |  |¡\}	}
}|	dkrp| j}q¦zt| d|	 ƒ}W q¦ t	k
rœ   | j}Y q¦X n| j
}|||||ƒ| _z| j| W S  tk
rØ   Y d S X d S )Nr   r   Z	complete_)r   Zget_line_bufferÚlstripr"   Z
get_begidxZ
get_endidxr6   r?   r;   r<   rJ   Zcompletion_matchesÚ
IndexError)r   rI   Ústater   Zorigliner)   ÚstrippedZbegidxZendidxr4   ÚargsZfooZcompfuncr   r   r   r   û   s*    zCmd.completec                 C   s
   t | jƒS r   )ÚdirÚ	__class__r,   r   r   r   rH     s    zCmd.get_namesc                    s4   t | jˆ Ž ƒ}t ‡ fdd„|  ¡ D ƒƒ}t||B ƒS )Nc                 3   s,   | ]$}|  d ˆ d  ¡r|dd… V  qdS )Úhelp_r   é   NrA   rC   ©rO   r   r   Ú	<genexpr>   s    ÿz$Cmd.complete_help.<locals>.<genexpr>)ÚsetrJ   rH   Úlist)r   rO   ZcommandsZtopicsr   rT   r   Úcomplete_help  s    zCmd.complete_helpc                 C   s¶  |ržzt | d| ƒ}W n| tk
r’   z4t | d| ƒj}|rX| j dt|ƒ ¡ W Y d S W n tk
rn   Y nX | j dt| j|f ƒ ¡ Y d S X |ƒ  �n|  ¡ }g }g }i }|D ]$}|d d… dkr¶d||dd … < q¶| ¡  d}	|D ]p}|d d… dkrì||	k�rqì|}	|dd … }
|
|k�r8| 	|
¡ ||
= qìt | |ƒj�rR| 	|
¡ qì| 	|
¡ qì| j dt| j
ƒ ¡ |  | j|dd	¡ |  | jt| ¡ ƒdd	¡ |  | j|dd	¡ d S )
NrR   r7   ú%s
rS   r   r   r@   é   éP   )r;   r<   Ú__doc__r   r   r   ÚnohelprH   ÚsortÚappendÚ
doc_leaderÚprint_topicsÚ
doc_headerÚmisc_headerrW   ÚkeysÚundoc_header)r   r5   r=   ÚdocÚnamesZcmds_docZ
cmds_undocÚhelpÚnameZprevnamer4   r   r   r   Údo_help$  sN    



zCmd.do_helpc                 C   s\   |rX| j  dt|ƒ ¡ | jr<| j  dt| jt|ƒ ƒ ¡ |  ||d ¡ | j  d¡ d S )NrY   r   r   )r   r   r   Úrulerr"   Ú	columnize)r   ÚheaderZcmdsZcmdlenZmaxcolr   r   r   ra   R  s    zCmd.print_topicsr[   c                    sè  ˆ s| j  d¡ d S ‡ fdd„ttˆ ƒƒD ƒ}|rJtdd tt|ƒ¡ ƒ‚tˆ ƒ}|dkrv| j  dtˆ d ƒ ¡ d S tdtˆ ƒƒD ]œ}|| d | }g }d	}t|ƒD ]h}	d}
t|ƒD ]2}|||	  }||krÔ qìˆ | }t|
t|ƒƒ}
q¸| 	|
¡ ||
d
 7 }||kr¨ �qq¨||kr„ �q4q„tˆ ƒ}d}dg}t|ƒD ]¦}g }t|ƒD ]4}	|||	  }||k�rld}nˆ | }| 	|¡ �qL|�rœ|d �sœ|d= �q‚tt|ƒƒD ]}	||	  
||	 ¡||	< �q¨| j  dtd |¡ƒ ¡ �q<d S )Nz<empty>
c                    s   g | ]}t ˆ | tƒs|‘qS r   )Ú
isinstancer   )rD   r2   ©rW   r   r   rG   d  s    ÿz!Cmd.columnize.<locals>.<listcomp>z list[i] not a string for i in %sz, r   rY   r   éþÿÿÿé   r   éÿÿÿÿz  )r   r   Úranger"   Ú	TypeErrorÚjoinÚmapr   Úmaxr_   Úljust)r   rW   ZdisplaywidthZ
nonstringsÚsizeZnrowsZncolsZ	colwidthsZtotwidthÚcolZcolwidthÚrowr2   ÚxZtextsr   ro   r   rl   Z  s\    ÿ


zCmd.columnize)r   NN)N)r[   )"Ú__name__Ú
__module__Ú__qualname__ÚPROMPTr   Ú
IDENTCHARSr1   rk   r:   r   r`   rb   rc   re   r]   r   r   r*   r$   r&   r   r'   r6   r%   r8   r9   r?   rJ   r   rH   rX   rj   ra   rl   r   r   r   r   r   4   s:   

4
		.)Ústringr
   Ú__all__r€   Zascii_lettersZdigitsr�   r   r   r   r   r   Ú<module>-   s   