Your IP : 216.73.216.213


Current Path : /opt/alt/python35/lib/python3.5/site-packages/docutils/writers/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib/python3.5/site-packages/docutils/writers/__pycache__/manpage.cpython-35.pyc



��]���@s�dZdZddlZddlZddlmZmZmZyddlZWn$ek
rvddl	j
jZYnXdZdZdZ
dZdZdZGdd	�d	ej�ZGd
d�de�ZGdd
�d
ej�ZdS)a�
Simple man page writer for reStructuredText.

Man pages (short for "manual pages") contain system documentation on unix-like
systems. The pages are grouped in numbered sections:

 1 executable programs and shell commands
 2 system calls
 3 library functions
 4 special files
 5 file formats
 6 games
 7 miscellaneous
 8 system administration

Man pages are written *troff*, a text file formatting system.

See http://www.tldp.org/HOWTO/Man-Page for a start.

Man pages have no subsection only parts.
Standard parts

  NAME ,
  SYNOPSIS ,
  DESCRIPTION ,
  OPTIONS ,
  FILES ,
  SEE ALSO ,
  BUGS ,

and

  AUTHOR .

A unix-like system keeps an index of the DESCRIPTIONs, which is accesable
by the command whatis or apropos.

ZreStructuredText�N)�nodes�writers�	languages�g@aw.
.nr rst2man-indent-level 0
.
.de1 rstReportMargin
\\$1 \\n[an-margin]
level \\n[rst2man-indent-level]
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
-
\\n[rst2man-indent0]
\\n[rst2man-indent1]
\\n[rst2man-indent2]
..
.de1 INDENT
.\" .rstReportMargin pre:
. RS \\$1
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
. nr rst2man-indent-level +1
.\" .rstReportMargin post:
..
.de UNINDENT
. RE
.\" indent \\n[an-margin]
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
.nr rst2man-indent-level -1
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
c@s4eZdZdZdZdd�Zdd�ZdS)�Writer�manpageNcCstjj|�t|_dS)N)rr�__init__�
Translator�translator_class)�self�r�I/opt/alt/python35/lib/python3.5/site-packages/docutils/writers/manpage.pyreszWriter.__init__cCs5|j|j�}|jj|�|j�|_dS)N)r
�documentZ	walkabout�astext�output)rZvisitorrrr
�	translateiszWriter.translate)r)�__name__�
__module__�__qualname__Z	supportedrrrrrrr
r]src@sXeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�TablecCs+g|_dg|_d|_g|_dS)N�center�	)�_rows�_options�	_tab_char�_coldefs)rrrr
rps		zTable.__init__cCs|jjg�dS)N)r�append)rrrr
�new_rowusz
Table.new_rowcCs|jj|g�dS)z$Append the separator for table head.N)rr)rZ	separatorrrr
�append_separatorwszTable.append_separatorcCs�d}t|�dkr.|ddkr.d}|jdj||d��t|j�t|jd�kr~|jjd�dS)zcell_lines is an array of linesrz.sp
�N�l���r!)�lenrrr)r�
cell_lines�startrrr
�append_cellzs""zTable.append_cellcCsLx!|r#|ddkr#|d=qWx!|rG|ddkrG|d	=q'WdS)
z3Remove leading and trailing blank and ``.sp`` linesr�
�.sp
rN)r&r'r!)r&r'r!r)rr#rrr
�_minimize_cell�szTable._minimize_cellcCs/dg}|jdj|j�d�|jddj|j��x�|jD]�}|jd�|jd�x�tt|��D]�}||}|j|�|j|�|d
j	d	�s�|dd	7<|t|�dkr�|jd
|j
d�q�|jd�q�WqMW|jd�|jd�|S)Nz.TS
� z;
z|%s|.
�|z_
zT{
rr&zT}zT}
z.TE
r!r!)r�joinrrr�ranger"r(�extend�endswithr)r�text�row�iZcellrrr
�as_list�s$	






z
Table.as_listN)	rrrrrrr%r(r2rrrr
rosrc@sa	eZdZdZejd�Zejd�ZdZdd�Z	dd�Z
d	d
�Zdd�Zd
d�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"d#�Zd$d%�Zd&d'�ZeZd(d)�Zd*d+�Zd,d-�ZeZd.d/�Zd0d1�Z d2d3�Z!d4d5�Z"d6d7�Z#d8d9�Z$d:d;�Z%d<d=�Z&d>d?�Z'eZ(d@dA�Z)dBdC�Z*dDdE�Z+dFdG�Z,dHdI�Z-dJdK�Z.dLdM�Z/dNdO�Z0ejdP�j1dQdR�Z2dSdT�Z3eZ4dUdV�Z5dWdX�Z6dYdZ�Z7d[d\�Z8d]d^�Z9d_d`�Z:eZ;dadb�Z<dcdd�Z=dedf�Z>dgdh�Z?didj�Z@dkdl�ZAdmdn�ZBdodp�ZCdqdr�ZDdsdt�ZEdudv�ZFdwdx�ZGdydz�ZHd{d|�ZId}d~�ZJdd��ZKd�d��ZLd�d��ZMd�d��ZNd�d��ZOd�d��ZPd�d��ZQd�d��ZRd�d��ZSeZTd�d��ZUd�d��ZVd�d��ZWd�d��ZXd�d��ZYd�d��ZZd�d��Z[d�d��Z\d�d��Z]d�d��Z^d�d��Z_d�d��Z`d�d��Zad�d��Zbd�d��Zcd�d��Zdd�d��Zed�d��Zfd�d��Zgd�d��Zhd�d��Zid�d��ZjeZkd�d��Zld�d��Zmd�d��Znd�d��Zod�d��Zpd�d��Zqd�d��Zrd�d��ZseZtd�d��Zud�d��Zvd�d��Zwd�d��Zxd�d��Zyd�d��Zzd�d��Z{d�d��Z|d�d��Z}d�d��Z~d�d��Zd�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�eZ�d�d�d��Z�d�d��Z�dd�Z�dd�Z�dd�Z�dd�Z�dd	�Z�d
d�Z�dd
�Z�dd�Z�dd�Z�dd�Z�dd�Z�dd�Z�dd�Z�dd�Z�dd�Z�dd�Z�d d!�Z�d"d#�Z�d$d%�Z�d&d'�Z�d(d)�Z�d*d+�Z�d,d-�Z�eZ�d.d/�Z�d0d1�Z�d2d3�Z�d4d5�Z�d6d7�Z�eZ�d8d9�Z�d:d;�Z�d<d=�Z�d>d?�Z�d@dA�Z�dBdC�Z�dDdE�Z�dFdG�Z�dHdI�Z�dJdK�Z�dLdM�Z�dNdO�Z�dPdQ�Z�dRdS�Z�dTdU�Z�dVdW�Z�dXdY�Z�dZd[�Z�d\d]�Z�d^d_�Z�eZ�d`da�Z�dbdc�Z�ddde�Z�dfdg�Z�dhdi�Z�djdk�Z�dldm�Z�dndo�Z�dpdq�Z�drds�Z�dtdu�Z�dvdw�Z�dxdy�Z�dzd{�Z�eZ�d|d}�Z�d!S(~r	�z	\S+| +|\nz\.\wz)Man page generated from reStructuredText.cCs�tjj||�|j|_}|j}tj||j�|_g|_	g|_
g|_d|_g|_
d|_g|_d|_d|_g|_ddddddddddd	gd
dddddi	|_g|_i|_d|_d|_d
|_d|_d|_g|_d|_dg|_dd,dd-dd.dd/dd0dd1dd2d d3d"d4d#d5d%d6d&d7d(d8d)d9i|_dS):Nrr3r�title�title_upper�subtitle�manual_section�manual_group�author�date�	copyright�versionF�indent�
.INDENT %.1f
�
.UNINDENT
�definition_list_item�.TP�
field_name�.TP
.B r&�literal�\fB�\fP�
literal_block�.sp
.nf
.ft C
�
.ft P
.fi
�option_list_item�.TP
�	reference�\fI\%�emphasis�\fI�strong�term�
.B �title_referenceztopic-title�.SS z
sidebar-title�problematic�
.nf
�
.fi
)r>r?)rAr3)rCr&)rErF)rHrI)rKr3)rMrF)rOrF)rErF)rRr&)rOrF)rT)rT)rVrW)r�NodeVisitorr�settingsZ
language_coderZget_language�reporter�language�head�body�foot�
section_level�contextZtopic_class�colspecsZ	compact_pZcompact_simple�
_list_char�_docinfo�
_docinfo_keys�_docinfo_names�_in_docinfo�
_active_table�_in_literal�header_written�_line_blockZauthors�_indent�defs)rrrYZlcoderrr
r�sZ																				zTranslator.__init__cs5d�dj�fdd�|jd�D��}|S)zPReturn commented version of the passed text WITHOUT end of
        line/comment.z.\" r3csg|]}�|d�qS)r&r)�.0Zin_line)�prefixrr
�
<listcomp>�s	z,Translator.comment_begin.<locals>.<listcomp>r&)r+�split)rr/Zout_textr)rnr
�
comment_begin�s
zTranslator.comment_begincCs|j|�dS)z,Return commented version of the passed text.z.
)rq)rr/rrr
�comment�szTranslator.commentcCs@t|j�dkr<|jdddkr<|jjd�dS)z7Ensure the last line in body is terminated by new line.rrr&Nr!r!)r"r]r)rrrr
�
ensure_eol�s,zTranslator.ensure_eolcCsu|js|j�xAtt|j�ddd�D] }|j|dkr3|j|ddd�dkr}d|j|<q3|j|ddd	�d
kr�|j|ddd�dkr�d|j|<q3|j|dd
kr3|jj|j|d�r3|j|d	dd�dksF|j|d	dd�dkr3d|j|<q3Wdj|j|j|j	�S)z0Return the final formatted document as a string.rrz.sp
N��.BI �.IP z.
�z.B �z.TP
r&rz.TP
.B z
.B r3r!)rurv)
ri�
append_headerr,r"r]�possibly_a_roff_command�matchr+r\r^)rr1rrr
r�s	
&!!!!!zTranslator.astextcCs(|jdd�}|jdd�}|S)N� z\ u†z\(dg)�replace)rr/rrr
�	deunicodeszTranslator.deunicodecCs�|j�}|jdd�}ddddg}x&|D]\}}|j||�}q7W|j|�}|jd�r�d|}|jr�|jd
d�}|jj|�dS)N�\z\e�-�\-�'�\(aq�´�\'�`�\(ga�.z\&z
.z
\&.)r�r�)r�r�)r�r�)r�r�)rr}r~�
startswithrhr]r)r�noder/Z
replace_pairsZin_charZ
out_markuprrr
�
visit_Texts	
	zTranslator.visit_TextcCsdS)Nr)rr�rrr
�depart_Text+szTranslator.depart_Textcs�G�fdd�dt�}d�krE|jj|�d��n|jj|d��t|j�dkr�|j|jdj��n|j|jdj��dS)	NcsXeZdZddddiZ�fdd�Zdd�Zd	d
�Zdd�Zd
S)z(Translator.list_start.<locals>.enum_char�bulletz\(bu�emdashz\(emcs||_d�kr)�dd|_n	d|_d|_|dkr�ttt�j���|_|jtt|j��d7_nz|dkr�|jtd�d7_d|_nI|d	kr�|jtd
�d7_d|_n|jd�rd|_dS)
Nr$rrrx�arabic�
loweralpha�arw�
upperalpha�A�roman�)�_style�_cntrkr"�str�children�ordr.)rZstyle)r�rr
r5s 			%z1Translator.list_start.<locals>.enum_char.__init__cSs�|jdkr|j|jS|jdkr:|j|jS|jd7_|jdkrcd|jS|jdkr}d|jS|jjd	�r�tj|j�d
}|jjd�r�|j�S|j�Sd|jSdS)
Nr�r�rr�z%d.r�r�z%c.r�r��upper)r�r�)	r��
enum_styler�r.r�ZtoRomanr�r��lower)r�resrrr
�__next__Js

z1Translator.list_start.<locals>.enum_char.__next__cSs|jS)N)rk)rrrr
�	get_width\sz2Translator.list_start.<locals>.enum_char.get_widthcSsdt|j�S)Nz
enum_style-%s)�listr�)rrrr
�__repr__^sz1Translator.list_start.<locals>.enum_char.__repr__N)rrrr�rr�r�r�r)r�rr
�	enum_char/sr�Zenumtyper�rrx���r!)�objectrbrr"r=r�)rr�r�r)r�r
�
list_start.s2zTranslator.list_startcCs|j�|jj�dS)N)�dedentrb�pop)rrrr
�list_endks
zTranslator.list_endcCsd}||jS)Nzv.TH %(title_upper)s %(manual_section)s "%(date)s" "%(version)s" "%(manual_group)s"
.SH NAME
%(title)s \- %(subtitle)s
)rc)rZtmplrrr
�headeroszTranslator.headercCs@|jr
dS|jj|j��|jjt�d|_dS)z#append header with .TH and .SH NAMENr)rir\rr��	MACRO_DEF)rrrr
ryvs
	zTranslator.append_headercCs|j|d�dS)N�address)�visit_docinfo_item)rr�rrr
�
visit_address�szTranslator.visit_addresscCsdS)Nr)rr�rrr
�depart_address�szTranslator.depart_addressNcCsx|rg|jjd�d|jdd|jjj||�j�|jddf}|jj|�|j|�dS)Nz.sp
z%s%s:%s
rPrr)r]rrlr[�labels�getr��visit_block_quote)rr��namerrr
�visit_admonition�s	zTranslator.visit_admonitioncCs|j|�dS)N)�depart_block_quote)rr�rrr
�depart_admonition�szTranslator.depart_admonitioncCs|j|d�dS)NZ	attention)r�)rr�rrr
�visit_attention�szTranslator.visit_attentioncCsY|dkr)|j|j|j��n|j�|j|<|jj|�tj�dS)Nr9)rcrrrdr�SkipNode)rr�r�rrr
r��s
zTranslator.visit_docinfo_itemcCsdS)Nr)rr�rrr
�depart_docinfo_item�szTranslator.depart_docinfo_itemcCs|j|d�dS)Nr9)r�)rr�rrr
�visit_author�szTranslator.visit_authorcCsdS)Nr)rr�rrr
�
visit_authors�szTranslator.visit_authorscCsdS)Nr)rr�rrr
�depart_authors�szTranslator.depart_authorscCs|jt�|jd�dS)Nr)r=�BLOCKQOUTE_INDENT)rr�rrr
r��s
zTranslator.visit_block_quotecCs|j�|j�dS)N)r�)rr�rrr
r��s
zTranslator.depart_block_quotecCs|j|�dS)N)r�)rr�rrr
�visit_bullet_list�szTranslator.visit_bullet_listcCs|j�dS)N)r�)rr�rrr
�depart_bullet_list�szTranslator.depart_bullet_listcCsdS)Nr)rr�rrr
�
visit_caption�szTranslator.visit_captioncCsdS)Nr)rr�rrr
�depart_caption�szTranslator.depart_captioncCs|j|d�dS)NZcaution)r�)rr�rrr
�
visit_caution�szTranslator.visit_cautioncCsB|j�jdd�\}}|j�}|jjd|�dS)Nrz.IP [%s] 5
)rrp�stripr]r)rr��numr/rrr
�visit_citation�szTranslator.visit_citationcCsdS)Nr)rr�rrr
�depart_citation�szTranslator.depart_citationcCs+|jjd|j�d�tj�dS)N�[�])r]rrrr�)rr�rrr
�visit_citation_reference�sz#Translator.visit_citation_referencecCsdS)Nr)rr�rrr
�visit_classifier�szTranslator.visit_classifiercCsdS)Nr)rr�rrr
�depart_classifier�szTranslator.depart_classifiercCs|jj|�dS)N)rar)rr�rrr
�
visit_colspec�szTranslator.visit_colspeccCsdS)Nr)rr�rrr
�depart_colspec�szTranslator.depart_colspeccCs%|jjddt|j��dS)Nz%s.
zL )r]rr"ra)rrrr
�write_colspecs�szTranslator.write_colspecsz-(?=-)cCs,|jj|j|j���tj�dS)N)r]rrrrrr�)rr��subrrr
�
visit_comment�szTranslator.visit_commentcCs|j|d�dS)N�contact)r�)rr�rrr
�
visit_contact�szTranslator.visit_contactcCsdS)Nr)rr�rrr
�visit_container�szTranslator.visit_containercCsdS)Nr)rr�rrr
�depart_container�szTranslator.depart_containercCsdS)Nr)rr�rrr
�visit_compound�szTranslator.visit_compoundcCsdS)Nr)rr�rrr
�depart_compoundszTranslator.depart_compoundcCs|j|d�dS)Nr;)r�)rr�rrr
�visit_copyrightszTranslator.visit_copyrightcCs|j|d�dS)NZdanger)r�)rr�rrr
�visit_dangerszTranslator.visit_dangercCs|j|d�dS)Nr:)r�)rr�rrr
�
visit_date
szTranslator.visit_datecCsdS)Nr)rr�rrr
�visit_decorationszTranslator.visit_decorationcCsdS)Nr)rr�rrr
�depart_decorationszTranslator.depart_decorationcCsdS)Nr)rr�rrr
�visit_definitionszTranslator.visit_definitioncCsdS)Nr)rr�rrr
�depart_definitionszTranslator.depart_definitioncCs|jt�dS)N)r=�DEFINITION_LIST_INDENT)rr�rrr
�visit_definition_listsz Translator.visit_definition_listcCs|j�dS)N)r�)rr�rrr
�depart_definition_listsz!Translator.depart_definition_listcCs|jj|jdd�dS)Nr@r)r]rrl)rr�rrr
�visit_definition_list_item"sz%Translator.visit_definition_list_itemcCs|jj|jdd�dS)Nr@r)r]rrl)rr�rrr
�depart_definition_list_item%sz&Translator.depart_definition_list_itemcCsdS)Nr)rr�rrr
�visit_description(szTranslator.visit_descriptioncCsdS)Nr)rr�rrr
�depart_description+szTranslator.depart_descriptioncCs
d|_dS)Nr)rf)rr�rrr
�
visit_docinfo.szTranslator.visit_docinfocCsd|_|j�dS)N)rfry)rr�rrr
�depart_docinfo1s	zTranslator.depart_docinfocCs(|jj|jdd�d|_dS)NrGrT)r]rrlrh)rr�rrr
�visit_doctest_block6szTranslator.visit_doctest_blockcCs(d|_|jj|jdd�dS)NFrGr)rhr]rrl)rr�rrr
�depart_doctest_block:s	zTranslator.depart_doctest_blockcCs3|jj|j|j�j�d�d|_dS)Nr&r)r\rrr�document_start�rstripri)rr�rrr
�visit_document>s&zTranslator.visit_documentc
Csv|jdr1|jjddj|jd��d}x�|jD]�}|dkr�|jjd
|jjj||�|jddd|jddt	|j||jdd|jddf�qA||krA||j
kr�|j
|}n|jjj||�}|jjd||j|f�qAW|jdrY|jjd|jd�|jj|jd��dS)Nr9z.SH AUTHOR
%s
z, r;r:r8r7r6r4r5r<r�z
%s:
%s%s.nf
%s
.fi
%s%sr=rrz
%s: %s
z.SH COPYRIGHT
%s
z%Generated by docutils manpage writer.)	r9r;r:r8r7r6r4r5r<)rcr]rr+rdr[r�r�rlr�rerr)rr��skipr��labelrrr
�depart_documentDs4

%
zTranslator.depart_documentcCs|jj|jdd�dS)NrNr)r]rrl)rr�rrr
�visit_emphasisaszTranslator.visit_emphasiscCs|jj|jdd�dS)NrNr)r]rrl)rr�rrr
�depart_emphasisdszTranslator.depart_emphasiscCsgd|kr%|jjjdd|�d|krJ|jjjdd|�|jjt|j��dS)NZmorerowsz""table row spanning" not supported�	base_nodeZmorecolsz#"table cell spanning" not supported)rrZ�warningr`rr"r])rr�rrr
�visit_entrygs
zTranslator.visit_entrycCs@|jj�}|jj|j|d��|j|d�=dS)N)r`r�rgr%r])rr�r$rrr
�depart_entryqszTranslator.depart_entrycCs|j|�dS)N)r�)rr�rrr
�visit_enumerated_listvsz Translator.visit_enumerated_listcCs|j�dS)N)r�)rr�rrr
�depart_enumerated_listysz!Translator.depart_enumerated_listcCs|j|d�dS)N�error)r�)rr�rrr
�visit_error|szTranslator.visit_errorcCsdS)Nr)rr�rrr
�visit_field�szTranslator.visit_fieldcCsdS)Nr)rr�rrr
�depart_field�szTranslator.depart_fieldcCsQ|jrM|jj�jdd�}|j|j|<|j||�tj�dS)Nr)�_)rf�_field_namer�r}rer�rr�)rr�Zname_normalizedrrr
�visit_field_body�s
	zTranslator.visit_field_bodycCsdS)Nr)rr�rrr
�depart_field_body�szTranslator.depart_field_bodycCs|jt�dS)N)r=�FIELD_LIST_INDENT)rr�rrr
�visit_field_list�szTranslator.visit_field_listcCs|j�dS)N)r�)rr�rrr
�depart_field_list�szTranslator.depart_field_listcCsC|jr$|j�|_tj�n|jj|jdd�dS)NrBr)rfrr�rr�r]rrl)rr�rrr
�visit_field_name�s	zTranslator.visit_field_namecCs|jj|jdd�dS)NrBr)r]rrl)rr�rrr
�depart_field_name�szTranslator.depart_field_namecCs|jd�|jd�dS)Ng@r)r=)rr�rrr
�visit_figure�s
zTranslator.visit_figurecCs|j�|j�dS)N)r�)rr�rrr
�
depart_figure�s
zTranslator.depart_figurecCs|jjjdd|�dS)Nz"footer" not supportedr�)rrZr�)rr�rrr
�visit_footer�szTranslator.visit_footercCsdS)Nr)rr�rrr
�
depart_footer�szTranslator.depart_footercCsK|j�jdd�\}}|j�}|jjd|j|��dS)Nrz.IP [%s] 5
)rrpr�r]rr~)rr�r�r/rrr
�visit_footnote�szTranslator.visit_footnotecCsdS)Nr)rr�rrr
�depart_footnote�szTranslator.depart_footnotecCs|jjjdd|�dS)Nz!"footnote_backrefs" not supportedr�)rrZr�)rr�rrr
�footnote_backrefs�szTranslator.footnote_backrefscCs4|jjd|j|j��d�tj�dS)Nr�r�)r]rr~rrr�)rr�rrr
�visit_footnote_reference�s'z#Translator.visit_footnote_referencecCsdS)Nr)rr�rrr
�depart_footnote_reference�sz$Translator.depart_footnote_referencecCsdS)Nr)rr�rrr
�visit_generated�szTranslator.visit_generatedcCsdS)Nr)rr�rrr
�depart_generated�szTranslator.depart_generatedcCst|j���dS)N)�NotImplementedErrorr)rr�rrr
�visit_header�szTranslator.visit_headercCsdS)Nr)rr�rrr
�
depart_header�szTranslator.depart_headercCs|j|d�dS)NZhint)r�)rr�rrr
�
visit_hint�szTranslator.visit_hintcCs|jjd�dS)Nz\s-2\d)r]r)rr�rrr
�visit_subscript�szTranslator.visit_subscriptcCs|jjd�dS)Nz\u\s0)r]r)rr�rrr
�depart_subscript�szTranslator.depart_subscriptcCs|jjd�dS)Nz\s-2\u)r]r)rr�rrr
�visit_superscript�szTranslator.visit_superscriptcCs|jjd�dS)Nz\d\s0)r]r)rr�rrr
�depart_superscript�szTranslator.depart_superscriptcCs|jjd�dS)Nz\(em )r]r)rr�rrr
�visit_attribution�szTranslator.visit_attributioncCs|jjd�dS)Nr&)r]r)rr�rrr
�depart_attribution�szTranslator.depart_attributioncCs�|jjjdd|�g}d|jkrB|j|jd�d|jkre|j|jd�|jjddj|��tj�dS)Nz"image" not supportedr�ZaltZuriz[image: %s]
�/)	rrZr�Z
attributesrr]r+rr�)rr�r/rrr
�visit_image�szTranslator.visit_imagecCs|j|d�dS)NZ	important)r�)rr�rrr
�visit_important�szTranslator.visit_importantcCsdS)Nr)rr�rrr
�visit_inline�szTranslator.visit_inlinecCsdS)Nr)rr�rrr
�
depart_inline�szTranslator.depart_inlinecCs`t|jtj�s*t|jtj�r3tj�|jjjdd|�|j	j
d�dS)Nz"unsupported "label"r�r�)�
isinstance�parentrZfootnoteZcitationr�rrZr�r]r)rr�rrr
�visit_label�s	zTranslator.visit_labelcCs|jjd�dS)Nz]
)r]r)rr�rrr
�depart_labelszTranslator.depart_labelcCsdS)Nr)rr�rrr
�visit_legendszTranslator.visit_legendcCsdS)Nr)rr�rrr
�
depart_legendszTranslator.depart_legendcCsE|jd7_|jdkr1|jjd�n|jjd�dS)Nrz.nf
z.in +2
)rjr]r)rr�rrr
�visit_line_blockszTranslator.visit_line_blockcCsU|jd8_|jdkrA|jjd�|jjd�n|jjd�dS)Nrrz.fi
z.sp
z.in -2
)rjr]r)rr�rrr
�depart_line_blocks
zTranslator.depart_line_blockcCsdS)Nr)rr�rrr
�
visit_line"szTranslator.visit_linecCs|jjd�dS)Nr&)r]r)rr�rrr
�depart_line%szTranslator.depart_linecCs8|jjdt|jd�|jdj�f�dS)Nz
.IP %s %d
rr!r!)r]r�nextrbr�)rr�rrr
�visit_list_item(szTranslator.visit_list_itemcCsdS)Nr)rr�rrr
�depart_list_item.szTranslator.depart_list_itemcCs|jj|jdd�dS)NrDr)r]rrl)rr�rrr
�
visit_literal1szTranslator.visit_literalcCs|jj|jdd�dS)NrDr)r]rrl)rr�rrr
�depart_literal4szTranslator.depart_literalcCsB|jt�|jd�|jj|jdd�d|_dS)NrrGT)r=�LITERAL_BLOCK_INDENTr]rrlrh)rr�rrr
�visit_literal_block7s

zTranslator.visit_literal_blockcCs<d|_|jj|jdd�|j�|j�dS)NFrGr)rhr]rrlr�)rr�rrr
�depart_literal_block?s	
zTranslator.depart_literal_blockcCs*|jjjdd|�|j|�dS)Nz"math" role not supportedr�)rrZr�r+)rr�rrr
�
visit_mathEszTranslator.visit_mathcCs|j|�dS)N)r,)rr�rrr
�depart_mathJszTranslator.depart_mathcCs*|jjjdd|�|j|�dS)Nz"math" directive not supportedr�)rrZr�r.)rr�rrr
�visit_math_blockMszTranslator.visit_math_blockcCs|j|�dS)N)r/)rr�rrr
�depart_math_blockRszTranslator.depart_math_blockcCst|j���dS)N)rr)rr�rrr
�
visit_metaUszTranslator.visit_metacCsdS)Nr)rr�rrr
�depart_metaXszTranslator.depart_metacCs|j|d�dS)NZnote)r�)rr�rrr
�
visit_note[szTranslator.visit_noteg�?cCs@|jd}|jj|�|jj|jdd|�dS)Nrr=rr!)rkrr]rl)rZby�steprrr
r=`s
zTranslator.indentcCs,|jj�|jj|jdd�dS)Nr=r)rkr�r]rrl)rrrr
r�fs
zTranslator.dedentcCs|jt�dS)N)r=�OPTION_LIST_INDENT)rr�rrr
�visit_option_listjszTranslator.visit_option_listcCs|j�dS)N)r�)rr�rrr
�depart_option_listmszTranslator.depart_option_listcCs|jj|jdd�dS)NrJr)r]rrl)rr�rrr
�visit_option_list_itempsz!Translator.visit_option_list_itemcCs|jj|jdd�dS)NrJr)r]rrl)rr�rrr
�depart_option_list_itemtsz"Translator.depart_option_list_itemcCs=|jjd�|jjt|j��|jjd�dS)Nz.Br)r`rr"r])rr�rrr
�visit_option_groupwszTranslator.visit_option_groupcCso|jj�|jj�}|j|d�}|j|d�=|jjd|jj�dj|�f�dS)Nz%s%s
r3)r`r�r]rr+)rr�Zstart_positionr/rrr
�depart_option_group�s

zTranslator.depart_option_groupcCsZ|jddkr#|jjd�|jd	dkrF|jjd�|jjd�dS)
Nrrz\fP,\fB rwz.BIrr)r!���)r`r]r)rr�rrr
�visit_option�s
zTranslator.visit_optioncCs|jdd7<dS)Nrr!)r`)rr�rrr
�
depart_option�szTranslator.depart_optioncCsdS)Nr)rr�rrr
�visit_option_string�szTranslator.visit_option_stringcCsdS)Nr)rr�rrr
�depart_option_string�szTranslator.depart_option_stringcCs�d|jd	<|ddkr8|jjd|d�nF|jt|j�djd�rn|jjd�n|jjd�dS)
Nz.BIrw�	delimiterr)z\fB%s r�=z \ r?)r`r]rr"r.)rr�rrr
�visit_option_argument�s
#z Translator.visit_option_argumentcCsdS)Nr)rr�rrr
�depart_option_argument�sz!Translator.depart_option_argumentcCs|j|d�dS)NZorganization)r�)rr�rrr
�visit_organization�szTranslator.visit_organizationcCsdS)Nr)rr�rrr
�depart_organization�szTranslator.depart_organizationcCsdt|jdtj�}xD|jj|d�D],}t|tj�rKq0||kr[dSPq0WdS)Nrr)rrrr�r�Z	Invisible)rr��firstZchildrrr
�first_child�szTranslator.first_childcCs-|j�|j|�s)|jjd�dS)Nz.sp
)rsrKr]r)rr�rrr
�visit_paragraph�s
zTranslator.visit_paragraphcCs|jjd�dS)Nr&)r]r)rr�rrr
�depart_paragraph�szTranslator.depart_paragraphcCs|jj|jdd�dS)NrUr)r]rrl)rr�rrr
�visit_problematic�szTranslator.visit_problematiccCs|jj|jdd�dS)NrUr)r]rrl)rr�rrr
�depart_problematic�szTranslator.depart_problematiccCs<|jd�dkr/|jj|j�d�tj�dS)N�formatrr&)r�r]rrrr�)rr�rrr
�	visit_raw�szTranslator.visit_rawcCs|jj|jdd�dS)zE.g. link or email address.rLrN)r]rrl)rr�rrr
�visit_reference�szTranslator.visit_referencecCs|jj|jdd�dS)NrLr)r]rrl)rr�rrr
�depart_reference�szTranslator.depart_referencecCs|j|d�dS)NZrevision)r�)rr�rrr
�visit_revision�szTranslator.visit_revisioncCs|jj�dS)N)rgr)rr�rrr
�	visit_row�szTranslator.visit_rowcCsdS)Nr)rr�rrr
�
depart_row�szTranslator.depart_rowcCs|jd7_dS)Nr)r_)rr�rrr
�
visit_section�szTranslator.visit_sectioncCs|jd8_dS)Nr)r_)rr�rrr
�depart_section�szTranslator.depart_sectioncCs|j|d�dS)N�status)r�)rr�rrr
�visit_status�szTranslator.visit_statuscCs|jj|jdd�dS)NrPr)r]rrl)rr�rrr
�visit_strong�szTranslator.visit_strongcCs|jj|jdd�dS)NrPr)r]rrl)rr�rrr
�
depart_strong�szTranslator.depart_strongcCs
tj�dS)zInternal only.N)rr�)rr�rrr
�visit_substitution_definition�sz(Translator.visit_substitution_definitioncCs|jjjdd|�dS)Nz&"substitution_reference" not supportedr�)rrZr�)rr�rrr
�visit_substitution_reference�sz'Translator.visit_substitution_referencecCs�t|jtj�r3|jj|jdd�nXt|jtj�r[|j|d�n0t|jtj	�r�|jj|jdd�dS)NrPrr6)
rrr�sidebarr]rrlrr��section)rr�rrr
�visit_subtitle�szTranslator.visit_subtitlecCs#|jj|jddd�dS)NrPrz
.PP
)r]rrl)rr�rrr
�depart_subtitleszTranslator.depart_subtitlecCsi}d}|jd�r)|d|d<|jd�rId|d}nd}|jjd|d|d|d	|f�dS)
Nr3�idr��linez	, line %sz$.IP "System Message: %s/%s (%s:%s)"
�type�level�source)�hasattrr]r)rr��attrZbackref_textrdrrr
�visit_system_messageszTranslator.visit_system_messagecCsdS)Nr)rr�rrr
�depart_system_messagesz Translator.depart_system_messagecCst�|_dS)N)rrg)rr�rrr
�visit_tableszTranslator.visit_tablecCs0|j�|jj|jj��d|_dS)N)rsr]r-rgr2)rr�rrr
�depart_tables
zTranslator.depart_tablecCs
tj�dS)N)rr�)rr�rrr
�visit_target#szTranslator.visit_targetcCsdS)Nr)rr�rrr
�visit_tbody'szTranslator.visit_tbodycCsdS)Nr)rr�rrr
�depart_tbody*szTranslator.depart_tbodycCs|jj|jdd�dS)NrQr)r]rrl)rr�rrr
�
visit_term-szTranslator.visit_termcCs|jj|jdd�dS)NrQr)r]rrl)rr�rrr
�depart_term0szTranslator.depart_termcCsdS)Nr)rr�rrr
�visit_tgroup3szTranslator.visit_tgroupcCsdS)Nr)rr�rrr
�
depart_tgroup6szTranslator.depart_tgroupcCsdS)Nr)rr�rrr
�visit_thead9szTranslator.visit_theadcCsdS)Nr)rr�rrr
�depart_thead=szTranslator.depart_theadcCs|j|d�dS)NZtip)r�)rr�rrr
�	visit_tipAszTranslator.visit_tipcCs-t|jtj�r3|jj|jdd�n�t|jtj�rf|jj|jdd�n�t|jtj�r�|jjd�n�|j	dkr�|j
�|jd<|j
�j�|jd<tj
�nT|j	dkr|jjd|j|j
�j���tj
�n|jjd	�dS)
Nztopic-titlerz
sidebar-titlez.IP "r4r5rz.SH %s
z.SS )rrrZtopicr]rrlr_�
admonitionr_rrcr�r�r~)rr�rrr
�visit_titleFs)zTranslator.visit_titlecCs9t|jtj�r%|jjd�|jjd�dS)N�"r&)rrrrxr]r)rr�rrr
�depart_titleXszTranslator.depart_titlecCs|jj|jdd�dS)zinline citation referencerSrN)r]rrl)rr�rrr
�visit_title_reference]sz Translator.visit_title_referencecCs|jj|jdd�dS)NrSr)r]rrl)rr�rrr
�depart_title_referenceasz!Translator.depart_title_referencecCsdS)Nr)rr�rrr
�visit_topicdszTranslator.visit_topiccCsdS)Nr)rr�rrr
�depart_topicgszTranslator.depart_topiccCsdS)Nr)rr�rrr
�
visit_sidebarjszTranslator.visit_sidebarcCsdS)Nr)rr�rrr
�depart_sidebarmszTranslator.depart_sidebarcCsdS)Nr)rr�rrr
�visit_rubricpszTranslator.visit_rubriccCsdS)Nr)rr�rrr
�
depart_rubricsszTranslator.depart_rubriccCs|jjd�dS)Nz
.sp
.ce
----
)r]r)rr�rrr
�visit_transitionvszTranslator.visit_transitioncCs|jjd�dS)Nz
.ce 0
.sp
)r]r)rr�rrr
�depart_transition|szTranslator.depart_transitioncCs|j|d�dS)Nr<)r�)rr�rrr
�
visit_versionszTranslator.visit_versioncCs|j|d�dS)Nr�)r�)rr�rrr
�
visit_warning�szTranslator.visit_warningcCstd|jj��dS)Nz$visiting unimplemented node type: %s)r�	__class__r)rr�rrr
�unimplemented_visit�szTranslator.unimplemented_visit)�rrr�__doc__�re�compileZwords_and_spacesrzr�rrqrrrsrr~r�r�r�r�r�ryr�r�r�r�r�Zdepart_attentionr�r�r�Z
depart_authorr�r�r�r�r�r�r�r�r�Zdepart_cautionr�r�r�r�r�r�r�r�r�r�r�Zdepart_contactr�r�r�r�r�r�Z
depart_dangerr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�Zdepart_errorr�r�r�r�rrrrrrrrrr	r
rrr
rrrrZdepart_hintrrrrrrrrZdepart_importantrrr r!r"r#r$r%r&r'r)r*r+r,r.r/r0r1r2r3r4r5r6Zdepart_noter=r�r9r:r;r<r=r>r@rArBrCrFrGrHrIrKrLrMrNrOrQrRrSrTZdepart_revisionrUrVrWrXrZZ
depart_statusr[r\r]r^rarbrjrkrlrmrnrorprqrrrsrtrurvrwZ
depart_tipryr{r|r}r~rr�r�r�r�r�r�r�r�Zdepart_warningr�rrrr
r	�s�E	=

	


r	)r�Z
__docformat__r��docutilsrrrr��ImportErrorZdocutils.utils.roman�utilsr�r�r8r�r-r�rr�rrXr	rrrr
�<module>+s"
/