403Webshell
Server IP : 127.0.0.1  /  Your IP : 216.73.216.109
Web Server : Apache/2.4.54 (Win64) OpenSSL/1.1.1q PHP/8.1.10
System : Windows NT DESKTOP-E5T4RUN 10.0 build 19045 (Windows 10) AMD64
User : SERVERWEB ( 0)
PHP Version : 8.1.10
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : OFF |  Perl : OFF |  Python : OFF |  Sudo : OFF |  Pkexec : OFF
Directory :  C:/cygwin64/lib/python3.9/site-packages/sphinx/writers/__pycache__/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : C:/cygwin64/lib/python3.9/site-packages/sphinx/writers/__pycache__/texinfo.cpython-39.opt-1.pyc
a

�abl��@s�dZddlZddlZddlZddlmZddlmZmZm	Z	m
Z
mZmZm
Z
mZmZmZmZmZddlmZmZddlmZmZmZddlmZmZddlmZdd	lm Z dd
l!m"Z"ddl#m$Z$ddl%m&Z&m'Z'm(Z(dd
l)m*Z*ddl+m,Z,ddl-m.Z.ddl/m0Z0e�rddl1m2Z2e*�3e4�Z5dZ6dedZ7eeej8d�dd�Z9de:e:e:d�dd�Z;Gdd�dej<�Z=Gdd�de,�Z>dS) z�
    sphinx.writers.texinfo
    ~~~~~~~~~~~~~~~~~~~~~~

    Custom docutils writer for Texinfo.

    :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�N)�path)�
TYPE_CHECKING�Any�Dict�Iterable�Iterator�List�Optional�Pattern�Set�Tuple�Union�cast)�nodes�writers)�Element�Node�Text)�__display_version__�addnodes)�RemovedInSphinx50Warning)�
IndexEntry)�IndexDomain)�ExtensionError)�_�__�admonitionlabels)�logging)�SphinxTranslator)�format_date)�collected_footnote)�TexinfoBuilderzn@quotation
%(project)s %(release)s, %(date)s

%(author)s

Copyright @copyright{} %(copyright)s
@end quotation
z�\input texinfo   @c -*-texinfo-*-
@c %%**start of header
@setfilename %(filename)s
@documentencoding UTF-8
@ifinfo
@*Generated by Sphinx a.@*
@end ifinfo
@settitle %(title)s
@defindex ge
@paragraphindent %(paragraphindent)s
@exampleindent %(exampleindent)s
@finalout
%(direntry)s
@definfoenclose strong,`,'
@definfoenclose emph,`,'
@c %%**end of header

@copying
%(copying)s
@end copying

@titlepage
@title %(title)s
@insertcopying
@end titlepage
@contents

@c %%** start of user preamble
%(preamble)s
@c %%** end of user preamble

@ifnottex
@node Top
@top %(title)s
@insertcopying
@end ifnottex

@c %%**start of body
%(body)s
@c %%**end of body
@bye
)�section�returncCsFg}|D]8}t|tj�r&|�|�qqt|tj�r|�t|��q|S)z7Return a list of subsections for the given ``section``.)�
isinstancerr"�appendr�extend�find_subsections)r"�result�child�r*�:/usr/lib/python3.9/site-packages/sphinx/writers/texinfo.pyr'^s
r')�s�sepr#cCsH|�|�}t|�D]&\}}tdd�|D��r|��||<q|p@d�|�S)z_Like string.capwords() but does not capitalize words that already
    contain a capital letter.css|]}|��VqdS�N)�islower)�.0�xr*r*r+�	<genexpr>o�z!smart_capwords.<locals>.<genexpr>� )�split�	enumerate�all�
capitalize�join)r,r-�words�iZwordr*r*r+�smart_capwordsjs

r<c
s�eZdZUdZdZddddgddifd	d
gddifddgddifd
dgddifffZeeeeeee	ee
eeffdffed<iZe
ed<dZ
eed<dZddd��fdd�Zdd�dd�Z�ZS)�
TexinfoWriterz0Texinfo writer for generating Texinfo documents.)�texinfo�texizTexinfo Specific OptionsNzName of the Info filez--texinfo-filename�default�z	Dir entryz--texinfo-dir-entryZDescriptionz--texinfo-dir-descriptionZCategoryz--texinfo-dir-categoryZ
Miscellaneous.�
settings_spec�settings_defaults�output)rD�fragmentr!)�builderr#cst���||_dSr.)�super�__init__rF)�selfrF��	__class__r*r+rH�s
zTexinfoWriter.__init__�r#cCsX|j�|j|j�}tt|�|_|j�|�|j��|jD]}t	||t
|j|��q:dSr.)rFZcreate_translator�documentr�TexinfoTranslator�visitor�	walkabout�finish�visitor_attributes�setattr�getattr)rIrO�attrr*r*r+�	translate�s

zTexinfoWriter.translate)�__name__�
__module__�__qualname__�__doc__Z	supportedrBr�strrrr�__annotations__rCrDrRrHrV�
__classcell__r*r*rJr+r=ts 
���4r=c
s�eZdZUdZded<dZddddddddddddd�Zejddd	��fd
d�Z	dd�d
d�Z
dd�dd�Zdd�dd�Zdd�dd�Z
dd�dd�Zeed�dd�Zeed�dd�Zeed�dd�Zeed�dd�Zdd�d d!�Zeeeed"�d#d$�Ze�d%�feeedd&�d'd(�Zedd)�d*d+�Zeed,�d-d.�Zdd�d/d0�Zeeeee e!e"ffd1�d2d3�Z#eed4�d5d6�Z$ee%dd7�d8d9�Z&eee%dd:�d;d<�Z'edd1�d=d>�Z(edd1�d?d@�Z)e*dd1�dAdB�Z+e*dd1�dCdD�Z,edd1�dEdF�Z-edd1�dGdH�Z.dIZ/dJZ0edd1�dKdL�Z1edd1�dMdN�Z2edd1�dOdP�Z3edd1�dQdR�Z4edd1�dSdT�Z5edd1�dUdV�Z6edd1�dWdX�Z7edd1�dYdZ�Z8edd1�d[d\�Z9edd1�d]d^�Z:edd1�d_d`�Z;edd1�dadb�Z<edd1�dcdd�Z=edd1�dedf�Z>edd1�dgdh�Z?edd1�didj�Z@edd1�dkdl�ZAedd1�dmdn�ZBeAZCeBZDedd1�dodp�ZEedd1�dqdr�ZFedd1�dsdt�ZGedd1�dudv�ZHedd1�dwdx�ZIedd1�dydz�ZJedd1�d{d|�ZKedd1�d}d~�ZLee"d1�dd��ZMedd1�d�d��ZNedd1�d�d��ZOedd1�d�d��ZPedd1�d�d��ZQedd1�d�d��ZRedd1�d�d��ZSedd1�d�d��ZTedd1�d�d��ZUedd1�d�d��ZVedd1�d�d��ZWedd1�d�d��ZXedd1�d�d��ZYedd1�d�d��ZZedd1�d�d��Z[edd1�d�d��Z\edd1�d�d��Z]edd1�d�d��Z^edd1�d�d��Z_edd1�d�d��Z`edd1�d�d��Zaedd1�d�d��Zbedd1�d�d��Zcedd1�d�d��Zdedd1�d�d��Zeedd1�d�d��Zfedd1�d�d��Zgedd1�d�d��Zhedd1�d�d��Ziedd1�d�d��Zjedd1�d�d��Zkedd1�d�d��Zledd1�d�d��Zmedd1�d�d„Znedd1�d�dĄZoedd1�d�dƄZpedd1�d�dȄZqedd1�d�dʄZredd1�d�d̄Zsedd1�d�d΄Ztedd1�d�dЄZuedd1�d�d҄Zvedd1�d�dԄZwedd1�d�dքZxedd1�d�d؄Zyedd1�d�dڄZzedd1�d�d܄Z{edd1�d�dބZ|edd1�d�d�Z}edd1�d�d�Z~edd1�d�d�Zedd1�d�d�Z�edd1�d�d�Z�edd1�d�d�Z�edd1�d�d�Z�edd1�d�d�Z�edd1�d�d�Z�edd1�d�d�Z�edd1�d�d�Z�edd1�d�d��Z�edd1�d�d��Z�edd1�d�d��Z�edd1�d�d��Z�edd1�d�d��Z�edd1�d��d�Z�edd1��d�d�Z�edd1��d�d�Z�edd1��d�d�Z�edd1��d�d�Z��d�eed�d	��d
�d�Z�edd1��d�d
�Z�edd1��d�d�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�e�Z�edd1��d�d�Z�edd1��d�d�Z�edd1��d�d�Z�edd1��d�d�Z�edd1��d�d�Z�edd1��d�d�Z�edd1��d�d�Z�edd1��d�d�Z�edd1��d �d!�Z�edd1��d"�d#�Z�edd1��d$�d%�Z�edd1��d&�d'�Z�edd1��d(�d)�Z�edd1��d*�d+�Z�edd1��d,�d-�Z�edd1��d.�d/�Z�edd1��d0�d1�Z�edd1��d2�d3�Z�edd1��d4�d5�Z�edd1��d6�d7�Z�edd1��d8�d9�Z�edd1��d:�d;�Z�edd1��d<�d=�Z�edd1��d>�d?�Z�edd1��d@�dA�Z�edd1��dB�dC�Z�edd1��dD�dE�Z�edd1��dF�dG�Z�edd1��dH�dI�Z�edd1��dJ�dK�Z�edd1��dL�dM�Z�edd1��dN�dO�Z�edd1��dP�dQ�Z�edd1��dR�dS�Z�edd1��dT�dU�Z�edd1��dV�dW�Z�edd1��dX�dY�Z�e%dd1��dZ�d[�Z�edd1��d\�d]�Z�edd1��d^�d_�Z�edd1��d`�da�Z�edd1��db�dc�Z�edd1��dd�de�Z�edd1��df�dg�Z�edd1��dh�di�Z�edd1��dj�dk�Z�edd1��dl�dm�Z�edd1��dn�do�Z�edd1��dp�dq�Z�edd1��dr�ds�Z�edd1��dt�du�Z�edd1��dv�dw�Z�edd1��dx�dy�Z�edd1��dz�d{�Z�edd1��d|�d}�Z�edd1��d~�d�Z�edd1��d��d��Z�e�j�dd1��d��d��Z�e�j�dd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d��Z�edd1��d��d���Zedd1��d��d���Zedd1��ddÄ�Zedd1��dĐdń�Zedd1��dƐdDŽ�Zedd1��dȐdɄ�Zedd1��dʐd˄�Zedd1��d̐d̈́�Zedd1��dΐdτ�Zedd1��dАdф�Z	edd1��dҐdӄ�Z
�e�ee�j�d��dԐdՄ�Z��Z
S(�rNNr!rFFrA�r)�author�body�copying�date�direntryZ
exampleindent�filenameZparagraphindentZpreamble�project�release�title)rMrFr#cs�t��||�|��t�|_t�|_g|_i|_i|_i|_	i|_
|��|��|�
�|��g|_g|_g|_d|_d|_d|_t�|_d|_d|_g|_g|_d|_d|_t�|_d|_dS)NrF)rGrH�
init_settings�set�written_ids�referenced_ids�indices�	short_ids�
node_names�
node_menus�rellinks�collect_indices�collect_node_names�collect_node_menus�collect_rellinksr`�context�descs�previous_section�
section_level�
seen_title�next_section_ids�escape_newlines�escape_hyphens�curfilestack�
footnotestack�in_footnote�in_samp�
handled_abbrs�	colwidths)rIrMrFrJr*r+rH�s8zTexinfoTranslator.__init__rLcCs�|jdur|�d�|jD]D}|\}}t|g|j|�}|j�d|�|j�d||f�q|jr�|j��}||j	vr`|j�d|df�q`|�
�d�|j�|_|j|j
d<t|j
|_dS)N�Top�
@node %s,%s,%s,%s
z@unnumbered %s

%s
z@anchor{%s}@w{%s}
z                              rAr`)rw�add_menurl�tuplerpr`r%rk�poprj�
ensure_eolr9rE�elements�TEMPLATErD)rI�index�name�content�pointers�rr*r*r+rQ�s




zTexinfoTranslator.finishcCsx|j��}|_|�|jj|jj|jj|�|j	j
�|�|j	j�|�|j	j�|�|j	j
ppt|j	jpftd�|j	jd��d��|jj}|s�|j�tj�}|r�|��nd}|�|�p�d|d<|d�s|j�d�p�d|d<|dd	d�d
vr�|ddd	�|d<|dd7<|jj�rZ|�|�|jj�d|d|�|jj��}d
|�|jj�|f|d<t||d<|�|jj�dS)Nz	%b %d, %Y)�language)rgr_rdrfre�	copyrightrb�
<untitled>rgrd�sourceZuntitled���)z.txtz.rstz.infoz(%s)z*@dircategory %s
@direntry
%s@end direntry
rcra) �default_elements�copyr��updateZsettingsrgr_Ztexinfo_filename�escape�configrfrer�ZtodayrZ	today_fmtrr�rM�	next_noder�astext�	escape_id�getZtexinfo_dir_entry�format_menu_entry�escape_menu�
escape_argZtexinfo_dir_descriptionZtexinfo_dir_category�COPYINGZtexinfo_elements)rIr�rgZ
title_node�entryr*r*r+rh�sH���


���zTexinfoTranslator.init_settingscs�ttd��fdd��d�jd<�d��d��fdd��jD��_�j�tj�D]4}ttj|�tj	��}|rv|�
�nd	}�|�|d<qRd
S)zeGenerates a unique id for each section.

        Assigns the attribute ``node_name`` to each section.�r�r#csb��|�}d\}}||�jvs.||�jvr@|d7}d|}q||7}�j�|�|�j|<|S)N)�rAr�z<%s>)r�rjrn�add)r�Znode_idZnth�suffix�rIr*r+�
add_node_name
s
�

z;TexinfoTranslator.collect_node_names.<locals>.add_node_namer��	node_name�topcsg|]\}}�|�|f�qSr*r*)r0r�r�)r�r*r+�
<listcomp>s�z8TexinfoTranslator.collect_node_names.<locals>.<listcomp>r�N)r[rMrl�findallrr"rZTextElementr�ZTitularr�)rIr"rgr�r*)r�rIr+rrs

�z$TexinfoTranslator.collect_node_namesc	Cs�|j}|jg}|�|j�tj��|D]"}dd�t|�D�}|||d<q&|j�tj�}|rb|j	n|j}t
|tjtjf�s�|j}||jur�||d}||ddd�7}||d<||d=d|d<|jD]\}}g||<|d�|�q�dS)z1Collect the menu entries for each "node" section.cSsg|]}|d�qS)r�r*)r0r,r*r*r+r�-r3z8TexinfoTranslator.collect_node_menus.<locals>.<listcomp>r�r�r�N)
rorMr&r�rr"r'r�rg�parentr$rlr%)	rIro�targets�node�entriesrgr�r�Z_contentr*r*r+rs&s&

z$TexinfoTranslator.collect_node_menuscCs�|j}|j}|D]}gd�||<q|��D]\}}|D]}|||d<q6q*|��D]Z\}}t|�D]H\}}|dkr�||d||d<|t|�dkrb||d||d<qbqRz|dd}Wnty�Yn0||dd<d||d<dS)z@Collect the relative links (next, previous, up) for each "node".)rArArA�rr�r�N)rpro�itemsr6�len�
IndexError)rIrpro�idr��er;�firstr*r*r+rt?s&z"TexinfoTranslator.collect_rellinks)r,r#cCs@|�dd�}|�dd�}|�dd�}|�dd�}|�d	d
�}|S)z8Return a string with Texinfo command characters escaped.�@z@@�{z@{�}z@}z``z`@w{`}z''z'@w{'})�replace�rIr,r*r*r+r�`szTexinfoTranslator.escapecCs,|�|�}|�dd�}d�|�����}|S)zVReturn an escaped string suitable for use as an argument
        to a Texinfo command.�,z@comma{}r4)r�r�r9r5�stripr�r*r*r+r�js
zTexinfoTranslator.escape_argcCsNd}|D]}|�|d�}qt�d|�r2|�dd�}d�|�����}|�|�S)z=Return an escaped string suitable for node names and anchors.z,:()r4z[^ .]�.)r��re�searchr9r5r�r�)rIr,Z	bad_charsZbcr*r*r+r�tszTexinfoTranslator.escape_idcCs,|�|�}|�dd�}d�|�����}|S)z3Return an escaped string suitable for menu entries.�:�;r4)r�r�r9r5r�r�r*r*r+r�s
zTexinfoTranslator.escape_menucCs,|jr(|jddd�dkr(|j�d�dS)z7Ensure the last line in body is terminated by new line.���N�
�r`r%r�r*r*r+r��szTexinfoTranslator.ensure_eol)r�r��descr#csn||krd|f}nd||f}tdt|�ddf��d��fdd�tj|d�d	�D��}||��dS)
Nz* %s:: z
* %s: %s. �r^�Nr�c3s|]}d�|VqdS)r4Nr*)r0�l��offsetr*r+r2�r3z6TexinfoTranslator.format_menu_entry.<locals>.<genexpr>)�width)�maxr�r9�textwrap�wrapr�)rIr�r�r�r,Zwdescr*r�r+r��s�z#TexinfoTranslator.format_menu_entryz
\s+---?\s+)r��regr#c	Cs�|D]|}|j|}z|�|d�}Wnty:|g}Yn0t|�dkrR|\}}nd}|�|�}|�|�}|j�|�|||��qdS)Nr�r�rA)	rnr5�	TypeErrorr�r�r�r`r%r�)rIr�r�r�r��partsr�r*r*r+�add_menu_entries�s



z"TexinfoTranslator.add_menu_entries)r�r#cs��j|}|sdS�j�d���|�|dksF�j|drF�jjrV�j�d�dStdd���fdd���j�d�|D]}�|�q|�j�d	�dS)
N�
@menu
r�rz
@end menu
r�csN�j|}|sdS�j�d���j|����|�|D]}�|�q<dS)Nz
%s

)ror`r%r�rnr�)r�r�Zsubentry��_add_detailed_menurIr*r+r��s

z6TexinfoTranslator.add_menu.<locals>._add_detailed_menuz0
@detailmenu
 --- The Detailed Node Listing ---
z
@end detailmenu
@end menu
)ror`r%r�r�Ztexinfo_no_detailmenur[)rIr�r�r�r*r�r+r��s"

��	
zTexinfoTranslator.add_menu)�	width_strr#cCsXt�d|�}|s|S|}|��dd�\}}|r8|dkr<dS|dkrTdt|�d}|S)Nz(\d*\.?\d*)\s*(\S*)r�ZpxrA�%z%d.0ptgDI��@)r��match�groups�float)rIr�r��res�amountZunitr*r*r+�tex_image_length�sz"TexinfoTranslator.tex_image_lengthc	s�tttttfttd��fdd�}�jj}|r��jjj	�
�D]h}|jD]\}d|j|jf}t
|t�rr||vrrqJ||���jj�\}}|s�qJ�j�|j|||�f�qJq@tt�jj�d��}�jjD]&}|j|rƈj�td�df�q�q�dS)N)r��	collapsedr#c
s�dg}|D]j\}}|D]\}|ds$q��|d�}��d|d|df�}��|d�}��|||�}	|�|	�qq
|�d�d�|�S)	Nr��rz%s:%sr��z
@end menu
rA)r��get_short_idr�r�r%r9)
r�r��retZ_letterr�r�r��sidr��mer�r*r+�generate�s
z3TexinfoTranslator.collect_indices.<locals>.generatez%s-%sr�ZIndexz
@printindex ge
)rrr[r�boolr�Ztexinfo_domain_indicesrF�envZdomains�valuesrlr�r$�listr�Zdocnamesr%Z	localnamerr�
get_domainr�r)	rIr�Zindices_config�domainZindexclsZ	indexnamer�r��docnamer*r�r+rq�s,&

�
�

z!TexinfoTranslator.collect_indices)r�r#csftttjd��fdd��i}�|�D]:}ttj|d�}|����}tdg|j	�R�dg||<q&|S)N)�nr#c3sNt|tj�r|Vn6|jD].}t|tj�r.qqt|tj�r�|�EdHqdSr.)r$r�footnote�childrenrZ
start_of_filer)r��c��footnotes_underr*r+r��s
z<TexinfoTranslator.collect_footnotes.<locals>.footnotes_underrrAF)
rrrr�r�labelr�r�r r�)rIr�Zfnotes�fnr��numr*r�r+�collect_footnotes�s	z#TexinfoTranslator.collect_footnotes)r�r#cCsFz|j|}Wn2ty@tt|j��dd�}||j|<Yn0|S)z-Return a shorter 'id' associated with ``id``.r�N)rm�KeyError�hexr�)rIr�r�r*r*r+r�szTexinfoTranslator.get_short_id)r�r�r#cCsl|�d�rdS|jdd|}|�|�}|�|�}||fD]*}||jvr<|j�d|�|j�|�q<dS)Nzindex-r�r�z@anchor{%s})�
startswithr}r�r�rjr`r%r�)rIr�r�Zeidr�r*r*r+�
add_anchors



zTexinfoTranslator.add_anchor)r�r�r�r#cCs`|�|�}|�|�}|jjrP|j�d||f�|j�|�|j�|�|��n|j�|�dS)Nz@ref{%s,,%s})	r�r�r�Ztexinfo_cross_referencesr`r%rkr�r�)rIr�r�r�r�r*r*r+�add_xref"s

zTexinfoTranslator.add_xrefcCs>|j�|�|��|j�|�dd��d|vr:|�d|�dS)Nr�rA�:doc)r~r%r�r}r�r��rIr�r*r*r+�visit_document.sz TexinfoTranslator.visit_documentcCs|j��|j��dSr.)r~r�r}r�r*r*r+�depart_document4s
z!TexinfoTranslator.depart_documentcCsB|�|���}|jr |�dd�}|jr2|�dd�}|j�|�dS)Nr�r4�-z@w{-})r�r�r{r�r|r`r%)rIr�r,r*r*r+�
visit_Text8szTexinfoTranslator.visit_TextcCsdSr.r*r�r*r*r+�depart_TextAszTexinfoTranslator.depart_TextcCs�|j�|�dg��|jsdS|jr6|�|jd�n
|�d�|d}t|g|j|�}|j�	d|�t
|j�D]}|�||�qv|j��t
tj|�|_|jd7_dS)N�idsr�r�r�r�)rzr�r�ryrwr�r�rpr`r%�sortedr��clearrrr"rx)rIr�r�r�r�r*r*r+�
visit_sectionDs

zTexinfoTranslator.visit_sectioncCs|jd8_dS�Nr�)rxr�r*r*r+�depart_sectionWsz TexinfoTranslator.depart_section)z@unnumberedz@chapterz@sectionz@subsectionz@subsubsection)z@headingz@subheadingz@subsubheadingcCs�|jsd|_tj�|j}t|tj�r(dSt|tjtjtjf�rFtj�nht|tj	�spt
jtd�|d�|�
|�n>z|j|j}Wnty�|jd}Yn0|j�d|�dS)NTzJencountered title node not in section, topic, table, admonition or sidebar��locationr��
%s )ryr�SkipNoder�r$�tableZ
AdmonitionZsidebarZtopicr"�logger�warningr�visit_rubric�headingsrxr�r`r%)rIr�r��headingr*r*r+�visit_titlehs$
�zTexinfoTranslator.visit_titlecCs|j�d�dS�N�

r�r�r*r*r+�depart_title}szTexinfoTranslator.depart_titlecCsvt|�dkr&|��dtd�fvr&tj�z|j|j}WntyR|jd}Yn0|j�	d|�|j
d7_
dS)Nr�Z	Footnotesr�r
)r�r�rrr�rubricsrxr�r`r%r{)rIr�Zrubricr*r*r+r�s zTexinfoTranslator.visit_rubriccCs|jd8_|j�d�dS)Nr�r)r{r`r%r�r*r*r+�
depart_rubric�szTexinfoTranslator.depart_rubriccCs|j�d�dS)Nz

@noindent
r�r�r*r*r+�visit_subtitle�sz TexinfoTranslator.visit_subtitlecCs|j�d�dSrr�r�r*r*r+�depart_subtitle�sz!TexinfoTranslator.depart_subtitlec	Cs�|j�|�}z~z|j|d}Wn*tyJ|jj|jj�|j�}Yn0t|tj�r�|�d�rr|j�|d�|j�	|d�WdSWntt
fy�Yn0d|vr�dS|�d�r�|�|d|�|dD]}|�||�q�dS)Nr��refidr�refuri)r�r�r�r$rr"r�rzr�r��AttributeErrorr�)rIr�Zparindex�nextr�r*r*r+�visit_target�s&


zTexinfoTranslator.visit_targetcCsdSr.r*r�r*r*r+�
depart_target�szTexinfoTranslator.depart_targetcCs�t|jtjtjf�rdSt|dtj�r,dS|�d|����	�}|�dd�}|st|�d�rtd|j
dd|d}|s|dS|�d	�r�|�|d
d��}|�|�}|r�||kr�|j
�d|�n|j
�d||f��n�|�d��r|j
dd
|dd�}|�|||��n�|�d��rh|�d�}|dk�rB|dd�d}n|dd��dd
�}|�|||��n2|�d��r�|dd��dd�}|�|�}d}d|v�r�|�dd�\}}|�|�}|�|�}||k�r�|j
�d||f�n|j
�d|||f�n�|�|�}|�|�}|jj}|j�r$d}|�r4||k�rF|j
�d|�nT|dk�rf|j
�d||f�n4|dk�r�|j
�d||f�n|j
�d||f�tj�dS)Nrr�rrArr�r��#zmailto:�z
@email{%s}z
@email{%s,%s}r�r�z::doczinfo:�rr4r�z
@ref{%s,,,%s}z@ref{%s,,%s,%s}Zinlinez@indicateurl{%s}z@uref{%s,%s}�noz
@uref{%s,,%s}z%s@footnote{%s})r$r�rrgrZ	desc_typeZimager�r�r�r}r�r�r`r%r��findr�r5r�r�r�Ztexinfo_show_urlsrr)rIr�r��urir�Z	hashindexZ	show_urlsr*r*r+�visit_reference�sb












z!TexinfoTranslator.visit_referencecCsdSr.r*r�r*r*r+�depart_reference�sz"TexinfoTranslator.depart_referencecCs&t�|�dd��}|�|�tj�dS)Nrgr#)rrr�rr�rIr��textr*r*r+�visit_number_reference�s
z(TexinfoTranslator.visit_number_referencecCs(|��}|j�d|�|��tj�dS)Nz	@cite{%s})r�r`r%r�rrr+r*r*r+�visit_title_reference�sz'TexinfoTranslator.visit_title_referencecCs|j�d�dS�Nr�r�r�r*r*r+�visit_paragraph�sz!TexinfoTranslator.visit_paragraphcCs|j�d�dSr/r�r�r*r*r+�depart_paragraphsz"TexinfoTranslator.depart_paragraphcCs|j�d�dS)Nz
@quotation
r�r�r*r*r+�visit_block_quotesz#TexinfoTranslator.visit_block_quotecCs|��|j�d�dS)Nz@end quotation
�r�r`r%r�r*r*r+�depart_block_quotesz$TexinfoTranslator.depart_block_quotecCs|j�d�dS)Nz

@example
r�r�r*r*r+�visit_literal_blocksz%TexinfoTranslator.visit_literal_blockcCs|��|j�d�dS)Nz
@end example
r3r�r*r*r+�depart_literal_blocksz&TexinfoTranslator.depart_literal_blockcCs*t|jtj�s|j�d�|j�d�dS)Nrz	@display
)r$r�r�
line_blockr`r%r�r*r*r+�visit_line_blocksz"TexinfoTranslator.visit_line_blockcCs*|j�d�t|jtj�s&|j�d�dS)Nz
@end display
r)r`r%r$r�rr7r�r*r*r+�depart_line_blocksz#TexinfoTranslator.depart_line_blockcCs|jd7_dSr	�r{r�r*r*r+�
visit_line szTexinfoTranslator.visit_linecCs|j�d�|jd8_dS)Nz@w{ }
r�)r`r%r{r�r*r*r+�depart_line#szTexinfoTranslator.depart_linecCs|j�d�dS)Nz@strong{r�r�r*r*r+�visit_strong)szTexinfoTranslator.visit_strongcCs|j�d�dS�Nr�r�r�r*r*r+�
depart_strong,szTexinfoTranslator.depart_strongcCs"|js
dnd}|j�d|�dS)NZemph�varz@%s{)r�r`r%)rIr��elementr*r*r+�visit_emphasis/sz TexinfoTranslator.visit_emphasiscCs|j�d�dSr>r�r�r*r*r+�depart_emphasis3sz!TexinfoTranslator.depart_emphasiscCsd|dvS)NZsamp�classesr*r�r*r*r+�is_samp6szTexinfoTranslator.is_sampcCs(|�|�r|jd7_|j�d�dS)Nr��@code{�rEr�r`r%r�r*r*r+�
visit_literal9s
zTexinfoTranslator.visit_literalcCs(|�|�r|jd8_|j�d�dS)Nr�r�rGr�r*r*r+�depart_literal>s
z TexinfoTranslator.depart_literalcCs|j�d�dS)Nz@w{^r�r�r*r*r+�visit_superscriptCsz#TexinfoTranslator.visit_superscriptcCs|j�d�dSr>r�r�r*r*r+�depart_superscriptFsz$TexinfoTranslator.depart_superscriptcCs|j�d�dS�Nz@w{[r�r�r*r*r+�visit_subscriptIsz!TexinfoTranslator.visit_subscriptcCs|j�d�dS�Nz]}r�r�r*r*r+�depart_subscriptLsz"TexinfoTranslator.depart_subscriptcCs
tj�dSr.�rrr�r*r*r+�visit_footnoteQsz TexinfoTranslator.visit_footnotecCs|jd7_|j�d�dS)Nr�z
@footnote{)rr`r%r�r*r*r+�visit_collected_footnoteTsz*TexinfoTranslator.visit_collected_footnotecCs|j�d�|jd8_dS)Nr�r�)r`r%rr�r*r*r+�depart_collected_footnoteXsz+TexinfoTranslator.depart_collected_footnotec
Csh|����}z|jd|\}}Wn0ttfyR}ztj|�WYd}~n
d}~00|�|�tj�dS)Nr�)	r�r�r~r�r�rrrPZSkipChildren)rIr�r�Zfootnode�used�excr*r*r+�visit_footnote_reference\s
z*TexinfoTranslator.visit_footnote_referencecCs:|j�d�|�d�D]}|�||�q|jd7_dS)Nr�rr�)r`r%r�r�r{)rIr�r�r*r*r+�visit_citationfsz TexinfoTranslator.visit_citationcCs|jd8_dSr	r:r�r*r*r+�depart_citationlsz!TexinfoTranslator.depart_citationcCs|j�d�dSrLr�r�r*r*r+�visit_citation_referenceosz*TexinfoTranslator.visit_citation_referencecCs|j�d�dSrNr�r�r*r*r+�depart_citation_referencersz+TexinfoTranslator.depart_citation_referencecCs |�dd�}|j�d|�dS)N�bullet�*z

@itemize %s
�r�r`r%)rIr�r[r*r*r+�visit_bullet_listwsz#TexinfoTranslator.visit_bullet_listcCs|��|j�d�dS)Nz
@end itemize
r3r�r*r*r+�depart_bullet_list{sz$TexinfoTranslator.depart_bullet_listcCs@|�dd�}dddd�}|�d|�|d��}|j�d|�dS)	NZenumtype�arabicrA�a�A)r`Z
loweralphaZ
upperalpha�startz

@enumerate %s
r])rIr��enumZstartersrcr*r*r+�visit_enumerated_lists�z'TexinfoTranslator.visit_enumerated_listcCs|��|j�d�dS)Nz@end enumerate
r3r�r*r*r+�depart_enumerated_list�sz(TexinfoTranslator.depart_enumerated_listcCs|j�d�dS)Nz
@item r�r�r*r*r+�visit_list_item�sz!TexinfoTranslator.visit_list_itemcCsdSr.r*r�r*r*r+�depart_list_item�sz"TexinfoTranslator.depart_list_itemcCs|j�d�dS)Nz

@table @option
r�r�r*r*r+�visit_option_list�sz#TexinfoTranslator.visit_option_listcCs|��|j�d�dS�Nz@end table
r3r�r*r*r+�depart_option_list�sz$TexinfoTranslator.depart_option_listcCsdSr.r*r�r*r*r+�visit_option_list_item�sz(TexinfoTranslator.visit_option_list_itemcCsdSr.r*r�r*r*r+�depart_option_list_item�sz)TexinfoTranslator.depart_option_list_itemcCs
d|_dS�Nz@item��	at_item_xr�r*r*r+�visit_option_group�sz$TexinfoTranslator.visit_option_groupcCsdSr.r*r�r*r*r+�depart_option_group�sz%TexinfoTranslator.depart_option_groupcCs*|jd7_|j�d|j�d|_dS)Nr�r
�@itemx)r|r`r%rpr�r*r*r+�visit_option�szTexinfoTranslator.visit_optioncCs|jd8_dSr	)r|r�r*r*r+�
depart_option�szTexinfoTranslator.depart_optioncCsdSr.r*r�r*r*r+�visit_option_string�sz%TexinfoTranslator.visit_option_stringcCsdSr.r*r�r*r*r+�depart_option_string�sz&TexinfoTranslator.depart_option_stringcCs|j�|�dd��dS)NZ	delimiterr4)r`r%r�r�r*r*r+�visit_option_argument�sz'TexinfoTranslator.visit_option_argumentcCsdSr.r*r�r*r*r+�depart_option_argument�sz(TexinfoTranslator.depart_option_argumentcCs|j�d�dSr/r�r�r*r*r+�visit_description�sz#TexinfoTranslator.visit_descriptioncCsdSr.r*r�r*r*r+�depart_description�sz$TexinfoTranslator.depart_descriptioncCs|j�d�dS)Nz

@table @asis
r�r�r*r*r+�visit_definition_list�sz'TexinfoTranslator.visit_definition_listcCs|��|j�d�dSrjr3r�r*r*r+�depart_definition_list�sz(TexinfoTranslator.depart_definition_listcCs
d|_dSrnror�r*r*r+�visit_definition_list_item�sz,TexinfoTranslator.visit_definition_list_itemcCsdSr.r*r�r*r*r+�depart_definition_list_item�sz-TexinfoTranslator.depart_definition_list_itemcCsp|�d�D]}|�||�q
|dd�D]*}t|tjtjf�r(|�|�|�|�q(|j	�
d|j�d|_dS)Nrr
rs)r�r�r$rr�r�targetrP�remover`r%rp)rIr�r�r�r*r*r+�
visit_term�s
zTexinfoTranslator.visit_termcCsdSr.r*r�r*r*r+�depart_term�szTexinfoTranslator.depart_termcCs|j�d�dS)Nz : r�r�r*r*r+�visit_classifier�sz"TexinfoTranslator.visit_classifiercCsdSr.r*r�r*r*r+�depart_classifier�sz#TexinfoTranslator.depart_classifiercCs|j�d�dSr/r�r�r*r*r+�visit_definition�sz"TexinfoTranslator.visit_definitioncCsdSr.r*r�r*r*r+�depart_definition�sz#TexinfoTranslator.depart_definitioncCs
d|_dSrn��	entry_sepr�r*r*r+�visit_table�szTexinfoTranslator.visit_tablecCs|j�d�dS)Nz
@end multitable

r�r�r*r*r+�depart_table�szTexinfoTranslator.depart_tablecCsdSr.r*r�r*r*r+�visit_tabular_col_spec�sz(TexinfoTranslator.visit_tabular_col_speccCsdSr.r*r�r*r*r+�depart_tabular_col_spec�sz)TexinfoTranslator.depart_tabular_col_speccCsX|j�|d�t|j�|jkr$dS|j�d�|jD]}|j�dd|d�q6dS)NZcolwidthz

@multitable z{%s} r1r�)r�r%r��n_colsr`)rIr�r�r*r*r+�
visit_colspec�s
zTexinfoTranslator.visit_colspeccCsdSr.r*r�r*r*r+�depart_colspecsz TexinfoTranslator.depart_colspeccCsg|_|d|_dS)NZcols)r�r�r�r*r*r+�visit_tgroupszTexinfoTranslator.visit_tgroupcCsdSr.r*r�r*r*r+�
depart_tgroupszTexinfoTranslator.depart_tgroupcCs
d|_dS)Nz	@headitemr�r�r*r*r+�visit_thead
szTexinfoTranslator.visit_theadcCsdSr.r*r�r*r*r+�depart_thead
szTexinfoTranslator.depart_theadcCsdSr.r*r�r*r*r+�visit_tbodyszTexinfoTranslator.visit_tbodycCsdSr.r*r�r*r*r+�depart_tbodyszTexinfoTranslator.depart_tbodycCsdSr.r*r�r*r*r+�	visit_rowszTexinfoTranslator.visit_rowcCs
d|_dSrnr�r�r*r*r+�
depart_rowszTexinfoTranslator.depart_rowcCs|j�d|j�d|_dS)Nz
%s
z@tab)r`r%r�r�r*r*r+�visit_entryszTexinfoTranslator.visit_entrycCs&t|�dd��D]}|j�d�qdS)NZmorecolsrz
@tab
)�ranger�r`r%)rIr�Z_ir*r*r+�depart_entry szTexinfoTranslator.depart_entrycCsdSr.r*r�r*r*r+�visit_field_list&sz"TexinfoTranslator.visit_field_listcCsdSr.r*r�r*r*r+�depart_field_list)sz#TexinfoTranslator.depart_field_listcCs|j�d�dSr/r�r�r*r*r+�visit_field,szTexinfoTranslator.visit_fieldcCs|j�d�dSr/r�r�r*r*r+�depart_field/szTexinfoTranslator.depart_fieldcCs|��|j�d�dS)Nz@*r3r�r*r*r+�visit_field_name2sz"TexinfoTranslator.visit_field_namecCs|j�d�dS)Nz: r�r�r*r*r+�depart_field_name6sz#TexinfoTranslator.depart_field_namecCsdSr.r*r�r*r*r+�visit_field_body9sz"TexinfoTranslator.visit_field_bodycCsdSr.r*r�r*r*r+�depart_field_body<sz#TexinfoTranslator.depart_field_body)r�r�r#cCs6|s"ttj|d�}|�|���}|j�d|�dS)Nr�
@cartouche
@quotation %s )rrrgr�r�r`r%)rIr�r�rgr*r*r+�visit_admonitionAsz"TexinfoTranslator.visit_admonitioncCst|j}|j�d|�dS)Nr�)rZtagnamer`r%)rIr�r�r*r*r+�_visit_named_admonitionGs
z)TexinfoTranslator._visit_named_admonitioncCs|��|j�d�dS)Nz@end quotation
@end cartouche
r3r�r*r*r+�depart_admonitionKsz#TexinfoTranslator.depart_admonitioncCs
tj�dSr.rPr�r*r*r+�
visit_docinfoeszTexinfoTranslator.visit_docinfocCs
tj�dSr.rPr�r*r*r+�visit_generatedhsz!TexinfoTranslator.visit_generatedcCs
tj�dSr.rPr�r*r*r+�visit_headerkszTexinfoTranslator.visit_headercCs
tj�dSr.rPr�r*r*r+�visit_footernszTexinfoTranslator.visit_footercCs|�d�r|j�d�dS)N�
literal_blockz

@float LiteralBlock
r]r�r*r*r+�visit_containerqs
z!TexinfoTranslator.visit_containercCs|�d�r|j�d�dS)Nr��
@end float

r]r�r*r*r+�depart_containerus
z"TexinfoTranslator.depart_containercCsdSr.r*r�r*r*r+�visit_decorationysz"TexinfoTranslator.visit_decorationcCsdSr.r*r�r*r*r+�depart_decoration|sz#TexinfoTranslator.depart_decorationcCsXd|�dg�vrtj�ttj|d�}|�|�|j�d|�|�	���|�
|�dS)N�contentsrDrz%s
)r�rrrrgrr`r%r�r�r)rIr�rgr*r*r+�visit_topics
zTexinfoTranslator.visit_topiccCsdSr.r*r�r*r*r+�depart_topic�szTexinfoTranslator.depart_topiccCs|j�dd�dS)Nz

%s

ZB__________________________________________________________________r�r�r*r*r+�visit_transition�sz"TexinfoTranslator.visit_transitioncCsdSr.r*r�r*r*r+�depart_transition�sz#TexinfoTranslator.depart_transitioncCs|j�d�dS)Nz

@center --- r�r�r*r*r+�visit_attribution�sz#TexinfoTranslator.visit_attributioncCs|j�d�dSrr�r�r*r*r+�depart_attribution�sz$TexinfoTranslator.depart_attributioncCs:|�dd���}d|vs d|vr0|j�|���tj�dS)N�formatrAr>r?)r�r5r`r%r�rr)rIr�r�r*r*r+�	visit_raw�szTexinfoTranslator.visit_rawcCs|j�d�dS)Nz

@float Figure
r�r�r*r*r+�visit_figure�szTexinfoTranslator.visit_figurecCs|j�d�dS)Nr�r�r�r*r*r+�
depart_figure�szTexinfoTranslator.depart_figurecCsLt|jtj�s(t|jtj�r6|j�d�r6|j�d�ntj	t
d�|d�dS)Nr�z

@caption{zcaption not inside a figure.r)r$r�r�figure�	containerr�r`r%rrrr�r*r*r+�
visit_caption�s�
�
�zTexinfoTranslator.visit_captioncCs8t|jtj�s(t|jtj�r4|j�d�r4|j�d�dS)Nr�z}
)r$r�rr�r�r�r`r%r�r*r*r+�depart_caption�s�
�z TexinfoTranslator.depart_captionc	
Cs�|d|jjvr"|jj|d}n|jr,dS|d}|�d�dkrFdSt�|�\}}|�|�dd��}|�|�dd��}|�|�dd��}d|j	d	dd
�|f}|j
�d|||||dd�f�dS)
Nr(z://r�r�rA�height�altz
%s-figures/%srd���z
@image{%s,%s,%s,%s,%s}
r�)rFZimages�ignore_missing_imagesr'r�splitextr�r�r�r�r`r%)	rIr�r(r��extr�r�r�rdr*r*r+�visit_image�s�zTexinfoTranslator.visit_imagecCsdSr.r*r�r*r*r+�depart_image�szTexinfoTranslator.depart_imagecCsdSr.r*r�r*r*r+�visit_compound�sz TexinfoTranslator.visit_compoundcCsdSr.r*r�r*r*r+�depart_compound�sz!TexinfoTranslator.depart_compoundcCs|�|�dSr.)r�r�r*r*r+�
visit_sidebar�szTexinfoTranslator.visit_sidebarcCs|�|�dSr.)r�r�r*r*r+�depart_sidebar�sz TexinfoTranslator.depart_sidebarcCs|jrtj�n|j�d�dS)Nz@w{()rrrr`r%r�r*r*r+�visit_label�szTexinfoTranslator.visit_labelcCs|j�d�dS)Nz)} r�r�r*r*r+�depart_label�szTexinfoTranslator.depart_labelcCsdSr.r*r�r*r*r+�visit_legend�szTexinfoTranslator.visit_legendcCsdSr.r*r�r*r*r+�
depart_legend�szTexinfoTranslator.depart_legendcCsdSr.r*r�r*r*r+�visit_substitution_reference�sz.TexinfoTranslator.visit_substitution_referencecCsdSr.r*r�r*r*r+�depart_substitution_reference�sz/TexinfoTranslator.depart_substitution_referencecCs
tj�dSr.rPr�r*r*r+�visit_substitution_definition�sz/TexinfoTranslator.visit_substitution_definitioncCs|j�d|���tj�dS)Nz.
@verbatim
<SYSTEM MESSAGE: %s>
@end verbatim
)r`r%r�rrr�r*r*r+�visit_system_message�s�z&TexinfoTranslator.visit_system_messagecCs8|j�d�|����D]}|j�d|�qtj�dS)Nr�z@c %s
)r`r%r��
splitlinesrr)rIr��liner*r*r+�
visit_comment�szTexinfoTranslator.visit_commentcCs|j�d�dS)Nz>>r�r�r*r*r+�visit_problematic�sz#TexinfoTranslator.visit_problematiccCs|j�d�dS)Nz<<r�r�r*r*r+�depart_problematic�sz$TexinfoTranslator.depart_problematiccCstjtd�||d�dS)Nzunimplemented node type: %rr)rrrr�r*r*r+�unimplemented_visits�z%TexinfoTranslator.unimplemented_visitcCsdSr.r*r�r*r*r+�unknown_departuresz#TexinfoTranslator.unknown_departurecCs�|�d�g}tttj|�}|D]}|�|d�q"tdd�|D��}|D]t}|dr�|�d�D]}|�||�qb|d�	|�d}ndd|}|j
�|�|��|j
�|�|��d��qL|�
d�tj�dS)	NZ	tokennamecss|]}t|�VqdSr.)r�)r0r�r*r*r+r2r3z9TexinfoTranslator.visit_productionlist.<locals>.<genexpr>rz ::=z%s    r4r�)r5rrr�
productionr%r�r�r��ljustr`r�r�r6rr)rIr��namesZproductionlistr��maxlenr�r,r*r*r+�visit_productionlist	s 

z&TexinfoTranslator.visit_productionlistcCsdSr.r*r�r*r*r+�visit_productionsz"TexinfoTranslator.visit_productioncCsdSr.r*r�r*r*r+�depart_productionsz#TexinfoTranslator.depart_productioncCs|j�d�dS�NrFr�r�r*r*r+�visit_literal_emphasis"sz(TexinfoTranslator.visit_literal_emphasiscCs|j�d�dSr>r�r�r*r*r+�depart_literal_emphasis%sz)TexinfoTranslator.depart_literal_emphasiscCs|j�d�dSr�r�r�r*r*r+�visit_literal_strong(sz&TexinfoTranslator.visit_literal_strongcCs|j�d�dSr>r�r�r*r*r+�depart_literal_strong+sz'TexinfoTranslator.depart_literal_strongcCs^t|jtj�r|��n|j�d�|dD],}|\}}}}}|�|�}|j�d|�q,dS)Nr�r�z@geindex %s
)r$r�rZ	paragraphr�r`r%r�)rIr�r��typr,�tidZtext2Zkey_r*r*r+�visit_index.s

zTexinfoTranslator.visit_indexcCs|j�d�dSr/r�r�r*r*r+�visit_versionmodified9sz'TexinfoTranslator.visit_versionmodifiedcCs|j�d�dSr/r�r�r*r*r+�depart_versionmodified<sz(TexinfoTranslator.depart_versionmodifiedcCs2|j�d�|j�|d�|j�|�|��dS)Nr�r�)rzr�r}r%r~r�r�r*r*r+�visit_start_of_file?sz%TexinfoTranslator.visit_start_of_filecCs|j��|j��dSr.)r}r�r~r�r*r*r+�depart_start_of_fileEs
z&TexinfoTranslator.depart_start_of_filecCs(|�|���}|j�d|�tj�dS)Nz

@center %s

)r�r�r`r%rr�rIr�Ztxtr*r*r+�visit_centeredIsz TexinfoTranslator.visit_centeredcCs|j�dtd�dS)Nz

@subsubheading %s

Zseealso)r`r%rr�r*r*r+�
visit_seealsoNs�zTexinfoTranslator.visit_seealsocCs|j�d�dSr/r�r�r*r*r+�depart_seealsoRsz TexinfoTranslator.depart_seealsocCs
tj�dSr.rPr�r*r*r+�
visit_metaUszTexinfoTranslator.visit_metacCsdSr.r*r�r*r*r+�visit_glossaryXsz TexinfoTranslator.visit_glossarycCsdSr.r*r�r*r*r+�depart_glossary[sz!TexinfoTranslator.depart_glossarycCsbttj|d�}tttj|�}|j�d�|j�d�dd�|D��d�|j�d�tj�dS)Nrr�, css|]}|��VqdSr.)r�)r0r�r*r*r+r2br3z/TexinfoTranslator.visit_acks.<locals>.<genexpr>r�)	rr�bullet_listrZ	list_itemr`r%r9r)rIr�r�Z
list_itemsr*r*r+�
visit_acks^s zTexinfoTranslator.visit_ackscCs|j�|�d|_dS)Nz@deffn)rvr%�	at_deffnxr�r*r*r+�
visit_descmszTexinfoTranslator.visit_desccCs"|j��|��|j�d�dS)Nz@end deffn
)rvr�r�r`r%r�r*r*r+�depart_descqs
zTexinfoTranslator.depart_descc	Cs�|jd7_|jd}|dkr<|�d�D]}|�||�q*z4|jj�|jd�}|�|j||j	j
|jk�}Wntt
fy�|}Yn0|�t|��}|j�d|j|f�d|_||_dS)Nr��objtypeZdescriberr�z	
%s {%s} z@deffnx)r|r�r�r�rFr�r�Z
get_type_nameZobject_typesr�Zprimary_domainr�r�rr�r<r`r%r��desc_type_name)rIr�r�r�r�r��categoryr*r*r+�visit_desc_signaturevs 
�
z&TexinfoTranslator.visit_desc_signaturecCs$|j�d�|jd8_d|_dS)Nr�r�)r`r%r|r�r�r*r*r+�depart_desc_signature�sz'TexinfoTranslator.depart_desc_signaturecCsdSr.r*r�r*r*r+�visit_desc_signature_line�sz+TexinfoTranslator.visit_desc_signature_linecCsdSr.r*r�r*r*r+�depart_desc_signature_line�sz,TexinfoTranslator.depart_desc_signature_linecCsdSr.r*r�r*r*r+�visit_desc_content�sz$TexinfoTranslator.visit_desc_contentcCsdSr.r*r�r*r*r+�depart_desc_content�sz%TexinfoTranslator.depart_desc_contentcCsdSr.r*r�r*r*r+�visit_desc_inline�sz#TexinfoTranslator.visit_desc_inlinecCsdSr.r*r�r*r*r+�depart_desc_inline�sz$TexinfoTranslator.depart_desc_inlinecCsdSr.r*r�r*r*r+�visit_desc_name�sz!TexinfoTranslator.visit_desc_namecCsdSr.r*r�r*r*r+�depart_desc_name�sz"TexinfoTranslator.depart_desc_namecCsdSr.r*r�r*r*r+�visit_desc_addname�sz$TexinfoTranslator.visit_desc_addnamecCsdSr.r*r�r*r*r+�depart_desc_addname�sz%TexinfoTranslator.depart_desc_addnamecCsdSr.r*r�r*r*r+�visit_desc_type�sz!TexinfoTranslator.visit_desc_typecCsdSr.r*r�r*r*r+�depart_desc_type�sz"TexinfoTranslator.depart_desc_typecCs|j�d�dS)Nz -> r�r�r*r*r+�visit_desc_returns�sz$TexinfoTranslator.visit_desc_returnscCsdSr.r*r�r*r*r+�depart_desc_returns�sz%TexinfoTranslator.depart_desc_returnscCs|j�d�d|_dS)Nz (r�)r`r%�first_paramr�r*r*r+�visit_desc_parameterlist�sz*TexinfoTranslator.visit_desc_parameterlistcCs|j�d�dS)N�)r�r�r*r*r+�depart_desc_parameterlist�sz+TexinfoTranslator.depart_desc_parameterlistcCsJ|js|j�d�nd|_|�|���}|�dd�}|j�|�tj�dS)Nr�r� z@w{ })rr`r%r�r�r�rrr+r*r*r+�visit_desc_parameter�sz&TexinfoTranslator.visit_desc_parametercCs|j�d�dS)N�[r�r�r*r*r+�visit_desc_optional�sz%TexinfoTranslator.visit_desc_optionalcCs|j�d�dS)N�]r�r�r*r*r+�depart_desc_optional�sz&TexinfoTranslator.depart_desc_optionalcCsB|����}|jr$||jddks8|jr>||j��vr>tj�dS)Nr�r�)r�r�rvr�r5rrr�r*r*r+�visit_desc_annotation�s��z'TexinfoTranslator.visit_desc_annotationcCsdSr.r*r�r*r*r+�depart_desc_annotation�sz(TexinfoTranslator.depart_desc_annotationcCsdSr.r*r�r*r*r+�visit_inline�szTexinfoTranslator.visit_inlinecCsdSr.r*r�r*r*r+�
depart_inline�szTexinfoTranslator.depart_inlinecCs`|��}|j�d�|�d�rP||jvrP|j�d|�|d��|j�|�n|j�d�dS)Nz@abbr{Zexplanationz,%s}r�)r�r`r%�hasattrr�rur�r�)rIr�Zabbrr*r*r+�visit_abbreviation�sz$TexinfoTranslator.visit_abbreviationcCs|j�|j���dSr.)r`r%rur�r�r*r*r+�depart_abbreviation�sz%TexinfoTranslator.depart_abbreviationcCs
|�|�Sr.)r�r�r*r*r+�
visit_manpage�szTexinfoTranslator.visit_manpagecCs
|�|�Sr.)r�r�r*r*r+�depart_manpage�sz TexinfoTranslator.depart_manpagecCsdSr.r*r�r*r*r+�visit_download_reference�sz*TexinfoTranslator.visit_download_referencecCsdSr.r*r�r*r*r+�depart_download_reference�sz+TexinfoTranslator.depart_download_referencecCs|�|�dSr.)r^r�r*r*r+�visit_hlistszTexinfoTranslator.visit_hlistcCs|�|�dSr.)r_r�r*r*r+�depart_hlistszTexinfoTranslator.depart_hlistcCsdSr.r*r�r*r*r+�visit_hlistcolsz TexinfoTranslator.visit_hlistcolcCsdSr.r*r�r*r*r+�depart_hlistcol
sz!TexinfoTranslator.depart_hlistcolcCsdSr.r*r�r*r*r+�visit_pending_xref
sz$TexinfoTranslator.visit_pending_xrefcCsdSr.r*r�r*r*r+�depart_pending_xrefsz%TexinfoTranslator.depart_pending_xrefcCs(|j�d|�|���d�tj�dS)Nz@math{r�)r`r%r�r�rrr�r*r*r+�
visit_mathszTexinfoTranslator.visit_mathcCs>|�d�r|�|d|�|j�d|�|����tj�dS)Nr�z

@example
%s
@end example

)r�r�r`r%r�r�rrr�r*r*r+�visit_math_blocks
�z"TexinfoTranslator.visit_math_blockcCs(t�dt�t|j�r |jdSdSdS)Nz!TexinfoWriter.desc is deprecated.r�)�warnings�warnrr�rvr�r*r*r+r�s

zTexinfoTranslator.desc)rA(rWrXrYrFr\r�r�rrMrHrQrhrrrsrtr[r�r�r�r�r�r�r��compilerr
r�r�r�rqrrr
r r�r�r�rr�r�rrrrrrr
rrrrrrrrr!r"r)r*r-r.r0r1r2r4r5r6Zvisit_doctest_blockZdepart_doctest_blockr8r9r;r<r=r?rBrCrErHrIrJrKrMrOrQrRrSrVrWrXrYrZr^r_rerfrgrhrirkrlrmrqrrrtrurvrwrxryrzr{r|r}r~rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�Zvisit_attentionZdepart_attentionZ
visit_cautionZdepart_cautionZvisit_dangerZ
depart_dangerZvisit_errorZdepart_errorZ
visit_hintZdepart_hintZvisit_importantZdepart_importantZ
visit_noteZdepart_noteZ	visit_tipZ
depart_tipZ
visit_warningZdepart_warningr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr�r�r�r�rrrrrrrrrr	r
rrr
rrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r+�propertyr	r]r*r*rJr+rN�s
�"*!


�'$	
?
				rN)N)?rZr�r�r,�osr�typingrrrrrrr	r
rrr
rZdocutilsrrZdocutils.nodesrrrZsphinxrrZsphinx.deprecationrZsphinx.domainsrZsphinx.domains.indexrZ
sphinx.errorsrZ
sphinx.localerrrZsphinx.utilrZsphinx.util.docutilsrZsphinx.util.i18nrZsphinx.writers.latexr Zsphinx.builders.texinfor!Z	getLoggerrWrr�r�r"r'r[r<�Writerr=rNr*r*r*r+�<module>s<
8

��-


Youez - 2016 - github.com/yon3zu
LinuXploit