<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
2a=,                 @   s   d dl mZ d dlmZmZmZmZ d dlmZ d dl	m
Z
mZmZmZ d dlmZmZ d dl	mZ d dlmZ G dd	 d	eZG d
d deZG dd deZG dd de
Zdd Zdd Zedkrd dlmZ edddd d dlmZ ee dS )    )
HTMLParser)abspathdirnameisfilejoin)python_version)ToplevelFrameTextMenu)
Menubutton	Scrollbar)font)idleConfc               @   s6   e Zd Zdd ZdddZdd Zdd	 Zd
d ZdS )
HelpParserc             C   sZ   t j| dd || _d| _d| _d| _d| _d| _d| _d| _	d| _
d| _g | _d| _d S )NT)Zconvert_charrefs Fr   )r   __init__texttagschartagsshowhdrlinklevelprehprefix	nested_dl
simplelisttocheader)selfr    r    )/opt/alt/python36/lib64/python3.6/help.pyr   3   s    zHelpParser.__init__   c             C   s0   |  j |7  _ | j dkrdndt| j  | _d S )Nr   r   l)r   strr   )r   amtr    r    r!   indentB   s    zHelpParser.indentc             C   s  d}x|D ]\}}|dkr
|}q
W d}|dkr@|dkr@d| _ n|dkrZ|dkrZd| _ n|dkrr|d	krrd
}nv|dkr|dkrd| _n\|dkr|dkrd| _nB|dkrd| _n0|d"kr|jdd#krd}d| _nd| _| j   n|dkr
| jdkrd| _n|dkr&| jr dnd}n|dkrH| js<d
nd}d| _n|dkr`| j  d}n|dkrd| _| j r| jj	dd
 d| _
nZ|dkr|dkrd| _n>|dkr|| _
n,|d$kr| j rd| _| jj	dd
 || _
| j r| jj	d|| j
| jf d S )%Nr   classZdivsectionTZsphinxsidebarFpfirstz

spanr   ZversionmodifiedemulolZsimpler"   
Zdlr   Zliz
* z

* ZdtddendpreblockaZ
headerlinkh1h2h3)r-   r.   )r5   r6   )r   r   findr   r&   r   r   r   r   insertr   r   r   )r   tagZattrsclass_r3   vsr    r    r!   handle_starttagF   sd    











zHelpParser.handle_starttagc             C   s   |dkrT| j d | jr|dkr$dn|dkr0dnd}| jj|| j | jjdf nJ|dkrdd| _n:|dkrtd| _n*|dkrd| _	d| _
n|dkr| j dd d S )Nr4   r5   r6   r   z        z    r   r9   r+   r,   r3   Fr   r-   r0   r.   r"   )r%   )r4   r5   r6   )r+   r,   )r-   r0   r.   r7   )r&   r   r   appendr   r   indexr   r   r   r   )r   r:   r&   r    r    r!   handle_endtag|   s     
 zHelpParser.handle_endtagc             C   s   | j r| j r| jr|n
|jdd}| jdkrby|d|jd | _W n tk
r`   d| _Y nX | jd	kr| jdkr|dt| j | jkr|t| jd  }|  j	|j
 7  _	| jjd|| j| jf d S )
Nr/    r4   r   r   r5   r6   r1   )r4   r5   r6   )r   r   r   replacer   r@   r   
ValueErrorlenr   stripr   r9   r   )r   datadr    r    r!   handle_data   s    


zHelpParser.handle_dataN)r"   )__name__
__module____qualname__r   r&   r>   rA   rI   r    r    r    r!   r   *   s
   	
6r   c               @   s   e Zd Zdd Zdd ZdS )HelpTextc       	   
   C   sv  t jddddd}t jddddd}d| d }tj| |d	d
dd
||d | jdddg}| jdddg}|df| d< | jd|ddfd | jd|ddfd | jd|ddfd | jd|ddfd | jd|dfd d! | jd"|d#fd$d%d&d'd( | jd)d$d$d* | jd+d,d,d* | jd-d.d.d* | jd/d0d0d* t| | _t|d1d2}|j	 }W d Q R X | jj
| d3| d4< d S )5NmainZEditorWindowwidthint)typeheight      Zwordr      )wrapZhighlightthicknessZpadxborderwidthrO   rR   ZTkDefaultFontZarialZ	helveticaZTkFixedFontZmonacoZcourier   r   r,   Zitalic)r   r4      Zboldr5      r6      r   z#f6f6ff)r   
backgroundr2   
      r"   Zsolidz#eeffcc)r   lmargin1rW   Zreliefr\   l1)r_   Zlmargin2l22   l3K   l4d   zutf-8)encodingZdisabledstate)r   Z	GetOptionr
   r   findfontZtag_configurer   parseropenreadZfeed)	r   parentfilenameZuwideZuhighZ
normalfontZ	fixedfontfcontentsr    r    r!   r      s0    
zHelpText.__init__c             C   sn   xh|D ]`}|j  dd tj| dD krDtj|d| d}|j d S |j  dd tj| dD kr|S qW d S )Nc             s   s   | ]}|j  V  qd S )N)lower).0xr    r    r!   	<genexpr>   s    z$HelpText.findfont.<locals>.<genexpr>)rootT)nameexistsru   Zfamilyc             s   s   | ]}|j  V  qd S )N)rq   )rr   rs   r    r    r!   rt      s   )rq   tkfontnamesZFontactualZfamilies)r   ry   rv   r   r    r    r!   ri      s    
zHelpText.findfontN)rJ   rK   rL   r   ri   r    r    r    r!   rM      s   rM   c               @   s   e Zd Zdd Zdd ZdS )	HelpFramec             C   s   t j| | t| | | _}|d | d< | j| | _}t| |jd | _}|j	|d< | j
ddd | jddd |jdddd |jddd	d |jdd
dd d S )Nr\   )commandZyscrollcommandr   r"   )weightZnw)rowcolumnstickynsew   ns)r	   r   rM   r   toc_menur   r   yviewscrollsetZrowconfigureZcolumnconfiguregrid)r   rm   rn   r   r   r   r    r    r!   r      s    
zHelpFrame.__init__c                sT   t | dd}t|dd}x. jjD ]"\}}|j||f fdd	d q"W ||d< |S )	NZTOC)r   F)Ztearoffc                s
    j | S )N)r   )dex)r   r    r!   <lambda>   s    z$HelpFrame.toc_menu.<locals>.<lambda>)Zlabelr|   Zmenu)r   r   rj   r   Zadd_command)r   r   r   ZdropZlblr   r    )r   r!   r      s    zHelpFrame.toc_menuN)rJ   rK   rL   r   r   r    r    r    r!   r{      s   r{   c               @   s   e Zd Zdd ZdS )
HelpWindowc             C   sZ   t j| | | j| | jd| j t| |jdddd | jddd | jddd d S )NZWM_DELETE_WINDOWr   r   )r   r~   r   r"   )r}   )	r   r   Zwm_titleZprotocolZdestroyr{   r   Zgrid_columnconfigureZgrid_rowconfigure)r   rm   rn   titler    r    r!   r      s    
zHelpWindow.__init__N)rJ   rK   rL   r   r    r    r    r!   r      s   r   c              C   s   t tttttddddd} t tttd}t| d<}t|d&}x|D ]}|j|j d	  qRW W d Q R X W d Q R X t|  d
|  d S )NZDocZbuildZhtmlZlibraryz	idle.htmlz	help.htmlrbwb   
z copied to )r   r   r   __file__rk   writerstripprint)srcdstZinnoutliner    r    r!   
copy_strip   s    
*r   c             C   s4   t tttd}t|sd S t| |dt   d S )Nz	help.htmlzIDLE Help (%s))r   r   r   r   r   r   r   )rm   rn   r    r    r!   show_idlehelp  s    r   __main__)rN   zidlelib.idle_test.test_helpr   F)	verbosityexit)runN) Zhtml.parserr   Zos.pathr   r   r   r   platformr   Ztkinterr   r	   r
   r   Ztkinter.ttkr   r   r   rx   Zidlelib.configr   r   rM   r{   r   r   r   rJ   ZunittestrN   Zidlelib.idle_test.htestr   r    r    r    r!   <module>   s"   v* 