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__/text.cpython-39.pyc
a

�ab��@sDdZddlZddlZddlZddlZddlmZmZddlm	Z	m
Z
mZmZm
Z
mZmZmZmZmZmZddlmZmZddlmZmZddlmZddlmZdd	lmZm Z dd
l!m"Z"e	r�ddl#m$Z$Gdd
�d
�Z%Gdd�d�Z&Gdd�dej'�Z'dZ(dZ)e(fe*e+e
ee*d�dd�Z,Gdd�dej-�Z.Gdd�de"�Z/dS)z�
    sphinx.writers.text
    ~~~~~~~~~~~~~~~~~~~

    Custom docutils writer for plain text.

    :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�N)�chain�groupby)�
TYPE_CHECKING�Any�Dict�	Generator�Iterable�List�Optional�Set�Tuple�Union�cast)�nodes�writers)�Element�Text��column_width)�addnodes)�_�admonitionlabels)�SphinxTranslator)�TextBuilderc@sReZdZdZdeeedd�dd�Zed�d	d
�Zed�dd�Zedd
�dd�Z	dS)�CellzVRepresents a cell in a table.
    It can span multiple columns or multiple lines.
    ��N)�text�rowspan�colspan�returncCs(||_g|_||_||_d|_d|_dS�N)r�wrappedrr�col�row)�selfrrr�r&�7/usr/lib/python3.9/site-packages/sphinx/writers/text.py�__init__"sz
Cell.__init__�r cCsd�|j|j|j|j|j�S)Nz<Cell {!r} {}v{}/{}>{}>)�formatrr$rr#r�r%r&r&r'�__repr__*s�z
Cell.__repr__cCst|j|jf�Sr!)�hashr#r$r+r&r&r'�__hash__/sz
Cell.__hash__)�widthr cCst|j|�|_dSr!)�my_wraprr")r%r/r&r&r'�wrap2sz	Cell.wrap)rrr)
�__name__�
__module__�__qualname__�__doc__�str�intr(r,r.r1r&r&r&r'rs
rc@seZdZdZd'eedd�dd�Zdd�dd�Zdd�d	d
�Ze	dd�dd
�Z
eeefe	d�dd�Zeeefe	dd�dd�Z
edd�dd�Zedd�dd�Zed�dd�Ze	eeed�dd�Zeee	ddfd�dd ��Zdd�d!d"�Zee	ed�d#d$�Zed�d%d&�ZdS)(�TableajRepresents a table, handling cells that can span multiple lines
    or rows, like::

       +-----------+-----+
       | AAA       | BBB |
       +-----+-----+     |
       |     | XXX |     |
       |     +-----+-----+
       | DDD | CCC       |
       +-----+-----------+

    This class can be used in two ways, either:

    - With absolute positions: call ``table[line, col] = Cell(...)``,
      this overwrites any existing cell(s) at these positions.

    - With relative positions: call the ``add_row()`` and
      ``add_cell(Cell(...))`` as needed.

    Cells spanning multiple rows or multiple columns (having a
    colspan or rowspan greater than one) are automatically referenced
    by all the table cells they cover. This is a useful
    representation as we can simply check
    ``if self[x, y] is self[x, y+1]`` to recognize a rowspan.

    Colwidth is not automatically computed, it has to be given, either
    at construction time, or during the table construction.

    Example usage::

       table = Table([6, 6])
       table.add_cell(Cell("foo"))
       table.add_cell(Cell("bar"))
       table.set_separator()
       table.add_row()
       table.add_cell(Cell("FOO"))
       table.add_cell(Cell("BAR"))
       print(table)
       +--------+--------+
       | foo    | bar    |
       |========|========|
       | FOO    | BAR    |
       +--------+--------+

    N)�colwidthr cCs.g|_d|_|dur|ng|_d|_d|_dS�Nr)�lines�	separatorr9�current_line�current_col)r%r9r&r&r'r(ds
zTable.__init__r)cCs|jd7_d|_dS)z�Add a row to the table, to use with ``add_cell()``.  It is not needed
        to call ``add_row()`` before the first ``add_cell()``.
        rrN)r=r>r+r&r&r'�add_rowksz
Table.add_rowcCst|j�|_dS)z*Sets the separator below the current line.N)�lenr;r<r+r&r&r'�
set_separatorrszTable.set_separator)�cellr cCsD||j|jfr |jd7_q|||j|jf<|j|j7_dS)z�Add a cell to the current line, to use with ``add_row()``.  To add
        a cell spanning multiple lines or rows, simply set the
        ``cell.colspan`` or ``cell.rowspan`` BEFORE inserting it into
        the table.
        rN)r=r>r)r%rBr&r&r'�add_cellvszTable.add_cell)�posr cCs2|\}}|�|d�|�|d�|j||S�Nr)�_ensure_has_line�_ensure_has_columnr;)r%rD�liner#r&r&r'�__getitem__�szTable.__getitem__)rDrBr cCsn|\}}|�||j�|�||j�t|j�D]6}t|j�D]&}||j||||<||_||_q@q2dSr!)rFrrGr�ranger;r$r#)r%rDrBrHr#ZdlineZdcolr&r&r'�__setitem__�szTable.__setitem__)rHr cCs t|j�|kr|j�g�qdSr!)r@r;�append)r%rHr&r&r'rF�szTable._ensure_has_line)r#r cCs(|jD]}t|�|kr|�d�q
qdSr!)r;r@rL)r%r#rHr&r&r'rG�s
zTable._ensure_has_columncCsd�dd�|jD��S)N�
css|]}t|�VqdSr!)�repr)�.0rHr&r&r'�	<genexpr>��z!Table.__repr__.<locals>.<genexpr>)�joinr;r+r&r&r'r,�szTable.__repr__)rB�sourcer cCsDd}t||j|jfj�D]}|||j|7}q||jddS)z�Give the cell width, according to the given source (either
        ``self.colwidth`` or ``self.measured_widths``).
        This takes into account cells spanning multiple columns.
        rr�)rJr$r#r)r%rBrSr/�ir&r&r'�
cell_width�szTable.cell_widthccs<t�}|jD]*}|D] }|r||vr|V|�|�qqdSr!)�setr;�add)r%�seenrHrBr&r&r'�cells�s
zTable.cellscCs�|jdd�|_|jD]r}|j|�||j�d�|js8qt�tdd�|jD��|j	�}t
|j|j|j	�D]}t|j||�|j|<qlqdS)z�Call ``cell.wrap()`` on all cells, and measure each column width
        after wrapping (result written in ``self.measured_widths``).
        N�r/css|]}t|�VqdSr!r�rO�xr&r&r'rP�rQzTable.rewrap.<locals>.<genexpr>)r9�measured_widthsrZr1rVr"�mathZceil�maxrrJr#)r%rBr/r#r&r&r'�rewrap�s
 zTable.rewrapcCs"d}|D]}t|t|j��}q|S)zfFor a given line, compute the number of physical lines it spans
        due to text wrapping.
        r)r`r@r")r%rHZphysical_linesrBr&r&r'�physical_lines_for_line�szTable.physical_lines_for_linecs6g}���dttttd��fdd�
}t�j�D]�\}}�jr\|�jkr\|�|d|��n|�|d|��t��	|��D]�}dg}t|�D]|\}}|j
|kr�q�||jkr�d}	n|t|j
�kr�d}	n
|j
|}	t|	�t|	�}
|�d|	���|�j�d	|
�d�q�|�d�|��qzq2|�|d��d
�|�S)N�-)�char�linenor cs�g}t�j�D]Z\}}|durV|dkrV�||f�|d|furV|�d|d�q|�||d�q|dddkr~dnd}|d	ddkr�dnd}d
d�t||dd��D�}|�|�|d�t�t||���S)
zfCalled on the line *before* lineno.
            Called with no *lineno* for the last sep.
            Nrr� �rc�+�|���cSs0g|](\}}|ddks$|ddkr(dnd�qS)rrcrhrir&)rO�left�rightr&r&r'�
<listcomp>�s�z3Table.__str__.<locals>.writesep.<locals>.<listcomp>r)�	enumerater^rL�ziprRr�
from_iterable)rdre�out�colnor/�head�tailZgluer+r&r'�writesep�s"����
zTable.__str__.<locals>.writesep�=rirrfrrM)rcN)rar6r
r7rnr;r<rLrJrbr#r$r@r"r�ljustrVr^rR)r%rqrurerHZ
physical_lineZlinestrrrrBZ
physical_textZ
adjust_lenr&r+r'�__str__�s<


����z
Table.__str__)N)r2r3r4r5r	r7r(r?rArrCrrIrKrFrGr6r,rV�propertyrrZrarbrxr&r&r&r'r86s -


	r8cs�eZdZdZe�d�Zeeeed�dd�Z	ee
eeefd�dd�Zeeed	��fd
d�Z
eeeee
e
dd
�dd�Z�ZS)�TextWrapperz;Custom subclass that uses a different word separator regex.zf(\s+|(?<=\s)(?::[a-z-]+:)?`\S+|[^\s\w]*\w+[a-zA-Z]-(?=\w+[a-zA-Z])|(?<=[\w\!\"\'\&\.\,\?])-{2,}(?=\w)))�chunksr cCsg}|jdkrtd|j��|��|�rg}d}|r>|j}n|j}|jt|�}|jrr|d��dkrr|rr|d=|r�t|d�}|||kr�|�|�	��||7}qrq�qr|r�t|d�|kr�|�
||||�|jr�|r�|d��dkr�|d=|r$|�|d�|��q$|S)z�_wrap_chunks(chunks : [string]) -> [string]

        The original _wrap_chunks uses len() to calculate width.
        This method respects wide/fullwidth characters for width adjustment.
        rzinvalid width %r (must be > 0)rjr)r/�
ValueError�reverse�subsequent_indent�initial_indentrZdrop_whitespace�striprL�pop�_handle_long_wordrR)r%r{r;�cur_line�cur_len�indentr/�lr&r&r'�_wrap_chunkss4

zTextWrapper._wrap_chunks)�word�
space_leftr cCsVd}t|�D]@\}}|t|�7}||kr|d|d�||dd�fSq|dfS)z�_break_word(word : string, space_left : int) -> (string, string)

        Break line by unicode width instead of len(word).
        rNrr)rnr)r%r�r��totalrU�cr&r&r'�_break_word5s&zTextWrapper._break_word�rr csptttd���fdd�}g}||�D]D}t|t�D]4\}}|dkrZ|�|d�|���q4|�t|��q4q&|S)z�_split(text : string) -> [string]

        Override original method that only split by 'wordsep_re'.
        This '_split' splits wide-characters into chunks by one character.
        )�tr cstt���|�Sr!)�superrz�_split)r�)�	__class__r%r&r'�splitGsz!TextWrapper._split.<locals>.splitrr)r6r	rr�extendrR�list)r%rr�r{�chunk�w�g�r�r+r'r�AszTextWrapper._splitN)�reversed_chunksr�r�r/r cCsRt||d�}|jr<|�|d|�\}}|�|�||d<n|sN|�|���dS)z�_handle_long_word(chunks : [string],
                             cur_line : [string],
                             cur_len : int, width : int)

        Override original method for using self._break_word() instead of slice.
        rrjN)r`Zbreak_long_wordsr�rLr�)r%r�r�r�r/r�r��rr&r&r'r�Rs

zTextWrapper._handle_long_word)r2r3r4r5�re�compileZ
wordsep_rer	r6r�r7rr�r�r��
__classcell__r&r&r�r'rz�s�/�rz�FrT)rr/�kwargsr cKstfd|i|��}|�|�S)Nr/)rzr1)rr/r�r�r&r&r'r0hsr0csTeZdZUdZdZiZeed<dZe	ed<ddd��fdd	�Z
dd
�dd�Z�ZS)
�
TextWriter)r)zNo options here.rr&�settings_defaultsN�outputr)�builderr cst���||_dSr!)r�r(r�)r%r�r�r&r'r(ts
zTextWriter.__init__r)cCs0|j�|j|j�}|j�|�tt|�j|_dSr!)r�Zcreate_translator�documentZ	walkaboutr�TextTranslator�bodyr�)r%Zvisitorr&r&r'�	translatexszTextWriter.translate)
r2r3r4Z	supportedZ
settings_specr�r�__annotations__r�r6r(r�r�r&r&r�r'r�ms
r�cs�
eZdZUdZded<ejddd��fdd�Zedd�dd	�Z	e
fedd
�dd�Zd
dgdfe
eeedd�dd�Zedd�dd�Zedd�dd�Zedd�dd�Zedd�dd�Zedd�dd�Zedd�dd�ZeZeZedd�dd �Zedd�d!d"�Zedd�d#d$�Zedd�d%d&�Zedd�d'd(�Zedd�d)d*�Zedd�d+d,�Zeed�d-d.�Z edd�d/d0�Z!edd�d1d2�Z"edd�d3d4�Z#edd�d5d6�Z$edd�d7d8�Z%edd�d9d:�Z&edd�d;d<�Z'edd�d=d>�Z(edd�d?d@�Z)edd�dAdB�Z*edd�dCdD�Z+edd�dEdF�Z,edd�dGdH�Z-edd�dIdJ�Z.edd�dKdL�Z/edd�dMdN�Z0edd�dOdP�Z1edd�dQdR�Z2edd�dSdT�Z3edd�dUdV�Z4edd�dWdX�Z5edd�dYdZ�Z6edd�d[d\�Z7edd�d]d^�Z8edd�d_d`�Z9edd�dadb�Z:edd�dcdd�Z;edd�dedf�Z<edd�dgdh�Z=edd�didj�Z>edd�dkdl�Z?edd�dmdn�Z@edd�dodp�ZAedd�dqdr�ZBedd�dsdt�ZCedd�dudv�ZDedd�dwdx�ZEedd�dydz�ZFedd�d{d|�ZGedd�d}d~�ZHedd�dd��ZIedd�d�d��ZJedd�d�d��ZKedd�d�d��ZLedd�d�d��ZMedd�d�d��ZNedd�d�d��ZOedd�d�d��ZPedd�d�d��ZQedd�d�d��ZRedd�d�d��ZSedd�d�d��ZTedd�d�d��ZUedd�d�d��ZVedd�d�d��ZWedd�d�d��ZXedd�d�d��ZYedd�d�d��ZZedd�d�d��Z[edd�d�d��Z\edd�d�d��Z]edd�d�d��Z^edd�d�d��Z_edd�d�d��Z`edd�d�d��Zaedd�d�d��Zbedd�d�d��Zcedd�d�d��Zdedd�d�d��Zeedd�d�d��Zfedd�d�d��Zgedd�d�d��Zhedd�d�d��Ziedd�d�d„Zjedd�d�dĄZkedd�d�dƄZledd�d�dȄZmedd�d�dʄZnedd�d�d̄Zoedd�d�d΄Zpedd�d�dЄZqedd�d�d҄Zredd�d�dԄZsedd�d�dքZtedd�d�d؄Zuedd�d�dڄZvedd�d�d܄Zwedd�d�dބZxedd�d�d�Zyedd�d�d�Zzedd�d�d�Z{edd�d�d�Z|edd�d�d�Z}edd�d�d�Z~edd�d�d�Zedd�d�d�Z�edd�d�d�Z�edd�d�d�Z�edd�d�d�Z�edd�d�d��Z�edd�d�d��Z�edd�d�d��Z�edd�d�d��Z�edd�d�d��Z�edd�d��d�Z�edd��d�d�Z�edd��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�e�Z�e�Z�edd��d�d�Z�edd��d�d�Z�edd��d	�d
�Z�edd��d�d�Z�edd��d
�d�Z�edd��d�d�Z�edd��d�d�Z�edd��d�d�Z�edd��d�d�Z�edd��d�d�Z�edd��d�d�Z�edd��d�d�Z�edd��d�d�Z�edd��d�d �Z�edd��d!�d"�Z�edd��d#�d$�Z�edd��d%�d&�Z�edd��d'�d(�Z�edd��d)�d*�Z�edd��d+�d,�Z�edd��d-�d.�Z�edd��d/�d0�Z�edd��d1�d2�Z�edd��d3�d4�Z�edd��d5�d6�Z�edd��d7�d8�Z�edd��d9�d:�Z�edd��d;�d<�Z�edd��d=�d>�Z�edd��d?�d@�Z�edd��dA�dB�Z�edd��dC�dD�Z�edd��dE�dF�Z�edd��dG�dH�Z�edd��dI�dJ�Z�edd��dK�dL�Z�edd��dM�dN�Z�edd��dO�dP�Z�edd��dQ�dR�Z�edd��dS�dT�Z�edd��dU�dV�Z�edd��dW�dX�Z�edd��dY�dZ�Z�edd��d[�d\�Z�edd��d]�d^�Z�edd��d_�d`�Z�edd��da�db�Z�edd��dc�dd�Z�edd��de�df�Z�e�dd��dg�dh�Z�e�dd��di�dj�Z�edd��dk�dl�Z�edd��dm�dn�Z�edd��do�dp�Z�edd��dq�dr�Z�edd��ds�dt�Z�edd��du�dv�Z�edd��dw�dx�Z�edd��dy�dz�Z�edd��d{�d|�Z�edd��d}�d~�Z�edd��d�d��Z�edd��d��d��Z�edd��d��d��Z�edd��d��d��Z�edd��d��d��Z�edd��d��d��Z�Z�S(�r�Nrr�)r�r�r cs�t��||�|jj}|dkr&d|_n|dkr8tj|_nd|_|jj|_|jj	|_
|jj|_gg|_
dg|_g|_d|_d|_d|_dS)NZwindowsz
ZnativerMr)r�r(ZconfigZ
text_newlines�nl�os�linesepZtext_sectionchars�sectioncharsZtext_add_secnumbers�add_secnumbersZtext_secnumber_suffix�secnumber_suffix�states�stateindent�list_counter�sectionlevel�lineblocklevel�table)r%r�r��newlinesr�r&r'r(�s 



zTextTranslator.__init__r�cCs|jd�d|f�dS�Nrj)r�rL)r%rr&r&r'�add_text�szTextTranslator.add_text)r�r cCs|j�g�|j�|�dSr!)r�rLr�)r%r�r&r&r'�	new_state�szTextTranslator.new_stateTr)r1�end�firstr c
s|j��}t|j��|j���g�g�dd�������fdd�}|D]8\}}|dkrb��|�qF|����||f�g�qF|�|dur�r�dd�}�dddgkrȈ�d||gf�n(|�dd�d�}	��d||	gf�|jd���dS)Nr)csP�sdS�r$td���t�d�}nd�����}�r>|�7}���|f�dS)Nrr[)r0rR�MAXWIDTH�
splitlinesrL)�res�r�r�Z	maxindent�resultZtoformatr1r&r'�	do_format�sz+TextTranslator.end_state.<locals>.do_formatrjrrr)r�r��sumr�rL�insertr�)
r%r1r�r�Zcontentr�Z
itemindent�itemZ	newindentrr&r�r'�	end_state�s(



zTextTranslator.end_state)�noder cCs|�d�dSr:�r��r%r�r&r&r'�visit_document�szTextTranslator.visit_documentcCs*|��|j�dd�|jdD��|_dS)Ncss,|]$\}}|D]}|o d||VqqdS)rfNr&)rOr�r;rHr&r&r'rP�s�z1TextTranslator.depart_document.<locals>.<genexpr>r)r�r�rRr�r�r�r&r&r'�depart_document�s�zTextTranslator.depart_documentcCs |j|j|_|jd7_dSrE)r�r��_title_charr�r&r&r'�
visit_section�szTextTranslator.visit_sectioncCs|jd8_dSrE)r�r�r&r&r'�depart_section�szTextTranslator.depart_sectioncCs|�d�dSr:r�r�r&r&r'�visit_topic�szTextTranslator.visit_topiccCs|��dSr!�r�r�r&r&r'�depart_topic�szTextTranslator.depart_topiccCs|�d�|�d�dS)Nrz-[ )r�r�r�r&r&r'�visit_rubric�s
zTextTranslator.visit_rubriccCs|�d�|��dS)Nz ]-�r�r�r�r&r&r'�
depart_rubric�s
zTextTranslator.depart_rubriccCsdSr!r&r�r&r&r'�visit_compound�szTextTranslator.visit_compoundcCsdSr!r&r�r&r&r'�depart_compound�szTextTranslator.depart_compoundcCsdSr!r&r�r&r&r'�visit_glossary�szTextTranslator.visit_glossarycCsdSr!r&r�r&r&r'�depart_glossary�szTextTranslator.depart_glossarycCs4t|jtj�r&|�|��d�tj�|�d�dS)N�: r)�
isinstance�parentr�
Admonitionr��astext�SkipNoder�r�r&r&r'�visit_title�szTextTranslator.visit_titlecCsft|jtj�rbd|jdd}|jj�|�}|durD|jj�d�}|durbd�tt	|��|j
SdS)N�#Zidsrr�.)r�r�r�sectionr�Z
secnumbers�getrR�mapr6r�)r%r�Z
anchorname�numbersr&r&r'�get_section_number_string�sz(TextTranslator.get_section_number_stringcCs�t|jtj�r|j}nd}d}d�dd�|j��D��}|jrL|�	|�|}|j
��d|d|t|�dg}t|j�dkr�t|jd�dkr�|�d�|jd�
d|f�dS)	N�^rcss"|]}|ddkr|dVqdS)rrjrNr&r\r&r&r'rPrQz.TextTranslator.depart_title.<locals>.<genexpr>z%srgrjr)r�r�rr�r�rRr�r�r�r�r�rr@rL)r%r�rdr�titler&r&r'�depart_title�s
 
zTextTranslator.depart_titlecCsdSr!r&r�r&r&r'�visit_subtitleszTextTranslator.visit_subtitlecCsdSr!r&r�r&r&r'�depart_subtitleszTextTranslator.depart_subtitlecCs|�d�dS)Nz-- �r�r�r&r&r'�visit_attributionsz TextTranslator.visit_attributioncCsdSr!r&r�r&r&r'�depart_attributionsz!TextTranslator.depart_attributioncCsdSr!r&r�r&r&r'�
visit_desc!szTextTranslator.visit_desccCsdSr!r&r�r&r&r'�depart_desc$szTextTranslator.depart_desccCs|�d�dSr:r�r�r&r&r'�visit_desc_signature'sz#TextTranslator.visit_desc_signaturecCs|jddd�dS)NF�r1r�r�r�r&r&r'�depart_desc_signature*sz$TextTranslator.depart_desc_signaturecCsdSr!r&r�r&r&r'�visit_desc_signature_line.sz(TextTranslator.visit_desc_signature_linecCs|�d�dS�NrMr�r�r&r&r'�depart_desc_signature_line1sz)TextTranslator.depart_desc_signature_linecCs|��|�|j�dSr!)r�r�r�r�r&r&r'�visit_desc_content4sz!TextTranslator.visit_desc_contentcCs|��dSr!r�r�r&r&r'�depart_desc_content8sz"TextTranslator.depart_desc_contentcCsdSr!r&r�r&r&r'�visit_desc_inline;sz TextTranslator.visit_desc_inlinecCsdSr!r&r�r&r&r'�depart_desc_inline>sz!TextTranslator.depart_desc_inlinecCsdSr!r&r�r&r&r'�visit_desc_nameDszTextTranslator.visit_desc_namecCsdSr!r&r�r&r&r'�depart_desc_nameGszTextTranslator.depart_desc_namecCsdSr!r&r�r&r&r'�visit_desc_addnameJsz!TextTranslator.visit_desc_addnamecCsdSr!r&r�r&r&r'�depart_desc_addnameMsz"TextTranslator.depart_desc_addnamecCsdSr!r&r�r&r&r'�visit_desc_typePszTextTranslator.visit_desc_typecCsdSr!r&r�r&r&r'�depart_desc_typeSszTextTranslator.depart_desc_typecCs|�d�dS)Nz -> r�r�r&r&r'�visit_desc_returnsVsz!TextTranslator.visit_desc_returnscCsdSr!r&r�r&r&r'�depart_desc_returnsYsz"TextTranslator.depart_desc_returnscCs|�d�d|_dS)N�(r)r��first_paramr�r&r&r'�visit_desc_parameterlist\s
z'TextTranslator.visit_desc_parameterlistcCs|�d�dS)N�)r�r�r&r&r'�depart_desc_parameterlist`sz(TextTranslator.depart_desc_parameterlistcCs0|js|�d�nd|_|�|���tj�dS)N�, r)rr�r�rr�r�r&r&r'�visit_desc_parametercs
z#TextTranslator.visit_desc_parametercCs|�d�dS)N�[r�r�r&r&r'�visit_desc_optionalksz"TextTranslator.visit_desc_optionalcCs|�d�dS)N�]r�r�r&r&r'�depart_desc_optionalnsz#TextTranslator.depart_desc_optionalcCsdSr!r&r�r&r&r'�visit_desc_annotationqsz$TextTranslator.visit_desc_annotationcCsdSr!r&r�r&r&r'�depart_desc_annotationtsz%TextTranslator.depart_desc_annotationcCs|��dSr!r�r�r&r&r'�visit_figureyszTextTranslator.visit_figurecCs|��dSr!r�r�r&r&r'�
depart_figure|szTextTranslator.depart_figurecCsdSr!r&r�r&r&r'�
visit_captionszTextTranslator.visit_captioncCsdSr!r&r�r&r&r'�depart_caption�szTextTranslator.depart_captioncCs�|��g}tttj|�}|D]}|�|d�q tdd�|D��}d}|D]`}|dr||�|d�|�d�|d}n|dur�|�ddt	|��|�|�
�|j�qN|jdd�t
j�dS)	NZ	tokennamecss|]}t|�VqdSr!�r@)rO�namer&r&r'rP�rQz6TextTranslator.visit_productionlist.<locals>.<genexpr>z ::=z%s    rfF�r1)r�rrr�
productionrLr`r�rwr@r�r�r�rr�)r%r��namesZproductionlistr�maxlenZlastnamer&r&r'�visit_productionlist�s 
z#TextTranslator.visit_productionlistcCs6ttj|d�}|����|_|�t|j�d�dS)NrrT)rr�labelr�r��	_footnoter�r@)r%r�rr&r&r'�visit_footnote�szTextTranslator.visit_footnotecCs|jd|jd�dS�Nz[%s] �r�)r�rr�r&r&r'�depart_footnote�szTextTranslator.depart_footnotecCsFt|�r(t|dtj�r(|d��|_nd|_|�t|j�d�dS)NrrrT)r@r�rrr��	_citlabelr�r�r&r&r'�visit_citation�szTextTranslator.visit_citationcCs|jd|jd�dSr)r�rr�r&r&r'�depart_citation�szTextTranslator.depart_citationcCs
tj�dSr!�rr�r�r&r&r'�visit_label�szTextTranslator.visit_labelcCsdSr!r&r�r&r&r'�visit_legend�szTextTranslator.visit_legendcCsdSr!r&r�r&r&r'�
depart_legend�szTextTranslator.depart_legendcCsdSr!r&r�r&r&r'�visit_option_list�sz TextTranslator.visit_option_listcCsdSr!r&r�r&r&r'�depart_option_list�sz!TextTranslator.depart_option_listcCs|�d�dSr:r�r�r&r&r'�visit_option_list_item�sz%TextTranslator.visit_option_list_itemcCs|��dSr!r�r�r&r&r'�depart_option_list_item�sz&TextTranslator.depart_option_list_itemcCs
d|_dS)NT)�_firstoptionr�r&r&r'�visit_option_group�sz!TextTranslator.visit_option_groupcCs|�d�dS)Nz     r�r�r&r&r'�depart_option_group�sz"TextTranslator.depart_option_groupcCs|jrd|_n
|�d�dS)NFr)r*r�r�r&r&r'�visit_option�szTextTranslator.visit_optioncCsdSr!r&r�r&r&r'�
depart_option�szTextTranslator.depart_optioncCsdSr!r&r�r&r&r'�visit_option_string�sz"TextTranslator.visit_option_stringcCsdSr!r&r�r&r&r'�depart_option_string�sz#TextTranslator.depart_option_stringcCs|�|d�dS)NZ	delimiterr�r�r&r&r'�visit_option_argument�sz$TextTranslator.visit_option_argumentcCsdSr!r&r�r&r&r'�depart_option_argument�sz%TextTranslator.depart_option_argumentcCsdSr!r&r�r&r&r'�visit_description�sz TextTranslator.visit_descriptioncCsdSr!r&r�r&r&r'�depart_description�sz!TextTranslator.depart_descriptioncCs
tj�dSr!r"r�r&r&r'�visit_tabular_col_spec�sz%TextTranslator.visit_tabular_col_speccCs|jj�|d�tj�dS)Nr9)r�r9rLrr�r�r&r&r'�
visit_colspec�szTextTranslator.visit_colspeccCsdSr!r&r�r&r&r'�visit_tgroup�szTextTranslator.visit_tgroupcCsdSr!r&r�r&r&r'�
depart_tgroup�szTextTranslator.depart_tgroupcCsdSr!r&r�r&r&r'�visit_thead�szTextTranslator.visit_theadcCsdSr!r&r�r&r&r'�depart_thead�szTextTranslator.depart_theadcCs|j��dSr!)r�rAr�r&r&r'�visit_tbody�szTextTranslator.visit_tbodycCsdSr!r&r�r&r&r'�depart_tbody�szTextTranslator.depart_tbodycCs|jjr|j��dSr!)r�r;r?r�r&r&r'�	visit_row�szTextTranslator.visit_rowcCsdSr!r&r�r&r&r'�
depart_row�szTextTranslator.depart_rowcCs4t|�dd�d|�dd�dd�|_|�d�dS)NZmorerowsrrZmorecols)rr)rr��entryr�r�r&r&r'�visit_entrys�zTextTranslator.visit_entrycsJ�j��fdd��j��D��}�j��|�j_�j��j�d�_dS)Nc3s|]}�j�|d�VqdS)rN)r�rRr\r+r&r'rPrQz.TextTranslator.depart_entry.<locals>.<genexpr>)	r�rRr�r�r�r?rr�rC�r%r�rr&r+r'�depart_entrys
 
zTextTranslator.depart_entrycCs$|jrtd��|�d�t�|_dS)Nz Nested tables are not supported.r)r��NotImplementedErrorr�r8r�r&r&r'�visit_tables
zTextTranslator.visit_tablecCs&|�t|j��d|_|jdd�dS�NFr)r�r6r�r�r�r&r&r'�depart_tableszTextTranslator.depart_tablecCsZttj|d�}tttj|�}|�d�|�d�dd�|D��d�|��tj	�dS)Nrrcss|]}|��VqdSr!)r�)rO�nr&r&r'rPrQz,TextTranslator.visit_acks.<locals>.<genexpr>r�)
rr�bullet_listrZ	list_itemr�r�rRr�r�)r%r�rHZ
list_itemsr&r&r'�
visit_ackss
zTextTranslator.visit_ackscCs8d|jvr |�td�|d�|�td��tj�dS)NZaltz[image: %s]z[image])Z
attributesr�rrr�r�r&r&r'�visit_image!s
zTextTranslator.visit_imagecCs8t|j�}|�d�|�dt|�|��tj�dS)Nrrv)r�r�r�r�r�r�rr�)r%r�r�r&r&r'�visit_transition's


zTextTranslator.visit_transitioncCs|j�d�dSr��r�rLr�r&r&r'�visit_bullet_list.sz TextTranslator.visit_bullet_listcCs|j��dSr!�r�r�r�r&r&r'�depart_bullet_list1sz!TextTranslator.depart_bullet_listcCs|j�|�dd�d�dS)N�startr)r�rLr�r�r&r&r'�visit_enumerated_list4sz$TextTranslator.visit_enumerated_listcCs|j��dSr!rNr�r&r&r'�depart_enumerated_list7sz%TextTranslator.depart_enumerated_listcCs|j�d�dS)N���rLr�r&r&r'�visit_definition_list:sz$TextTranslator.visit_definition_listcCs|j��dSr!rNr�r&r&r'�depart_definition_list=sz%TextTranslator.depart_definition_listcCs\|jddkr|�d�n>|jddkr*n.|jdd7<|�tt|jd��d�dS)NrjrgrSr)r�r�r@r6r�r&r&r'�visit_list_item@szTextTranslator.visit_list_itemcCsF|jddkr|jdd�n&|jddkr,n|jd|jdd�dS)Nrjz* rrSz%s. )r�r�r�r&r&r'�depart_list_itemLs
zTextTranslator.depart_list_itemcCstt|�tj���|_dSr!)r@r��findallrZ
classifier�_classifier_count_in_lir�r&r&r'�visit_definition_list_itemTsz)TextTranslator.visit_definition_list_itemcCsdSr!r&r�r&r&r'�depart_definition_list_itemWsz*TextTranslator.depart_definition_list_itemcCs|�d�dSr:r�r�r&r&r'�
visit_termZszTextTranslator.visit_termcCs|js|jdd�dS)N�r��rYr�r�r&r&r'�depart_term]szTextTranslator.depart_termcCs|�d�dS)Nz : r�r�r&r&r'�visit_classifieraszTextTranslator.visit_classifiercCs$|jd8_|js |jdd�dS)Nrr]r^r�r&r&r'�depart_classifierdsz TextTranslator.depart_classifiercCs|��dSr!r�r�r&r&r'�visit_definitioniszTextTranslator.visit_definitioncCs|��dSr!r�r�r&r&r'�depart_definitionlsz TextTranslator.depart_definitioncCsdSr!r&r�r&r&r'�visit_field_listoszTextTranslator.visit_field_listcCsdSr!r&r�r&r&r'�depart_field_listrsz TextTranslator.depart_field_listcCsdSr!r&r�r&r&r'�visit_fielduszTextTranslator.visit_fieldcCsdSr!r&r�r&r&r'�depart_fieldxszTextTranslator.depart_fieldcCs|�d�dSr:r�r�r&r&r'�visit_field_name{szTextTranslator.visit_field_namecCs|�d�|jdd�dS)N�:r]r�r�r&r&r'�depart_field_name~s
z TextTranslator.depart_field_namecCs|��dSr!r�r�r&r&r'�visit_field_body�szTextTranslator.visit_field_bodycCs|��dSr!r�r�r&r&r'�depart_field_body�sz TextTranslator.depart_field_bodycCsdSr!r&r�r&r&r'�visit_centered�szTextTranslator.visit_centeredcCsdSr!r&r�r&r&r'�depart_centered�szTextTranslator.depart_centeredcCsdSr!r&r�r&r&r'�visit_hlist�szTextTranslator.visit_hlistcCsdSr!r&r�r&r&r'�depart_hlist�szTextTranslator.depart_hlistcCsdSr!r&r�r&r&r'�visit_hlistcol�szTextTranslator.visit_hlistcolcCsdSr!r&r�r&r&r'�depart_hlistcol�szTextTranslator.depart_hlistcolcCs|�d�dSr:r�r�r&r&r'�visit_admonition�szTextTranslator.visit_admonitioncCs|��dSr!r�r�r&r&r'�depart_admonition�sz TextTranslator.depart_admonitioncCs|�d�dS)Nrgr�r�r&r&r'�_visit_admonition�sz TextTranslator._visit_admonitioncCs�t|j}t|j�t|�}t|jd�dkr�|jddddkr�t|tdd�|jdddD��kr�|jdt|�7<|j|dd�n*|jd�dd|j	gf�|j|dd�dS)	Nrjrrcss|]}t|�VqdSr!r)rO�sr&r&r'rP�rQz4TextTranslator._depart_admonition.<locals>.<genexpr>r�rri)
rZtagnamer�r�r@r�r�r�r�r�)r%r�rr�r&r&r'�_depart_admonition�s
�&�z!TextTranslator._depart_admonitioncCs|�d�dSr:r�r�r&r&r'�visit_versionmodified�sz$TextTranslator.visit_versionmodifiedcCs|��dSr!r�r�r&r&r'�depart_versionmodified�sz%TextTranslator.depart_versionmodifiedcCs|��dSr!r�r�r&r&r'�visit_literal_block�sz"TextTranslator.visit_literal_blockcCs|jdd�dSrEr�r�r&r&r'�depart_literal_block�sz#TextTranslator.depart_literal_blockcCs|�d�dSr:r�r�r&r&r'�visit_doctest_block�sz"TextTranslator.visit_doctest_blockcCs|jdd�dSrEr�r�r&r&r'�depart_doctest_block�sz#TextTranslator.depart_doctest_blockcCs|��|jd7_dSrE)r�r�r�r&r&r'�visit_line_block�szTextTranslator.visit_line_blockcCs0|jd8_|jddd�|js,|�d�dS)NrFr�rM)r�r�r�r�r&r&r'�depart_line_block�sz TextTranslator.depart_line_blockcCsdSr!r&r�r&r&r'�
visit_line�szTextTranslator.visit_linecCs|�d�dSr�r�r�r&r&r'�depart_line�szTextTranslator.depart_linecCs|��dSr!r�r�r&r&r'�visit_block_quote�sz TextTranslator.visit_block_quotecCs|��dSr!r�r�r&r&r'�depart_block_quote�sz!TextTranslator.depart_block_quotecCsdSr!r&r�r&r&r'�visit_compact_paragraph�sz&TextTranslator.visit_compact_paragraphcCsdSr!r&r�r&r&r'�depart_compact_paragraph�sz'TextTranslator.depart_compact_paragraphcCs*t|jtj�rt|jtj�r&|�d�dSr:)r�r�rr�r�seealsor�r�r&r&r'�visit_paragraph�s�zTextTranslator.visit_paragraphcCs(t|jtj�rt|jtj�r$|��dSr!)r�r�rr�rr�r�r�r&r&r'�depart_paragraph�s�zTextTranslator.depart_paragraphcCs
tj�dSr!r"r�r&r&r'�visit_target�szTextTranslator.visit_targetcCs
tj�dSr!r"r�r&r&r'�visit_indexszTextTranslator.visit_indexcCs
tj�dSr!r"r�r&r&r'�
visit_toctreeszTextTranslator.visit_toctreecCs
tj�dSr!r"r�r&r&r'�visit_substitution_definitionsz,TextTranslator.visit_substitution_definitioncCsdSr!r&r�r&r&r'�visit_pending_xref
sz!TextTranslator.visit_pending_xrefcCsdSr!r&r�r&r&r'�depart_pending_xref
sz"TextTranslator.depart_pending_xrefcCs8|jr4|�d�}|dur4|�d�tt|��|j�dS)NZ	secnumberr�)r�r�r�rRr�r6r�)r%r�r�r&r&r'�visit_references
zTextTranslator.visit_referencecCsdSr!r&r�r&r&r'�depart_referenceszTextTranslator.depart_referencecCs&t�|�dd��}|�|�tj�dS)Nr�r�)rrr��
visit_Textr�rAr&r&r'�visit_number_references
z%TextTranslator.visit_number_referencecCsdSr!r&r�r&r&r'�visit_download_referencesz'TextTranslator.visit_download_referencecCsdSr!r&r�r&r&r'�depart_download_reference!sz(TextTranslator.depart_download_referencecCs|�d�dS�N�*r�r�r&r&r'�visit_emphasis$szTextTranslator.visit_emphasiscCs|�d�dSr�r�r�r&r&r'�depart_emphasis'szTextTranslator.depart_emphasiscCs|�d�dSr�r�r�r&r&r'�visit_literal_emphasis*sz%TextTranslator.visit_literal_emphasiscCs|�d�dSr�r�r�r&r&r'�depart_literal_emphasis-sz&TextTranslator.depart_literal_emphasiscCs|�d�dS�Nz**r�r�r&r&r'�visit_strong0szTextTranslator.visit_strongcCs|�d�dSr�r�r�r&r&r'�
depart_strong3szTextTranslator.depart_strongcCs|�d�dSr�r�r�r&r&r'�visit_literal_strong6sz#TextTranslator.visit_literal_strongcCs|�d�dSr�r�r�r&r&r'�depart_literal_strong9sz$TextTranslator.depart_literal_strongcCs|�d�dS)Nrr�r�r&r&r'�visit_abbreviation<sz!TextTranslator.visit_abbreviationcCs |�d�r|�d|d�dS)NZexplanationz (%s))�hasattrr�r�r&r&r'�depart_abbreviation?s
z"TextTranslator.depart_abbreviationcCs
|�|�Sr!)r�r�r&r&r'�
visit_manpageCszTextTranslator.visit_manpagecCs
|�|�Sr!)r�r�r&r&r'�depart_manpageFszTextTranslator.depart_manpagecCs|�d�dSr�r�r�r&r&r'�visit_title_referenceIsz$TextTranslator.visit_title_referencecCs|�d�dSr�r�r�r&r&r'�depart_title_referenceLsz%TextTranslator.depart_title_referencecCs|�d�dS�N�"r�r�r&r&r'�
visit_literalOszTextTranslator.visit_literalcCs|�d�dSr�r�r�r&r&r'�depart_literalRszTextTranslator.depart_literalcCs|�d�dS)Nrr�r�r&r&r'�visit_subscriptUszTextTranslator.visit_subscriptcCsdSr!r&r�r&r&r'�depart_subscriptXszTextTranslator.depart_subscriptcCs|�d�dS)Nr�r�r�r&r&r'�visit_superscript[sz TextTranslator.visit_superscriptcCsdSr!r&r�r&r&r'�depart_superscript^sz!TextTranslator.depart_superscriptcCs|�d|���tj�dS�Nz[%s]�r�r�rr�r�r&r&r'�visit_footnote_referenceasz'TextTranslator.visit_footnote_referencecCs|�d|���tj�dSr�r�r�r&r&r'�visit_citation_referenceesz'TextTranslator.visit_citation_referencecCs|�|���dSr!)r�r�r�r&r&r'r�iszTextTranslator.visit_TextcCsdSr!r&r�r&r&r'�depart_TextlszTextTranslator.depart_TextcCsdSr!r&r�r&r&r'�visit_generatedoszTextTranslator.visit_generatedcCsdSr!r&r�r&r&r'�depart_generatedrszTextTranslator.depart_generatedcCs&d|dvsd|dvr"|�d�dS�NZxref�classesZtermr�r�r�r&r&r'�visit_inlineuszTextTranslator.visit_inlinecCs&d|dvsd|dvr"|�d�dSr�r�r�r&r&r'�
depart_inlineyszTextTranslator.depart_inlinecCsdSr!r&r�r&r&r'�visit_container}szTextTranslator.visit_containercCsdSr!r&r�r&r&r'�depart_container�szTextTranslator.depart_containercCs|�d�dS)Nz>>r�r�r&r&r'�visit_problematic�sz TextTranslator.visit_problematiccCs|�d�dS)Nz<<r�r�r&r&r'�depart_problematic�sz!TextTranslator.depart_problematiccCs.|�d�|�d|���|��tj�dS)Nrz<SYSTEM MESSAGE: %s>)r�r�r�r�rr�r�r&r&r'�visit_system_message�s
z#TextTranslator.visit_system_messagecCs
tj�dSr!r"r�r&r&r'�
visit_comment�szTextTranslator.visit_commentcCs
tj�dSr!r"r�r&r&r'�
visit_meta�szTextTranslator.visit_metacCsBd|�dd���vr8|�d�|�|���|jdd�tj�dS)Nrr*rrFr)r�r�r�r�r�r�rr�r�r&r&r'�	visit_raw�s

zTextTranslator.visit_rawcCsdSr!r&r�r&r&r'�
visit_math�szTextTranslator.visit_mathcCsdSr!r&r�r&r&r'�depart_math�szTextTranslator.depart_mathcCs|��dSr!r�r�r&r&r'�visit_math_block�szTextTranslator.visit_math_blockcCs|��dSr!r�r�r&r&r'�depart_math_block�sz TextTranslator.depart_math_block)�r2r3r4r�r�rr�r(r6r��	STDINDENTr7r��boolr	r�rr�r�r�r�r�r�Z
visit_sidebarZdepart_sidebarr�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�rrrrr	rrr
rrrrrrrr r!r#r$r%r&r'r(r)r+r,r-r.r/r0r1r2r3r4r5r6r7r8r9r:r;r<r=r>r@rBrDrFrIrJrKrMrOrQrRrTrUrVrWrZr[r\r_r`rarbrcrdrerfrgrhrjrkrlrmrnrorprqrrrsrtrurwZvisit_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_warningZ
visit_seealsoZdepart_seealsorxryrzr{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�r�r�r�r�r�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�~s�
"$

r�)0r5r_r�r��textwrap�	itertoolsrr�typingrrrrrr	r
rrr
rZdocutilsrrZdocutils.nodesrrZdocutils.utilsrZsphinxrZ
sphinx.localerrZsphinx.util.docutilsrZsphinx.builders.textrrr8rzr�r�r6r7r0�Writerr�r�r&r&r&r'�<module>s.	4Hg

Youez - 2016 - github.com/yon3zu
LinuXploit