Your IP : 216.73.216.196


Current Path : /opt/alt/python310/lib64/python3.10/idlelib/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib64/python3.10/idlelib/__pycache__/help.cpython-310.opt-2.pyc

o

0�iO.�@s	ddlmZddlmZmZmZmZddlmZddl	m
Z
mZmZddl
mZmZmZmZddl	mZddlmZGdd	�d	e�ZGd
d�de�ZGdd
�d
e�ZGdd�de
�Zdd�Zdd�Zedkr�ddlmZedddd�ddlm Z e e�dSdS)�)�
HTMLParser)�abspath�dirname�isfile�join)�python_version)�Toplevel�Text�Menu)�Frame�
Menubutton�	Scrollbar�Style��font)�idleConfc@s8eZdZ	dd�Zd
dd�Zdd�Zdd	�Zd
d�ZdS)�
HelpParsercCs`tj|dd�||_d|_d|_d|_d|_d|_d|_d|_	d|_
d|_g|_d|_
d|_dS)NT)Zconvert_charrefs�Fr)r�__init__�text�tags�chartags�show�hdrlink�level�pre�hprefix�	nested_dl�
simplelist�toc�header�prevtag)�selfr�r#�3/opt/alt/python310/lib64/python3.10/idlelib/help.pyr3s
zHelpParser.__init__�cCs8	|j|7_|jdkrd|_dSdt|j�|_dS)Nrr�l)r�strr)r"Zamtr#r#r$�indentCs(zHelpParser.indentcCs	d}|D]
\}}|dkr|}qd}|dkr|dgkrd|_n�|dkr+|dkr+d|_n�|d	krI|jrI|jd
sI|j�dd�}|rF|��sFd
nd}n�|dkrU|dkrUd|_n�|dkra|dkrad|_n�|dkrid|_n�|dvr�|�d�dkrzd}d|_nd|_|��np|dkr�|j	d
kr�d|_
nc|dkr�|jr�dnd}nW|dkr�|j
s�d
nd}d|_
nH|dkr�|��d}n=|dkr�d|_|jr�|j�dd
�d|_
n(|dkr�|dkr�d|_n|d kr�||_
n|d!vr�|jr�d|_|j�dd
�||_
|j�r|j�d||j
|jf�d|f|_dS)"Nr�classZsection)�idZidleTZdivZclearerF�przend-1c linestartzend-1cz

�
�spanrZversionmodified�em)�ul�ol�simple���ZdlZliz
* z

* Zdt�dd�end�preblock�aZ
headerlink�h1)�h2�h3)rr!r�get�isspacer�findrr(rrr�insertrrr )r"�tagZattrsZclass_r6�v�sZlastliner#r#r$�handle_starttagHsn�

�zHelpParser.handle_starttagcCs�	|dvr)|jr%|dkrdn|dkrdnd}|j�||j|j�d�f�d|_n$|dvr1d|_n|d	kr9d
|_n|dkrDd
|_	d|_n	|dvrM|�
d
�d
|f|_dS)N�r7r8r9r9z        r8z    rr=)r-r.r6Fr)r/r3r0r2)rr�appendr r�indexrrrrr(r!)r"r>r(r#r#r$�
handle_endtag�s&�
zHelpParser.handle_endtagcCs�	|jrf|jsh|jr|n|�dd�}|jdkr0z|d|�d��|_Wnty/d|_Ynw|jdvrX|jdkrO|dt|j��|jkrO|t|j�d�}|j	|�
�7_	|j�d||j|j
f�dSdSdS)Nr,� r7rrrBr4)rrr�replacerrDr�
ValueError�lenr �striprr=r)r"�data�dr#r#r$�handle_data�s 

�

�zHelpParser.handle_dataN)r%)�__name__�
__module__�__qualname__rr(rArErMr#r#r#r$r*s
:rc@�eZdZ	dd�Zdd�ZdS)�HelpTextc	
Cs�	tjddddd�}tjddddd�}d|d}tj||d	d
dd
||d�|�gd
��}|�gd��}|df|d<|jd|ddfd�|jd|ddfd�|jd|ddfd�|jd|ddfd�|jd|dfdd�|jd|dfd d!d"d#d$�|jd%d d d&�|jd'd(d(d&�|jd)d*d*d&�|jd+d,d,d&�t|�|_t|d-d.��}|�	�}Wd�n1s�wY|j�
|�d/|d0<dS)1N�mainZEditorWindow�width�int)�type�height��Zwordr�)ZwrapZhighlightthicknessZpadx�borderwidthrTrW)Z
TkDefaultFontZarialZ	helvetica)ZTkFixedFontZmonacoZcourier�rr.Zitalicrr7�Zboldr8�r9�rz#f6f6ff)r�
backgroundr5�
�r%Zsolidz#eeffcc)r�lmargin1r[Zreliefr`�l1)rcZlmargin2�l2�2�l3�K�l4�dzutf-8)�encodingZdisabled�state)rZ	GetOptionr	r�findfontZ
tag_configurer�parser�open�readZfeed)	r"�parent�filenameZuwideZuhighZ
normalfontZ	fixedfont�f�contentsr#r#r$r�s8��

�zHelpText.__init__cCst	|D]4}|��dd�tj|d�D�vr$tj|d|d�}|��dS|��dd�tj|d�D�vr7|SqdS)Ncs��|]}|��VqdS�N��lower��.0�xr#r#r$�	<genexpr>�s�z$HelpText.findfont.<locals>.<genexpr>)�rootT)�name�existsr}Zfamilycsrurvrwryr#r#r$r|�s��)rx�tkfont�namesZFontZactualZfamilies)r"r�r~rr#r#r$rm�s
���zHelpText.findfontN)rNrOrPrrmr#r#r#r$rR�srRc@rQ)�	HelpFramecCs�t�||�t||�|_}t|�|_d|d<|jjd|dd�|�|�|_}t	||j
d�|_}|j|d<|j
ddd	�|jddd	�|jddd
d�|jdddd�|jdd
dd�dS)Nzhelpframe.TFrame�styler`)r`)�commandZyscrollcommandrr%�ZweightZnw)�row�column�sticky�nsew��ns)rrrRrrr�Z	configure�toc_menurr
�yview�scroll�setZrowconfigureZcolumnconfigure�grid)r"rqrrrrr�r#r#r$r�s

zHelpFrame.__init__csR	t|dd�}t|dd�}�jjD]\}}|j||f�fdd�	d�q||d<|S)	NZTOC�rF)Ztearoffcs
��|�Srv)r�)�dexr�r#r$�<lambda>�s
z$HelpFrame.toc_menu.<locals>.<lambda>)Zlabelr�Zmenu)rr
rnrZadd_command)r"rrZdropZlblr�r#r�r$r��szHelpFrame.toc_menuN)rNrOrPrr�r#r#r#r$r��sr�c@seZdZ	dd�ZdS)�
HelpWindowcCsZt�||�|�|�|�d|j�t||�jdddd�|jddd�|jddd�dS)NZWM_DELETE_WINDOWrr�)r�r�r�r%r�)	rrZwm_titleZprotocolZdestroyr�r�Zgrid_columnconfigureZgrid_rowconfigure)r"rqrr�titler#r#r$r�s
zHelpWindow.__init__N)rNrOrPrr#r#r#r$r��sr�c	Cs�	tttttt����ddddd�}tttt��d�}t|d��+}t|d��}|D]}|�|��d	�q)Wd�n1s?wYWd�n1sNwYt|�d
|���dS)NZDocZbuildZhtmlZlibraryz	idle.html�	help.html�rb�wb�
z copied to )rrr�__file__ro�write�rstrip�print)�srcZdstZinn�out�liner#r#r$�
copy_strip�s 
�����r�cCs6	tttt��d�}t|�sdSt||dt��dS)Nr�zIDLE Help (%s))rrrr�rr�r)rqrrr#r#r$�
show_idlehelps
r��__main__)rSzidlelib.idle_test.test_helpr�F)�	verbosity�exit)�runN)!Zhtml.parserrZos.pathrrrr�platformrZtkinterrr	r
Ztkinter.ttkrrr
rrr�Zidlelib.configrrrRr�r�r�r�rNZunittestrSZidlelib.idle_test.htestr�r#r#r#r$�<module>s(~* �