
    ohev                         d Z dZddlZddlmZmZmZ 	 ddlZdZdZdZdZdZdZ G d d	ej"                        Z G d
 d      Z G d dej&                        Zy# e$ r ddl	m
c mZ Y Qw xY w)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 accessible
by the command whatis or apropos.

reStructuredText    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                   $    e Zd ZdZ	 dZ	 d Zd Zy)Writer)manpageNc                 X    t         j                  j                  |        t        | _        y N)r   r	   __init__
Translatortranslator_classselfs    :/usr/lib/python3/dist-packages/docutils/writers/manpage.pyr   zWriter.__init__d   s    % *    c                     | j                  | j                        }| j                  j                  |       |j                         | _        y r   )r   document	walkaboutastextoutput)r   visitors     r   	translatezWriter.translateh   s6    ''6(nn&r   )__name__
__module____qualname__	supportedr   r   r    r   r   r	   r	   \   s    I'F.+'r   r	   c                   0    e Zd Zd Zd Zd Zd Zd Zd Zy)Tablec                 >    g | _         dg| _        d| _        g | _        y )Ncenter	)_rows_options	_tab_char_coldefsr   s    r   r   zTable.__init__o   s     
!
r   c                 :    | j                   j                  g        y r   r%   appendr   s    r   new_rowzTable.new_rowu   s    

"r   c                 <    | j                   j                  |g       y)z$Append the separator for table head.Nr*   )r   	separators     r   append_separatorzTable.append_separatorx   s    

9+&r   c                    d}t        |      dkD  r
|d   dk(  rd}| j                  d   j                  ||d        t        | j                        t        | j                  d         k  r| j                  j                  d       yy)zcell_lines is an array of linesr   .sp
   Nl)lenr%   r+   r(   )r   
cell_linesstarts      r   append_cellzTable.append_cell|   su    z?Q:a=G#;E

2j01t}}DJJrN 33MM  % 4r   c                 b    |r|d   dv r|d= |r|d   dv r|r|d   dv r|d= |r	|d   dv ryyyy)z3Remove leading and trailing blank and ``.sp`` linesr   )
r1   r3   Nr   )r   r6   s     r   _minimize_cellzTable._minimize_cell   sS    Z]o=1 Z]o=Z^>2 Z^>j>jr   c                    dg}|j                  dj                  | j                        dz          |j                  ddj                  | j                        z         | j                  D ]  }|j                  d       |j                  d       t        t        |            D ]  }||   }| j                  |       |j                  |       |d   j                  d	      s|dxx   d	z  cc<   |t        |      d
z
  k  r"|j                  d| j                  z   dz          ~|j                  d         |j                  d       |j                  d       |S )Nz.TS
 z;
z|%s|.
|z_
zT{
r3   r:   r2   zT}zT}
z.TE
)r+   joinr&   r(   r%   ranger5   r;   extendendswithr'   )r   textrowicells        r   as_listzTable.as_list   s   yCHHT]]+e34I$--!89::: 	(CKKKK3s8_ 	(1v##D)D!Bx((.H$Hs3xz>KKT^^ 3F :;KK'	(		( 	EGr   N)	r   r   r   r   r,   r/   r8   r;   rG   r   r   r   r!   r!   n   s     '&r   r!   c                   "   e Zd ZdZ ej
                  d      Z ej
                  d      ZdZd Z	d Z
d Zd Zd	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd ZddZd Zd ZeZd Zd Zd ZeZd Zd Z d Z!d Z"d Z#d Z$d  Z%d! Z&d" Z'eZ(d# Z)d$ Z*d% Z+d& Z,d' Z-d( Z.d) Z/d* Z0 ej
                  d+      jb                  fd,Z2d- Z3eZ4d. Z5d/ Z6d0 Z7d1 Z8d2 Z9d3 Z:eZ;d4 Z<d5 Z=d6 Z>d7 Z?d8 Z@d9 ZAd: ZBd; ZCd< ZDd= ZEd> ZFd? ZGd@ ZHdA ZIdB ZJdC ZKdD ZLdE ZMdF ZNdG ZOdH ZPdI ZQdJ ZRdK ZSeZTdL ZUdM ZVdN ZWdO ZXdP ZYdQ ZZdR Z[dS Z\dT Z]dU Z^dV Z_dW Z`dX ZadY ZbdZ Zcd[ Zdd\ Zed] Zfd^ Zgd_ Zhd` Zida ZjeZkdb Zldc Zmdd Znde Zodf Zpdg Zqdh Zrdi ZseZtdj Zudk Zvdl Zwdm Zxdn Zydo Zzdp Z{dq Z|dr Z}ds Z~dt Zdu Zdv Zdw Zdx Zdy Zdz Zd{ Zd| Zd} Zd~ ZeZddZd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd ZeZd Zd Zd Zd Zd ZeZd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd ZeZd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd ZeZd Zy)r    z	\S+| +|\nz\.\wz)Man page generated from reStructuredText.c                 P   t         j                  j                  | |       |j                  x| _        }|j                  }t        j                  ||j                        | _        g | _	        g | _
        g | _        d| _        g | _        d| _        g | _        d| _        d | _        g | _        dddddg dddd	| _        g | _        i | _        d | _        d | _        d | _        d| _        d| _        d| _        d| _        g | _        d| _        dg| _        dddd	d
dddd	dddddd| _        y )Nr   rI   r2   )	titletitle_uppersubtitlemanual_sectionmanual_groupauthordate	copyrightversionF)z.INDENT %.1f
z
.UNINDENT
)z.TPrI   ).TP
.B r:   )z\fB\fP)z.sp
.EX
z
.EE
).TP
rI   )z\fI\%rU   )z\fIrU   )
.B r:   ).SS )z
.nf

.fi
)indentdefinition_list_item
field_nameliteralliteral_blockoption_list_item	referenceemphasisstrongtermtitle_referencetopic-titlesidebar-titleproblematic) r   NodeVisitorr   settingslanguage_coder   get_languagereporterlanguageheadbodyfootsection_levelcontexttopic_classcolspecs	compact_pcompact_simple
_list_char_docinfo_docinfo_keys_docinfo_names_in_docinfo_field_name_active_table_has_a_table_in_literalheader_written_line_blockauthors_indentdefs)r   r   ri   lcodes       r   r   zTranslator.__init__   sS   ""42#+#4#44&&!..uh6G6GH			" B"$b   !! s <(30+!:$1/,*'#3(!*5%	r   c                 |    d}dj                  |j                  d      D cg c]
  }||z   dz    c}      }|S c c}w )zPReturn commented version of the passed text WITHOUT end of
        line/comment.z.\" rI   r:   )r?   split)r   rC   prefixin_lineout_texts        r   comment_beginzTranslator.comment_begin   sJ     77+/::d+;= ' $g-4 = >=s   9c                 *    | j                  |      dz   S )z,Return commented version of the passed text..
)r   r   rC   s     r   commentzTranslator.comment   s    !!$'--r   c                     t        | j                        dkD  r2| j                  d   d   dk7  r| j                  j                  d       yyy)z7Ensure the last line in body is terminated by new line.r   r3   r:   N)r5   ro   r+   r   s    r   
ensure_eolzTranslator.ensure_eol   s@    tyy>A$))B-"3t";IIT" #<r   c                    | j                   s| j                          t        t        | j                        dz
  dd      D ]  }| j                  |   dk(  s| j                  |dz
     dd dv rd| j                  |<   =| j                  |dz
     dd	 d
k(  r(| j                  |dz
     dd dk(  rd| j                  |<   }| j                  |dz
     dk(  s| j
                  j                  | j                  |dz
           r| j                  |d	z
     dd dk(  s| j                  |d	z
     dd dk(  sd| j                  |<    dj                  | j                  | j                  z   | j                  z         S )z0Return the final formatted document as a string.r2   r   r3   r1   N   )z.BI z.IP r      .B    rV   r:   r   rT   rW   rI   )
r   append_headerr@   r5   ro   possibly_a_roff_commandmatchr?   rn   rp   )r   rE   s     r   r   zTranslator.astext  s`   "" s499~a'B/ 	)Ayy|w&99QU#BQ'+;;#(DIIaLiiA&r*e3))AE*2A.'9#(DIIaLiiA&$."::@@"&))AE"2499QU+BQ/:="iiA.r2g=#(DIIaL	) wwtyy499,tyy899r   c                 N    |j                  dd      }|j                  dd      }|S )N    z\ u   †z\(dg)replacer   s     r   	deunicodezTranslator.deunicode  s'    ||FE*||Hg.r   c                 H   |j                         }|j                  dd      }g d}|D ]  \  }}|j                  ||      } | j                  |      }|j                  d      rd|z   }| j                  r|j                  dd      }| j
                  j                  |       y )N\z\e))-z\-)'z\(aq)   ´z\')`z\(ga)"z\(dq.z\&z
.z
\&.)r   r   r   
startswithr   ro   r+   )r   noderC   replace_pairsin_char
out_markups         r   
visit_TextzTranslator.visit_Text  s    {{}||D%( &3 	5!Wj<<4D	5 ~~d#??34<D<<x0D		r   c                      y r   r   r   r   s     r   depart_TextzTranslator.depart_Text4      r   c                     G fdd      }dv r%| j                   j                   |d                n!| j                   j                   |d             t        | j                         dkD  r-| j                  | j                   d   j	                                y | j                  | j                   d   j	                                y )Nc                   4    e Zd ZdddZ fdZd Zd Zd Zy)	'Translator.list_start.<locals>.EnumCharz\(buz\(em)bulletemdashc                 
   || _         dv rd   dz
  | _        nd| _        d| _        |dk(  rat        t	        t        j
                                    | _        | xj                  t        t	        | j                              dz   z  c_        y |dk(  r)| xj                  t        d      dz
  z  c_        d| _        y |d	k(  r)| xj                  t        d
      dz
  z  c_        d| _        y |j                  d      rd| _        y y )Nr7   r2   r   r   arabic
loweralphaar   
upperalphaAroman   )_style_cntr   r5   strchildrenordrB   )r   styler   s     r   r   z0Translator.list_start.<locals>.EnumChar.__init__>  s    #d? $W 1DI !DI H$ $'s3t}}+='>#?DLLLCDII$7!$;;Ll*IISA-I#$DLl*IISA-I#$DL^^G,#$DL -r   c                 P   | j                   dk(  r| j                  | j                      S | j                   dk(  r| j                  | j                      S | xj                  dz  c_        | j                   dk(  rd| j                  z  S | j                   dv rd| j                  z  S | j                   j                  d      r]t	        j
                  | j                        d	z   }| j                   j                  d
      r|j                         S |j                         S d| j                  z  S )Nr   r   r2   r   z%d.)r   r   z%c.r   r   upper)	r   
enum_styler   rB   r   toRomanr   r   lower)r   ress     r   __next__z0Translator.list_start.<locals>.EnumChar.__next__S  s    ;;(*??4;;77[[H,??4;;77		Q	;;(* 499,,[[$@@ 499,,[[))'2--		2S8C{{--g6"yy{*99;& 499,,r   c                     | j                   S r   )r   r   s    r   	get_widthz1Translator.list_start.<locals>.EnumChar.get_widthf  s    ||#r   c                 2    dt        | j                        z  S )Nzenum_style-%s)listr   r   s    r   __repr__z0Translator.list_start.<locals>.EnumChar.__repr__i  s    &dkk):::r   N)r   r   r   r   r   r   r   r   )r   s   r   EnumCharr   8  s$    %%J
%*-&$;r   r   enumtyper   r2   r3   )rw   r+   r5   rZ   r   )r   r   r   s    ` r   
list_startzTranslator.list_start7  s    2	; 2	;h OO""8D,<#=>OO""8H#56t!#KK+5578KK+5578r   c                 X    | j                          | j                  j                          y r   )dedentrw   popr   s    r   list_endzTranslator.list_endv  s    r   c                     d| j                   z  }| j                   d   r|d| j                   z  z  }|dz  }d}||| j                   z  z   S )NzA.TH "%(title_upper)s" %(manual_section)s "%(date)s" "%(version)s"rO   z "%(manual_group)s"r:   z#.SH NAME
%(title)s \- %(subtitle)s
)rx   )r   thsh_tmpls      r   headerzTranslator.headerz  sY    .15?==()DMM99B
d
2Gdmm+++r   c                     | j                   ry| j                  j                  t               | j                  j                  | j	                                d| _         y)z#append header with .TH and .SH NAMENr2   )r   rn   r+   	MACRO_DEFr   r   s    r   r   zTranslator.append_header  sB    
 		#		'r   c                 (    | j                  |d       y )Naddressvisit_docinfo_itemr   s     r   visit_addresszTranslator.visit_address      i0r   c                      y r   r   r   s     r   depart_addresszTranslator.depart_address  r   r   Nc                 N   |r| j                   j                  d       | j                  d   d   | j                  j                  j                  ||      j                         d| j                  d   d   d}| j                   j                  |       | j                  |       y )Nr1   rb   r   :r2   r:   )ro   r+   r   rm   labelsgetr   visit_block_quoter   r   names      r   visit_admonitionzTranslator.visit_admonition  s     IIW%		(#A&$$((t4::<		(#A&D
 IIT"t$r   c                 &    | j                  |       y r   )depart_block_quoter   s     r   depart_admonitionzTranslator.depart_admonition  s    %r   c                 (    | j                  |d       y )N	attentionr   r   s     r   visit_attentionzTranslator.visit_attention      dK0r   c                     |dk(  r-| j                   |   j                  |j                                n|j                         | j                   |<   | j                  j                  |       t        j
                  NrP   )rx   r+   r   ry   r   SkipNoder   s      r   r   zTranslator.visit_docinfo_item  sY    8MM$&&t{{}5"&++-DMM$!!$'nnr   c                      y r   r   r   s     r   depart_docinfo_itemzTranslator.depart_docinfo_item  r   r   c                 (    | j                  |d       y r   r   r   s     r   visit_authorzTranslator.visit_author      h/r   c                      y r   r   r   s     r   visit_authorszTranslator.visit_authors      r   c                      y r   r   r   s     r   depart_authorszTranslator.depart_authors  r   r   c                 P    | j                  t               | j                  d       y )Nr   )rZ   BLOCKQOUTE_INDENTr   s     r   r   zTranslator.visit_block_quote  s     	%&Ar   c                 D    | j                          | j                          y r   r   r   s     r   r   zTranslator.depart_block_quote      r   c                 &    | j                  |       y r   r   r   s     r   visit_bullet_listzTranslator.visit_bullet_list      r   c                 $    | j                          y r   r   r   s     r   depart_bullet_listzTranslator.depart_bullet_list      r   c                      y r   r   r   s     r   visit_captionzTranslator.visit_caption  r   r   c                      y r   r   r   s     r   depart_captionzTranslator.depart_caption  r   r   c                 (    | j                  |d       y )Ncautionr   r   s     r   visit_cautionzTranslator.visit_caution      dI.r   c                     |j                         j                  d d      d   }|j                         }| j                  j	                  d|z         y )Nr2   r   .IP [%s] 5
)r   r   stripro   r+   )r   r   nums      r   visit_citationzTranslator.visit_citation  sA    kkm!!$*1-iik		#-.r   c                      y r   r   r   s     r   depart_citationzTranslator.depart_citation  r   r   c                     | j                   j                  d|j                         z   dz          t        j                  N[])ro   r+   r   r   r   r   s     r   visit_citation_referencez#Translator.visit_citation_reference  s.    		T[[]*3./nnr   c                      y r   r   r   s     r   visit_classifierzTranslator.visit_classifier  r   r   c                      y r   r   r   s     r   depart_classifierzTranslator.depart_classifier  r   r   c                 :    | j                   j                  |       y r   )rt   r+   r   s     r   visit_colspeczTranslator.visit_colspec  s    T"r   c                      y r   r   r   s     r   depart_colspeczTranslator.depart_colspec  r   r   c                 l    | j                   j                  ddt        | j                        z  z         y )Nz%s.
zL )ro   r+   r5   rt   r   s    r   write_colspecszTranslator.write_colspecs  s'    		DT]]);$;<=r   z-(?=-)c                     | j                   j                  | j                  |j                                      t        j
                  r   )ro   r+   r   r   r   r   )r   r   subs      r   visit_commentzTranslator.visit_comment  s-    		dkkm45nnr   c                 (    | j                  |d       y )Ncontactr   r   s     r   visit_contactzTranslator.visit_contact  r   r   c                      y r   r   r   s     r   visit_containerzTranslator.visit_container  r   r   c                      y r   r   r   s     r   depart_containerzTranslator.depart_container  r   r   c                      y r   r   r   s     r   visit_compoundzTranslator.visit_compound  r   r   c                      y r   r   r   s     r   depart_compoundzTranslator.depart_compound  r   r   c                 (    | j                  |d       y )NrR   r   r   s     r   visit_copyrightzTranslator.visit_copyright  s    k2r   c                 (    | j                  |d       y )Ndangerr   r   s     r   visit_dangerzTranslator.visit_danger  s    dH-r   c                 (    | j                  |d       y )NrQ   r   r   s     r   
visit_datezTranslator.visit_date  s    f-r   c                      y r   r   r   s     r   visit_decorationzTranslator.visit_decoration  r   r   c                      y r   r   r   s     r   depart_decorationzTranslator.depart_decoration"  r   r   c                      y r   r   r   s     r   visit_definitionzTranslator.visit_definition%  r   r   c                      y r   r   r   s     r   depart_definitionzTranslator.depart_definition(  r   r   c                 .    | j                  t               y r   )rZ   DEFINITION_LIST_INDENTr   s     r   visit_definition_listz Translator.visit_definition_list+  s    *+r   c                 $    | j                          y r   r  r   s     r   depart_definition_listz!Translator.depart_definition_list.      r   c                 Z    | j                   j                  | j                  d   d          y )Nr[   r   ro   r+   r   r   s     r   visit_definition_list_itemz%Translator.visit_definition_list_item1  #    		#9:1=>r   c                 Z    | j                   j                  | j                  d   d          y )Nr[   r2   rQ  r   s     r   depart_definition_list_itemz&Translator.depart_definition_list_item4  rS  r   c                      y r   r   r   s     r   visit_descriptionzTranslator.visit_description7  r   r   c                      y r   r   r   s     r   depart_descriptionzTranslator.depart_description:  r   r   c                     d| _         y Nr2   )r{   r   s     r   visit_docinfozTranslator.visit_docinfo=  s
    r   c                 2    d | _         | j                          y r   )r{   r   r   s     r   depart_docinfozTranslator.depart_docinfo@  s    r   c                 h    | j                   j                  | j                  d   d          d| _        y )Nr^   r   T)ro   r+   r   r   r   s     r   visit_doctest_blockzTranslator.visit_doctest_blockE  s*    		?3A67r   c                 h    d| _         | j                  j                  | j                  d   d          y NFr^   r2   )r   ro   r+   r   r   s     r   depart_doctest_blockzTranslator.depart_doctest_blockI  s*     		?3A67r   c                     | j                   j                  | j                  | j                        j	                         dz          d| _        y )Nr:   r   )rn   r+   r   document_startrstripr   r   s     r   visit_documentzTranslator.visit_documentM  s9    		d&9&9:AACDHIr   c                    | j                   d   r:| j                  j                  ddj                  | j                   d         z         d}| j                  D ]'  }|dk(  r| j                  j                  d| j
                  j                  j                  ||      d| j                  d   d	   d	z  | j                  d   d	   t        z  d
| j                   |   d| j                  d   d   | j                  d   d   
       ||vs|| j                  v r| j                  |   }n&| j
                  j                  j                  ||      }| j                  j                  d|d| j                   |   d       * | j                   d   r+| j                  j                  d| j                   d   z         | j                  j                  | j                  d             y )NrP   z.SH AUTHOR
%s
z, )	rP   rR   rQ   rO   rN   rM   rK   rL   rS   r   r:   z:
rZ   r   .nf
rY   r2   z: rR   z.SH COPYRIGHT
%s
z%Generated by docutils manpage writer.)rx   ro   r+   r?   ry   rm   r   r   r   r  rz   r   )r   r   skipr   labels        r   depart_documentzTranslator.depart_documentS  s   =="II/#yyx)@AB C3 && 	NDy 		  $(MM$8$8$<$<T4$H$(IIh$7$:Q$>$(IIh$7$:=N$N$(MM$$7$(IIh$7$:$(IIh$7$:"< = T!4... //5E MM0044T4@E		  d8K!LM	N ==%II2#}}[9: ;		&MNOr   c                 Z    | j                   j                  | j                  d   d          y )Nra   r   rQ  r   s     r   visit_emphasiszTranslator.visit_emphasiso  "    		:.q12r   c                 Z    | j                   j                  | j                  d   d          y )Nra   r2   rQ  r   s     r   depart_emphasiszTranslator.depart_emphasisr  ro  r   c                    d|v r'| j                   j                  j                  d|       d|v r'| j                   j                  j                  d|       | j                  j	                  t        | j                               y )Nmorerowsz""table row spanning" not supported	base_nodemorecolsz#"table cell spanning" not supported)r   rl   warningrr   r+   r5   ro   r   s     r   visit_entryzTranslator.visit_entryu  sr    MM""**4 + FMM""**5 + GC		N+r   c                     | j                   j                         }| j                  j                  | j                  |d         | j                  |d = y r   )rr   r   r}   r8   ro   )r   r   r7   s      r   depart_entryzTranslator.depart_entry  sA      "&&tyy'89IIefr   c                 &    | j                  |       y r   r  r   s     r   visit_enumerated_listz Translator.visit_enumerated_list  r
  r   c                 $    | j                          y r   r  r   s     r   depart_enumerated_listz!Translator.depart_enumerated_list  r  r   c                 (    | j                  |d       y )Nerrorr   r   s     r   visit_errorzTranslator.visit_error  s    dG,r   c                      y r   r   r   s     r   visit_fieldzTranslator.visit_field  r   r   c                      y r   r   r   s     r   depart_fieldzTranslator.depart_field  r   r   c                     | j                   re| j                  j                         j                  dd      }| j                  | j                  |<   | j                  ||       t        j                  y )Nr=   _)r{   r|   r   r   rz   r   r   r   )r   r   name_normalizeds      r   visit_field_bodyzTranslator.visit_field_body  sa    "..446>>sCHO373C3CD0##D/:.. 	 r   c                      y r   r   r   s     r   depart_field_bodyzTranslator.depart_field_body  r   r   c                 .    | j                  t               y r   )rZ   FIELD_LIST_INDENTr   s     r   visit_field_listzTranslator.visit_field_list  s    %&r   c                 $    | j                          y r   r  r   s     r   depart_field_listzTranslator.depart_field_list  rO  r   c                     | j                   r%|j                         | _        t        j                  | j
                  j                  | j                  d   d          y )Nr\   r   )r{   r   r|   r   r   ro   r+   r   r   s     r   visit_field_namezTranslator.visit_field_name  sC    #{{}D.. IITYY|4Q78r   c                 Z    | j                   j                  | j                  d   d          y )Nr\   r2   rQ  r   s     r   depart_field_namezTranslator.depart_field_name  s"    		<034r   c                 H    | j                  d       | j                  d       y )Ng      @r   )rZ   r   s     r   visit_figurezTranslator.visit_figure  s    CAr   c                 D    | j                          | j                          y r   r  r   s     r   depart_figurezTranslator.depart_figure  r  r   c                 R    | j                   j                  j                  d|       y )Nz"footer" not supportedrt  r   rl   rw  r   s     r   visit_footerzTranslator.visit_footer  s%    &&'?15 	' 	7r   c                      y r   r   r   s     r   depart_footerzTranslator.depart_footer  r   r   c                     |j                         j                  d d      \  }}|j                         }| j                  j	                  d| j                  |      z         y )Nr2   r  )r   r   r  ro   r+   r   )r   r   r  rC   s       r   visit_footnotezTranslator.visit_footnote  sI    KKM''a0	Tiik		$..*==>r   c                      y r   r   r   s     r   depart_footnotezTranslator.depart_footnote  r   r   c                 R    | j                   j                  j                  d|       y )Nz!"footnote_backrefs" not supportedrt  r  r   s     r   footnote_backrefszTranslator.footnote_backrefs  s%    &&'J15 	' 	7r   c                     | j                   j                  d| j                  |j                               z   dz          t        j
                  r  )ro   r+   r   r   r   r   r   s     r   visit_footnote_referencez#Translator.visit_footnote_reference  s7    		T^^DKKM::3>?nnr   c                      y r   r   r   s     r   depart_footnote_referencez$Translator.depart_footnote_reference  r   r   c                      y r   r   r   s     r   visit_generatedzTranslator.visit_generated  r   r   c                      y r   r   r   s     r   depart_generatedzTranslator.depart_generated  r   r   c                 4    t        |j                               r   )NotImplementedErrorr   r   s     r   visit_headerzTranslator.visit_header  s    !$++-00r   c                      y r   r   r   s     r   depart_headerzTranslator.depart_header  r   r   c                 (    | j                  |d       y )Nhintr   r   s     r   
visit_hintzTranslator.visit_hint      dF+r   c                 :    | j                   j                  d       y )Nz\s-2\dro   r+   r   s     r   visit_subscriptzTranslator.visit_subscript      		$r   c                 :    | j                   j                  d       y )Nz\u\s0r  r   s     r   depart_subscriptzTranslator.depart_subscript      		#r   c                 :    | j                   j                  d       y )Nz\s-2\ur  r   s     r   visit_superscriptzTranslator.visit_superscript  r  r   c                 :    | j                   j                  d       y )Nz\d\s0r  r   s     r   depart_superscriptzTranslator.depart_superscript  r  r   c                 :    | j                   j                  d       y )Nz\(em r  r   s     r   visit_attributionzTranslator.visit_attribution  s    		"r   c                 :    | j                   j                  d       y Nr:   r  r   s     r   depart_attributionzTranslator.depart_attribution      		r   c                 ~   | j                   j                  j                  d|       g }d|j                  v r|j	                  |j                  d          d|j                  v r|j	                  |j                  d          | j
                  j	                  ddj                  |      z         t        j                  )Nz"image" not supportedrt  alturiz[image: %s]
/)	r   rl   rw  
attributesr+   ro   r?   r   r   )r   r   rC   s      r   visit_imagezTranslator.visit_image  s    &&'>15 	' 	7DOO#KK./DOO#KK./		CHHTN;<nnr   c                 (    | j                  |d       y )N	importantr   r   s     r   visit_importantzTranslator.visit_important  r   r   c                      y r   r   r   s     r   visit_inlinezTranslator.visit_inline  r   r   c                      y r   r   r   s     r   depart_inlinezTranslator.depart_inline  r   r   c                 8   t        |j                  t        j                        s$t        |j                  t        j                        rt        j
                  | j                  j                  j                  d|       | j                  j                  d       y )Nz"unsupported "label"rt  r   )
isinstanceparentr   footnotecitationr   r   rl   rw  ro   r+   r   s     r   visit_labelzTranslator.visit_label
  se    t{{ENN3$++u~~6.. &&'=15 	' 	7		r   c                 :    | j                   j                  d       y )Nz]
r  r   s     r   depart_labelzTranslator.depart_label  s    		r   c                      y r   r   r   s     r   visit_legendzTranslator.visit_legend  r   r   c                      y r   r   r   s     r   depart_legendzTranslator.depart_legend  r   r   c                     | xj                   dz  c_         | j                   dk(  r| j                  j                  d       y | j                  j                  d       y )Nr2   ri  z.in +2
r   ro   r+   r   s     r   visit_line_blockzTranslator.visit_line_block  sG    Aq 
 IIW%IIZ(r   c                     | xj                   dz  c_         | j                   dk(  r7| j                  j                  d       | j                  j                  d       y | j                  j                  d       y )Nr2   r   z.fi
r1   z.in -2
r  r   s     r   depart_line_blockzTranslator.depart_line_block(  sW    Aq IIW%IIW%IIZ(r   c                      y r   r   r   s     r   
visit_linezTranslator.visit_line0  r   r   c                 :    | j                   j                  d       y r  r  r   s     r   depart_linezTranslator.depart_line3  r  r   c                     | j                   j                  dt        | j                  d         | j                  d   j	                         fz         y )Nz
.IP %s %d
r3   )ro   r+   nextrw   r   r   s     r   visit_list_itemzTranslator.visit_list_item6  sF    		T__R()#--/*2 2 	3r   c                      y r   r   r   s     r   depart_list_itemzTranslator.depart_list_item<  r   r   c                 Z    | j                   j                  | j                  d   d          y )Nr]   r   rQ  r   s     r   visit_literalzTranslator.visit_literal?  "    		9-a01r   c                 Z    | j                   j                  | j                  d   d          y )Nr]   r2   rQ  r   s     r   depart_literalzTranslator.depart_literalB  r  r   c                     | j                  t               | j                  d       | j                  j                  | j                  d   d          d| _        y )Nr   r^   T)rZ   LITERAL_BLOCK_INDENTro   r+   r   r   r   s     r   visit_literal_blockzTranslator.visit_literal_blockE  sD     	()A		?3A67r   c                     d| _         | j                  j                  | j                  d   d          | j	                          | j	                          y rb  )r   ro   r+   r   r   r   s     r   depart_literal_blockzTranslator.depart_literal_blockM  s<     		?3A67r   c                 t    | j                   j                  j                  d|       | j                  |       y )Nz"math" role not supportedrt  )r   rl   rw  r  r   s     r   
visit_mathzTranslator.visit_mathS  s3    &&'B15 	' 	74 r   c                 &    | j                  |       y r   )r  r   s     r   depart_mathzTranslator.depart_mathX  s    D!r   c                 t    | j                   j                  j                  d|       | j                  |       y )Nz"math" directive not supportedrt  )r   rl   rw  r  r   s     r   visit_math_blockzTranslator.visit_math_block[  s3    &&'G15 	' 	7  &r   c                 &    | j                  |       y r   )r  r   s     r   depart_math_blockzTranslator.depart_math_block`  s    !!$'r   c                 (    | j                  |d       y )Nnoter   r   s     r   
visit_notezTranslator.visit_notej  r  r   c                     | j                   d   }| j                   j                  |       | j                  j                  | j                  d   d   |z         y )Nr3   rZ   r   )r   r+   ro   r   )r   bysteps      r   rZ   zTranslator.indento  sG    ||BB		8,Q/$67r   c                     | j                   j                          | j                  j                  | j                  d   d          y )NrZ   r2   )r   r   ro   r+   r   r   s    r   r   zTranslator.dedentu  s2    		8,Q/0r   c                 .    | j                  t               y r   )rZ   OPTION_LIST_INDENTr   s     r   visit_option_listzTranslator.visit_option_listy  s    &'r   c                 $    | j                          y r   r  r   s     r   depart_option_listzTranslator.depart_option_list|  rO  r   c                 Z    | j                   j                  | j                  d   d          y )Nr_   r   rQ  r   s     r   visit_option_list_itemz!Translator.visit_option_list_item  s#    		#56q9:r   c                 Z    | j                   j                  | j                  d   d          y )Nr_   r2   rQ  r   s     r   depart_option_list_itemz"Translator.depart_option_list_item  s#    		#56q9:r   c                     | j                   j                  d       | j                   j                  t        | j                               | j                   j                  d       y )Nr   r   )rr   r+   r5   ro   r   s     r   visit_option_groupzTranslator.visit_option_group  sB     	E"C		N+Ar   c                 6   | j                   j                          | j                   j                         }| j                  |d  }| j                  |d = | j                  j                  | j                   j                         dj	                  |      d       y )NrI   r:   )rr   r   ro   r+   r?   )r   r   start_positionrC   s       r   depart_option_groupzTranslator.depart_option_group  sn    ))+yy)IIno&		T\\%5%5%7GHr   c                 J   | j                   d   dkD  rI| j                   d   dk(  r| j                  j                  d       n| j                  j                  d       | j                   d   dk(  r| j                  j                  d       | j                  j                  d       y )	Nr3   r   .BIz\fR,\fB z\fP,\fB r   r=   )rr   ro   r+   r   s     r   visit_optionzTranslator.visit_option  s}    <<a||B5(		  .		  .<<u$IIT"		r   c                 2    | j                   dxx   dz  cc<   y )Nr3   r2   )rr   r   s     r   depart_optionzTranslator.depart_option  s    RAr   c                      y r   r   r   s     r   visit_option_stringzTranslator.visit_option_string  r   r   c                      y r   r   r   s     r   depart_option_stringzTranslator.depart_option_string  r   r   c                 L   d| j                   d<   |d   dk7  r"| j                  j                  d|d   z         y | j                  t        | j                        dz
     j	                  d      r| j                  j                  d       y | j                  j                  d       y )	Nr  r  	delimiterr=   z\fB%s r2   =z \ )rr   ro   r+   r5   rB   r   s     r   visit_option_argumentz Translator.visit_option_argument  s     R#IIYk)::;YYs499~a'(11#6IIS! IIV$r   c                      y r   r   r   s     r   depart_option_argumentz!Translator.depart_option_argument  r   r   c                 (    | j                  |d       y )Norganizationr   r   s     r   visit_organizationzTranslator.visit_organization  s    n5r   c                      y r   r   r   s     r   depart_organizationzTranslator.depart_organization  r   r   c                     t        |j                  d   t        j                        }|j                  j                  |d  D ]$  }t        |t        j
                        r||u r y y y)Nr   r2   )r  r  r   rk  r   	Invisible)r   r   firstchilds       r   first_childzTranslator.first_child  s`    4;;q>5;;7[[))%&1 	E%1}	 r   c                     | j                          | j                  |      s| j                  j                  d       d| _        y )Nr1   T)r   r-  ro   r+   r   r   s     r   visit_paragraphzTranslator.visit_paragraph  s6     	%IIW%r   c                 H    d| _         | j                  j                  d       y )NFr:   )r   ro   r+   r   s     r   depart_paragraphzTranslator.depart_paragraph  s     		r   c                 Z    | j                   j                  | j                  d   d          y )Nrg   r   rQ  r   s     r   visit_problematiczTranslator.visit_problematic  "    		=1!45r   c                 Z    | j                   j                  | j                  d   d          y )Nrg   r2   rQ  r   s     r   depart_problematiczTranslator.depart_problematic  r4  r   c                     |j                  d      dk(  r,| j                  j                  |j                         dz          t        j
                  )Nformatr
   r:   )r   ro   r+   r   r   r   r   s     r   	visit_rawzTranslator.visit_raw  s:    88H*IIT[[]T12nnr   c                 Z    | j                   j                  | j                  d   d          y)zE.g. link or email address.r`   r   NrQ  r   s     r   visit_referencezTranslator.visit_reference  s"    		;/23r   c                 Z    | j                   j                  | j                  d   d          y )Nr`   r2   rQ  r   s     r   depart_referencezTranslator.depart_reference  s$     			;/23r   c                 (    | j                  |d       y )Nrevisionr   r   s     r   visit_revisionzTranslator.visit_revision  s    j1r   c                 8    | j                   j                          y r   )r}   r,   r   s     r   	visit_rowzTranslator.visit_row  s    ""$r   c                      y r   r   r   s     r   
depart_rowzTranslator.depart_row  r   r   c                 .    | xj                   dz  c_         y r[  rq   r   s     r   visit_sectionzTranslator.visit_section      ar   c                 .    | xj                   dz  c_         y r[  rF  r   s     r   depart_sectionzTranslator.depart_section  rH  r   c                 (    | j                  |d       y )Nstatusr   r   s     r   visit_statuszTranslator.visit_status   r   r   c                 Z    | j                   j                  | j                  d   d          y )Nrb   r   rQ  r   s     r   visit_strongzTranslator.visit_strong  "    		8,Q/0r   c                 Z    | j                   j                  | j                  d   d          y )Nrb   r2   rQ  r   s     r   depart_strongzTranslator.depart_strong  rP  r   c                 "    t         j                  )zInternal only.r   r   r   s     r   visit_substitution_definitionz(Translator.visit_substitution_definition      nnr   c                 R    | j                   j                  j                  d|       y )Nz&"substitution_reference" not supportedrt  r  r   s     r   visit_substitution_referencez'Translator.visit_substitution_reference  s%    &&4 	' 	Fr   c                    t        |j                  t        j                        r,| j                  j                  | j                  d   d          y t        |j                  t        j                        r| j                  |d       y t        |j                  t        j                        r,| j                  j                  | j                  d   d          y y )Nrb   r   rM   )
r  r  r   sidebarro   r+   r   r   r   sectionr   s     r   visit_subtitlezTranslator.visit_subtitle  s    dkk5==1IITYYx034U^^4##D*5U]]3IITYYx034 4r   c                 `    | j                   j                  | j                  d   d   dz          y )Nrb   r2   z
.PP
rQ  r   s     r   depart_subtitlezTranslator.depart_subtitle  s'    		8,Q/	9:r   c                     i }|j                  d      r|d   |d<   |j                  d      r	d|d   z  }nd}| j                  j                  d|d   d|d	   d
|d   d|d	       y )Nidr   linez	, line %srI   z.IP "System Message: typer  levelz (sourcer   z)"
)hasattrro   r+   )r   r   attrra  s       r   visit_system_messagezTranslator.visit_system_message  so    
 <<:DL<<f-DD		 L$w-hO 	Pr   c                      y r   r   r   s     r   depart_system_messagez Translator.depart_system_message.  r   r   c                     t               | _        | j                  s$d| _        | j                  j	                  dd       y y )NTr   z'\" t
)r!   r}   r~   rn   insertr   s     r   visit_tablezTranslator.visit_table1  s6    "W   $DIIQ, !r   c                     | j                          | j                  j                  | j                  j	                                d | _        y r   )r   ro   rA   r}   rG   r   s     r   depart_tablezTranslator.depart_table9  s5    		++3356!r   c                 "    t         j                  r   rT  r   s     r   visit_targetzTranslator.visit_target>  rV  r   c                      y r   r   r   s     r   visit_tbodyzTranslator.visit_tbodyB  r   r   c                      y r   r   r   s     r   depart_tbodyzTranslator.depart_tbodyE  r   r   c                 Z    | j                   j                  | j                  d   d          y )Nrc   r   rQ  r   s     r   
visit_termzTranslator.visit_termH  "    		6*1-.r   c                 Z    | j                   j                  | j                  d   d          y )Nrc   r2   rQ  r   s     r   depart_termzTranslator.depart_termK  rw  r   c                      y r   r   r   s     r   visit_tgroupzTranslator.visit_tgroupN  r   r   c                      y r   r   r   s     r   depart_tgroupzTranslator.depart_tgroupQ  r   r   c                      y r   r   r   s     r   visit_theadzTranslator.visit_theadT  r   r   c                      y r   r   r   s     r   depart_theadzTranslator.depart_theadX  r   r   c                 (    | j                  |d       y )Ntipr   r   s     r   	visit_tipzTranslator.visit_tip\  s    dE*r   c                    t        |j                  t        j                        r,| j                  j                  | j                  d   d          y t        |j                  t        j                        r,| j                  j                  | j                  d   d          y t        |j                  t        j                        r| j                  j                  d       y | j                  dk(  rX|j                         | j                  d<   |j                         j                         | j                  d<   t        j                  | j                  dk(  rY| j                  j                  d| j                  |j                         j                               z         t        j                  | j                  j                  d	       y )
Nre   r   rf   z.IP "rK   rL   r2   z.SH %s
rX   )r  r  r   topicro   r+   r   rZ  
admonitionrq   r   rx   r   r   r   r   s     r   visit_titlezTranslator.visit_titlea  s.   dkk5;;/IITYY}5a89U]]3IITYY7:;U%5%56IIW%1$%)[[]DMM'"+/;;=+>+>+@DMM-(.. 1$IIZt{{}7J7J7L(MMN.. IIV$r   c                     t        |j                  t        j                        r| j                  j                  d       | j                  j                  d       y )Nr   r:   )r  r  r   r  ro   r+   r   s     r   depart_titlezTranslator.depart_titles  s:    dkk5#3#34IIS!		r   c                 Z    | j                   j                  | j                  d   d          y)zinline citation referencerd   r   NrQ  r   s     r   visit_title_referencez Translator.visit_title_referencex  s#    		#45a89r   c                 Z    | j                   j                  | j                  d   d          y )Nrd   r2   rQ  r   s     r   depart_title_referencez!Translator.depart_title_reference|  s#    		#45a89r   c                      y r   r   r   s     r   visit_topiczTranslator.visit_topic  r   r   c                      y r   r   r   s     r   depart_topiczTranslator.depart_topic  r   r   c                      y r   r   r   s     r   visit_sidebarzTranslator.visit_sidebar  r   r   c                      y r   r   r   s     r   depart_sidebarzTranslator.depart_sidebar  r   r   c                      y r   r   r   s     r   visit_rubriczTranslator.visit_rubric  r   r   c                 :    | j                   j                  d       y r  r  r   s     r   depart_rubriczTranslator.depart_rubric  r  r   c                 :    | j                   j                  d       y )Nz
.sp
.ce
----
r  r   s     r   visit_transitionzTranslator.visit_transition  s     			-.r   c                 :    | j                   j                  d       y )Nz
.ce 0
.sp
r  r   s     r   depart_transitionzTranslator.depart_transition  s    		)*r   c                 (    | j                  |d       y )NrS   r   r   s     r   visit_versionzTranslator.visit_version  r   r   c                 (    | j                  |d       y )Nrw  r   r   s     r   visit_warningzTranslator.visit_warning  r  r   c                 F    t        d|j                  j                  z        )Nz$visiting unimplemented node type: %s)r  	__class__r   r   s     r   unimplemented_visitzTranslator.unimplemented_visit  s$    !"H$(NN$;$;#< = 	=r   r   )g      ?)r   r   r   __doc__recompilewords_and_spacesr   re  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   depart_attentionr   r   r   depart_authorr   r  r   r   r	  r  r  r  r  depart_cautionr  r  r"  r$  r&  r(  r*  r,  r.  r/  r2  depart_contactr4  r6  r8  r:  r<  r?  depart_dangerrA  rC  rE  rG  rI  rL  rN  rR  rU  rW  rY  r\  r^  r`  rc  rg  rl  rn  rq  rx  rz  r|  r~  r  depart_errorr  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  depart_hintr  r  r  r  r  r  r  r  depart_importantr  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  depart_noterZ   r   r  r
  r  r  r  r  r  r  r  r  r!  r#  r&  r(  r-  r/  r1  r3  r6  r9  r;  r=  r@  depart_revisionrB  rD  rG  rJ  rM  depart_statusrO  rR  rU  rX  r\  r^  rg  ri  rl  rn  rp  rr  rt  rv  ry  r{  r}  r  r  r  
depart_tipr  r  r  r  r  r  r  r  r  r  r  r  r  r  depart_warningr  r   r   r   r   r      sC   
!rzz,/(bjj1DNDP.#
:.
*=9~,	 1%(&1 )0 (M/ 'N/
#> %"**X.22
1 )N3. &M.,??
 8 P833,
- %L!'957?
71, $K%$%$#	1 ) 	))322 !
"'
(, $K81(;;I		%6
 6644
2 *O%  0 (M11F5;P-"
//+ #J%$
::/+1/ 'N=r   r   )r  __docformat__r  docutilsr   r   r   r   ImportErrordocutils.utils.romanutilsr  rK  r  r  r  r   r	   r!   rh   r   r   r   r   <module>r     s   
%N # 	 . .)      	<'W^^ '$2 2jA="" A=a  )(()s   A A*)A*