B “äî\ˆ‹ã@s°dZdZddlZddlZddlmZmZmZy ddlZWn&ek r^ddl m mZYnXdZ dZ dZ dZdZdZGdd „d ejƒZGd d „d eƒ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@s$eZdZdZdZdd„Zdd„ZdS)ÚWriter)ÚmanpageNcCstj |¡t|_dS)N)rrÚ__init__Ú TranslatorÚtranslator_class)Úself©r úd?„Z'eZ(d@dA„Z)dBdC„Z*dDdE„Z+dFdG„Z,dHdI„Z-dJdK„Z.dLdM„Z/dNdO„Z0e dP¡j1fdQdR„Z2dSdT„Z3eZ4dUdV„Z5dWdX„Z6dYdZ„Z7d[d\„Z8d]d^„Z9d_d`„Z:eZ;dadb„Zdgdh„Z?didj„Z@dkdl„ZAdmdn„ZBdodp„ZCdqdr„ZDdsdt„ZEdudv„ZFdwdx„ZGdydz„ZHd{d|„ZId}d~„ZJdd€„ZKdd‚„ZLdƒd„„ZMd…d†„ZNd‡dˆ„ZOd‰dŠ„ZPd‹dŒ„ZQddŽ„ZRdd„ZSeZTd‘d’„ZUd“d”„ZVd•d–„ZWd—d˜„ZXd™dš„ZYd›dœ„ZZddž„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æ„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‹eZŒddüdý„Zdþdÿ„ZŽdd„Zdd„Zdd„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„Zdd„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ìtj ||¡|j|_}|j}t ||j¡|_g|_ g|_ g|_ d|_ g|_ d|_g|_d|_d|_g|_dddddgddddœ |_g|_i|_d|_d|_d|_d|_d|_g|_d|_ dg|_dddd d d d d d dd ddddœ|_dS)Nrr4r!) ÚtitleÚ title_upperÚsubtitleÚmanual_sectionÚ manual_groupÚauthorÚdateÚ copyrightÚversionF)z .INDENT %.1f z .UNINDENT )z.TPr4)z.TP .B r()z\fBz\fP)z.sp .nf .ft C z .ft P .fi )z.TP r4)z\fI\%z\fP)z\fIz\fP)z .B r()z.SS )z .nf z .fi )ÚindentÚdefinition_list_itemÚ field_nameÚliteralÚ literal_blockÚoption_list_itemÚ referenceÚemphasisÚstrongÚtermÚtitle_referencez topic-titlez sidebar-titleÚ problematic)rÚ NodeVisitorrÚsettingsZ language_coderZ get_languageÚreporterÚlanguageÚheadÚbodyÚfootÚ section_levelÚcontextZ topic_classÚcolspecsZ compact_pZcompact_simpleÚ _list_charÚ_docinfoÚ _docinfo_keysÚ_docinfo_namesÚ _in_docinfoÚ _active_tableÚ _in_literalÚheader_writtenÚ _line_blockZauthorsÚ_indentÚdefs)r rrKZlcoder r r r¥sZ   zTranslator.__init__cs&d‰d ‡fdd„| d¡Dƒ¡}|S)zPReturn commented version of the passed text WITHOUT end of line/comment.z.\" r4csg|]}ˆ|d‘qS)r(r )Ú.0Zin_line)Úprefixr r ú ïsz,Translator.comment_begin..r()r,Úsplit)r r0Zout_textr )r`r Ú comment_beginês  zTranslator.comment_begincCs| |¡dS)z,Return commented version of the passed text.z. )rc)r r0r r r ÚcommentószTranslator.commentcCs0t|jƒdkr,|jdddkr,|j d¡dS)z7Ensure the last line in body is terminated by new line.rr"r(N)r$rOr)r r r r Ú ensure_eol÷s zTranslator.ensure_eolcCs$|js| ¡xútt|jƒdddƒD]à}|j|dkr(|j|ddd…dkr`d|j|<q(|j|ddd …d kr |j|d dd…d kr d|j|<q(|j|dd kr(|j |j|d ¡s(|j|d dd…dksþ|j|d dd…dkr(d|j|<q(Wd |j|j|j ¡S)z0Return the final formatted document as a string.r!rr"z.sp Né)z.BI z.IP z. éz.B éz.TP r(rz.TP .B z .B r4) r[Ú append_headerr-r$rOÚpossibly_a_roff_commandÚmatchr,rNrP)r r2r r r rüs  zTranslator.astextcCs| dd¡}| dd¡}|S)Nõ z\ u†z\(dg)Úreplace)r r0r r r Ú deunicodes  zTranslator.deunicodecCs|| ¡}| dd¡}ddddg}x|D]\}}| ||¡}q&W| |¡}| d¡rZd|}|jrl| d d ¡}|j |¡dS) Nú\z\e)ú-z\-)ú'z\(aq)õ´z\')ú`z\(gaÚ.z\&z .z \&.)rrmrnÚ startswithrZrOr)r Únoder0Z replace_pairsZin_charZ out_markupr r r Ú visit_Texts    zTranslator.visit_TextcCsdS)Nr )r rvr r r Ú depart_Text+szTranslator.depart_Textcs~G‡fdd„dtƒ}dˆkr2|j |ˆdƒ¡n|j |dƒ¡t|jƒdkrf| |jd ¡¡n| |jd ¡¡dS)Ncs:eZdZdddœZ‡fdd„Zdd„Zdd „Zd d „Zd S) z(Translator.list_start..enum_charz\(buz\(em)ÚbulletÚemdashcsÄ||_dˆkrˆdd|_nd|_d|_|dkrdtttˆjƒƒƒ|_|jtt|jƒƒd7_n\|dkrŠ|jtdƒd7_d|_n6|d kr°|jtd ƒd7_d|_n| d ¡rÀd |_dS) Nr&r!rrhÚarabicÚ loweralphaÚargÚ upperalphaÚAÚromané)Ú_styleÚ_cntr]r$ÚstrÚchildrenÚordr/)r Ústyle)rvr r r5s  z1Translator.list_start..enum_char.__init__cSs¨|jdkr|j|jS|jdkr,|j|jS|jd7_|jdkrNd|jS|jdkrbd|jS|j d¡ršt |j¡d }|j d ¡r’| ¡S| ¡Sd|jSdS) Nryrzr!r{z%d.)r|r~z%c.r€rtÚupper) r‚Ú enum_stylerƒr/r€ZtoRomanrurˆÚlower)r Úresr r r Ú__next__Js          z1Translator.list_start..enum_char.__next__cSs|jS)N)r])r r r r Ú get_width\sz2Translator.list_start..enum_char.get_widthcSsdt|jƒS)Nz enum_style-%s)Úlistr‚)r r r r Ú__repr__^sz1Translator.list_start..enum_char.__repr__N)rrrr‰rrŒrrr )rvr r Ú enum_char/s  rZenumtyperyr!éþÿÿÿr")ÚobjectrTrr$r>r)r rvrr )rvr Ú list_start.s2zTranslator.list_startcCs| ¡|j ¡dS)N)ÚdedentrTÚpop)r r r r Úlist_endkszTranslator.list_endcCsd}||jS)Nzv.TH %(title_upper)s %(manual_section)s "%(date)s" "%(version)s" "%(manual_group)s" .SH NAME %(title)s \- %(subtitle)s )rU)r Útmplr r r ÚheaderoszTranslator.headercCs0|jr dS|j | ¡¡|j t¡d|_dS)z#append header with .TH and .SH NAMENr!)r[rNrr˜Ú MACRO_DEF)r r r r rivs  zTranslator.append_headercCs| |d¡dS)NÚaddress)Úvisit_docinfo_item)r rvr r r Ú visit_address€szTranslator.visit_addresscCsdS)Nr )r rvr r r Údepart_addressƒszTranslator.depart_addressNcCs\|rN|j d¡d|jdd|jj ||¡ ¡|jddf}|j |¡| |¡dS)Nz.sp z%s%s:%s rFrr!)rOrr^rMÚlabelsÚgetrˆÚvisit_block_quote)r rvÚnamer r r Úvisit_admonition†s    zTranslator.visit_admonitioncCs| |¡dS)N)Údepart_block_quote)r rvr r r Údepart_admonitionšszTranslator.depart_admonitioncCs| |d¡dS)NZ attention)r¢)r rvr r r Úvisit_attentionszTranslator.visit_attentioncCsB|dkr|j| | ¡¡n| ¡|j|<|j |¡tj‚dS)Nr:)rUrrrVrÚSkipNode)r rvr¡r r r r›¢s  zTranslator.visit_docinfo_itemcCsdS)Nr )r rvr r r Údepart_docinfo_itemªszTranslator.depart_docinfo_itemcCs| |d¡dS)Nr:)r›)r rvr r r Ú visit_author­szTranslator.visit_authorcCsdS)Nr )r rvr r r Ú visit_authors²szTranslator.visit_authorscCsdS)Nr )r rvr r r Údepart_authors¶szTranslator.depart_authorscCs| t¡| d¡dS)Nr)r>ÚBLOCKQOUTE_INDENT)r rvr r r r ¹s zTranslator.visit_block_quotecCs| ¡| ¡dS)N)r”)r rvr r r r£¿szTranslator.depart_block_quotecCs| |¡dS)N)r“)r rvr r r Úvisit_bullet_listÃszTranslator.visit_bullet_listcCs | ¡dS)N)r–)r rvr r r Údepart_bullet_listÆszTranslator.depart_bullet_listcCsdS)Nr )r rvr r r Ú visit_captionÉszTranslator.visit_captioncCsdS)Nr )r rvr r r Údepart_captionÌszTranslator.depart_captioncCs| |d¡dS)NZcaution)r¢)r rvr r r Ú visit_cautionÏszTranslator.visit_cautioncCs0| ¡ dd¡\}}| ¡}|j d|¡dS)Nr!z .IP [%s] 5 )rrbÚstriprOr)r rvÚnumr0r r r Úvisit_citationÔszTranslator.visit_citationcCsdS)Nr )r rvr r r Údepart_citationÙszTranslator.depart_citationcCs"|j d| ¡d¡tj‚dS)Nú[ú])rOrrrr¦)r rvr r r Úvisit_citation_referenceÜsz#Translator.visit_citation_referencecCsdS)Nr )r rvr r r Úvisit_classifieràszTranslator.visit_classifiercCsdS)Nr )r rvr r r Údepart_classifierãszTranslator.depart_classifiercCs|j |¡dS)N)rSr)r rvr r r Ú visit_colspecæszTranslator.visit_colspeccCsdS)Nr )r rvr r r Údepart_colspecészTranslator.depart_colspeccCs|j ddt|jƒ¡dS)Nz%s. zL )rOrr$rS)r r r r Úwrite_colspecsìszTranslator.write_colspecsz-(?=-)cCs |j | | ¡¡¡tj‚dS)N)rOrrdrrr¦)r rvÚsubr r r Ú visit_commentïszTranslator.visit_commentcCs| |d¡dS)NÚcontact)r›)r rvr r r Ú visit_contactôszTranslator.visit_contactcCsdS)Nr )r rvr r r Úvisit_containerùszTranslator.visit_containercCsdS)Nr )r rvr r r Údepart_containerüszTranslator.depart_containercCsdS)Nr )r rvr r r Úvisit_compoundÿszTranslator.visit_compoundcCsdS)Nr )r rvr r r Údepart_compoundszTranslator.depart_compoundcCs| |d¡dS)Nr<)r›)r rvr r r Úvisit_copyrightszTranslator.visit_copyrightcCs| |d¡dS)NZdanger)r¢)r rvr r r Ú visit_dangerszTranslator.visit_dangercCs| |d¡dS)Nr;)r›)r rvr r r Ú visit_date szTranslator.visit_datecCsdS)Nr )r rvr r r Úvisit_decorationszTranslator.visit_decorationcCsdS)Nr )r rvr r r Údepart_decorationszTranslator.depart_decorationcCsdS)Nr )r rvr r r Úvisit_definitionszTranslator.visit_definitioncCsdS)Nr )r rvr r r Údepart_definitionszTranslator.depart_definitioncCs| t¡dS)N)r>ÚDEFINITION_LIST_INDENT)r rvr r r Úvisit_definition_listsz Translator.visit_definition_listcCs | ¡dS)N)r”)r rvr r r Údepart_definition_listsz!Translator.depart_definition_listcCs|j |jdd¡dS)Nr?r)rOrr^)r rvr r r Úvisit_definition_list_item"sz%Translator.visit_definition_list_itemcCs|j |jdd¡dS)Nr?r!)rOrr^)r rvr r r Údepart_definition_list_item%sz&Translator.depart_definition_list_itemcCsdS)Nr )r rvr r r Úvisit_description(szTranslator.visit_descriptioncCsdS)Nr )r rvr r r Údepart_description+szTranslator.depart_descriptioncCs d|_dS)Nr!)rX)r rvr r r Ú visit_docinfo.szTranslator.visit_docinfocCsd|_| ¡dS)N)rXri)r rvr r r Údepart_docinfo1szTranslator.depart_docinfocCs |j |jdd¡d|_dS)NrBrT)rOrr^rZ)r rvr r r Úvisit_doctest_block6szTranslator.visit_doctest_blockcCs d|_|j |jdd¡dS)NFrBr!)rZrOrr^)r rvr r r Údepart_doctest_block:szTranslator.depart_doctest_blockcCs&|j | |j¡ ¡d¡d|_dS)Nr(r)rNrrdÚdocument_startÚrstripr[)r rvr r r Úvisit_document>szTranslator.visit_documentc Cs"|jdr&|j dd |jd¡¡d}x¾|jD]´}|dkrž|j d|jj ||¡|jddd|jddt |j||jdd |jdd f¡q2||kr2||j kr¼|j |}n|jj ||¡}|j d ||j|f¡q2W|jd r |j d |jd ¡|j |  d ¡¡dS)Nr:z.SH AUTHOR %s z, ) r:r<r;r9r8r7r5r6r=ršz %s: %s%s.nf %s .fi %s%sr>rr!z %s: %s r<z.SH COPYRIGHT %s z%Generated by docutils manpage writer.) rUrOrr,rVrMržrŸr^r«rWrd)r rvÚskipr¡Úlabelr r r Údepart_documentDs.       zTranslator.depart_documentcCs|j |jdd¡dS)NrEr)rOrr^)r rvr r r Úvisit_emphasisaszTranslator.visit_emphasiscCs|j |jdd¡dS)NrEr!)rOrr^)r rvr r r Údepart_emphasisdszTranslator.depart_emphasiscCsJd|kr|jjjd|dd|kr4|jjjd|d|j t|jƒ¡dS)NZmorerowsz""table row spanning" not supported)Ú base_nodeZmorecolsz#"table cell spanning" not supported)rrLÚwarningrRrr$rO)r rvr r r Ú visit_entrygs  zTranslator.visit_entrycCs0|j ¡}|j |j|d…¡|j|d…=dS)N)rRr•rYr'rO)r rvr&r r r Ú depart_entryqs zTranslator.depart_entrycCs| |¡dS)N)r“)r rvr r r Úvisit_enumerated_listvsz Translator.visit_enumerated_listcCs | ¡dS)N)r–)r rvr r r Údepart_enumerated_listysz!Translator.depart_enumerated_listcCs| |d¡dS)NÚerror)r¢)r rvr r r Ú visit_error|szTranslator.visit_errorcCsdS)Nr )r rvr r r Ú visit_fieldszTranslator.visit_fieldcCsdS)Nr )r rvr r r Ú depart_field„szTranslator.depart_fieldcCs:|jr6|j ¡ dd¡}|j|j|<| ||¡tj‚dS)Nr*Ú_)rXÚ _field_namerŠrmrWr›rr¦)r rvZname_normalizedr r r Úvisit_field_body‡s   zTranslator.visit_field_bodycCsdS)Nr )r rvr r r Údepart_field_bodyŽszTranslator.depart_field_bodycCs| t¡dS)N)r>ÚFIELD_LIST_INDENT)r rvr r r Úvisit_field_list‘szTranslator.visit_field_listcCs | ¡dS)N)r”)r rvr r r Údepart_field_list”szTranslator.depart_field_listcCs2|jr| ¡|_tj‚n|j |jdd¡dS)Nr@r)rXrrêrr¦rOrr^)r rvr r r Úvisit_field_name—s zTranslator.visit_field_namecCs|j |jdd¡dS)Nr@r!)rOrr^)r rvr r r Údepart_field_namežszTranslator.depart_field_namecCs| d¡| d¡dS)Ng@r)r>)r rvr r r Ú visit_figure¡s zTranslator.visit_figurecCs| ¡| ¡dS)N)r”)r rvr r r Ú depart_figure¥szTranslator.depart_figurecCs|jjjd|ddS)Nz"footer" not supported)rß)rrLrà)r rvr r r Ú visit_footer©s zTranslator.visit_footercCsdS)Nr )r rvr r r Ú depart_footer­szTranslator.depart_footercCs6| ¡ dd¡\}}| ¡}|j d| |¡¡dS)Nr!z .IP [%s] 5 )rrbr±rOrrn)r rvr²r0r r r Úvisit_footnote°szTranslator.visit_footnotecCsdS)Nr )r rvr r r Údepart_footnoteµszTranslator.depart_footnotecCs|jjjd|ddS)Nz!"footnote_backrefs" not supported)rß)rrLrà)r rvr r r Úfootnote_backrefs¸s zTranslator.footnote_backrefscCs(|j d| | ¡¡d¡tj‚dS)Nrµr¶)rOrrnrrr¦)r rvr r r Úvisit_footnote_reference¼sz#Translator.visit_footnote_referencecCsdS)Nr )r rvr r r Údepart_footnote_referenceÀsz$Translator.depart_footnote_referencecCsdS)Nr )r rvr r r Úvisit_generatedÃszTranslator.visit_generatedcCsdS)Nr )r rvr r r Údepart_generatedÆszTranslator.depart_generatedcCst| ¡ƒ‚dS)N)ÚNotImplementedErrorr)r rvr r r Ú visit_headerÉszTranslator.visit_headercCsdS)Nr )r rvr r r Ú depart_headerÌszTranslator.depart_headercCs| |d¡dS)NZhint)r¢)r rvr r r Ú visit_hintÏszTranslator.visit_hintcCs|j d¡dS)Nz\s-2\d)rOr)r rvr r r Úvisit_subscriptÔszTranslator.visit_subscriptcCs|j d¡dS)Nz\u\s0)rOr)r rvr r r Údepart_subscript×szTranslator.depart_subscriptcCs|j d¡dS)Nz\s-2\u)rOr)r rvr r r Úvisit_superscriptÚszTranslator.visit_superscriptcCs|j d¡dS)Nz\d\s0)rOr)r rvr r r Údepart_superscriptÝszTranslator.depart_superscriptcCs|j d¡dS)Nz\(em )rOr)r rvr r r Úvisit_attributionàszTranslator.visit_attributioncCs|j d¡dS)Nr()rOr)r rvr r r Údepart_attributionãszTranslator.depart_attributioncCsj|jjjd|dg}d|jkr0| |jd¡d|jkrJ| |jd¡|j dd |¡¡tj‚dS)Nz"image" not supported)rßZaltÚuriz [image: %s] ú/) rrLràÚ attributesrrOr,rr¦)r rvr0r r r Ú visit_imageæs   zTranslator.visit_imagecCs| |d¡dS)NZ important)r¢)r rvr r r Úvisit_importantñszTranslator.visit_importantcCsdS)Nr )r rvr r r Ú visit_inlineöszTranslator.visit_inlinecCsdS)Nr )r rvr r r Ú depart_inlineùszTranslator.depart_inlinecCsDt|jtjƒst|jtjƒr"tj‚|jjjd|d|j   d¡dS)Nz"unsupported "label")rßrµ) Ú isinstanceÚparentrZfootnoteZcitationr¦rrLràrOr)r rvr r r Ú visit_labelüs  zTranslator.visit_labelcCs|j d¡dS)Nz] )rOr)r rvr r r Ú depart_labelszTranslator.depart_labelcCsdS)Nr )r rvr r r Ú visit_legendszTranslator.visit_legendcCsdS)Nr )r rvr r r Ú depart_legend szTranslator.depart_legendcCs6|jd7_|jdkr&|j d¡n |j d¡dS)Nr!z.nf z.in +2 )r\rOr)r rvr r r Úvisit_line_blocks zTranslator.visit_line_blockcCsB|jd8_|jdkr2|j d¡|j d¡n |j d¡dS)Nr!rz.fi z.sp z.in -2 )r\rOr)r rvr r r Údepart_line_blocks   zTranslator.depart_line_blockcCsdS)Nr )r rvr r r Ú visit_line"szTranslator.visit_linecCs|j d¡dS)Nr()rOr)r rvr r r Ú depart_line%szTranslator.depart_linecCs,|j dt|jdƒ|jd ¡f¡dS)Nz .IP %s %d r")rOrÚnextrTr)r rvr r r Úvisit_list_item(s zTranslator.visit_list_itemcCsdS)Nr )r rvr r r Údepart_list_item.szTranslator.depart_list_itemcCs|j |jdd¡dS)NrAr)rOrr^)r rvr r r Ú visit_literal1szTranslator.visit_literalcCs|j |jdd¡dS)NrAr!)rOrr^)r rvr r r Údepart_literal4szTranslator.depart_literalcCs4| t¡| d¡|j |jdd¡d|_dS)NrrBT)r>ÚLITERAL_BLOCK_INDENTrOrr^rZ)r rvr r r Úvisit_literal_block7s  zTranslator.visit_literal_blockcCs0d|_|j |jdd¡| ¡| ¡dS)NFrBr!)rZrOrr^r”)r rvr r r Údepart_literal_block?szTranslator.depart_literal_blockcCs |jjjd|d| |¡dS)Nz"math" role not supported)rß)rrLràr)r rvr r r Ú visit_mathEs zTranslator.visit_mathcCs| |¡dS)N)r)r rvr r r Ú depart_mathJszTranslator.depart_mathcCs |jjjd|d| |¡dS)Nz"math" directive not supported)rß)rrLràr)r rvr r r Úvisit_math_blockMs zTranslator.visit_math_blockcCs| |¡dS)N)r)r rvr r r Údepart_math_blockRszTranslator.depart_math_blockcCst| ¡ƒ‚dS)N)rýr)r rvr r r Ú visit_metaUszTranslator.visit_metacCsdS)Nr )r rvr r r Ú depart_metaXszTranslator.depart_metacCs| |d¡dS)NZnote)r¢)r rvr r r Ú visit_note[szTranslator.visit_noteçà?cCs4|jd}|j |¡|j |jdd|¡dS)Nr"r>r)r]rrOr^)r ZbyÚstepr r r r>`s  zTranslator.indentcCs$|j ¡|j |jdd¡dS)Nr>r!)r]r•rOrr^)r r r r r”fs zTranslator.dedentcCs| t¡dS)N)r>ÚOPTION_LIST_INDENT)r rvr r r Úvisit_option_listjszTranslator.visit_option_listcCs | ¡dS)N)r”)r rvr r r Údepart_option_listmszTranslator.depart_option_listcCs|j |jdd¡dS)NrCr)rOrr^)r rvr r r Úvisit_option_list_itempsz!Translator.visit_option_list_itemcCs|j |jdd¡dS)NrCr!)rOrr^)r rvr r r Údepart_option_list_itemtsz"Translator.depart_option_list_itemcCs.|j d¡|j t|jƒ¡|j d¡dS)Nz.Br)rRrr$rO)r rvr r r Úvisit_option_groupws zTranslator.visit_option_groupcCsR|j ¡|j ¡}|j|d…}|j|d…=|j d|j ¡d |¡f¡dS)Nz%s%s r4)rRr•rOrr,)r rvZstart_positionr0r r r Údepart_option_groups    zTranslator.depart_option_groupcCsD|jddkr|j d¡|jddkr4|j d¡|j d¡dS)Nr"rz\fP,\fB éýÿÿÿz.BIror*)rRrOr)r rvr r r Ú visit_optionˆs   zTranslator.visit_optioncCs|jdd7<dS)Nr"r!)rR)r rvr r r Ú depart_optionszTranslator.depart_optioncCsdS)Nr )r rvr r r Úvisit_option_string“szTranslator.visit_option_stringcCsdS)Nr )r rvr r r Údepart_option_string—szTranslator.depart_option_stringcCsdd|jd<|ddkr,|j d|d¡n4|jt|jƒd d¡rT|j d¡n |j d¡dS) Nz.BIr0Ú delimiterr*z\fB%s r!ú=z \ )rRrOrr$r/)r rvr r r Úvisit_option_argumentšs   z Translator.visit_option_argumentcCsdS)Nr )r rvr r r Údepart_option_argument¥sz!Translator.depart_option_argumentcCs| |d¡dS)NZ organization)r›)r rvr r r Úvisit_organization¨szTranslator.visit_organizationcCsdS)Nr )r rvr r r Údepart_organization«szTranslator.depart_organizationcCsLt|jdtjƒ}x4|jj|d…D] }t|tjƒr6q$||krBdSPq$WdS)Nrr!)rrrrÛr…Z Invisible)r rvÚfirstÚchildr r r Ú first_child®s zTranslator.first_childcCs"| ¡| |¡s|j d¡dS)Nz.sp )rer=rOr)r rvr r r Úvisit_paragraph¸s zTranslator.visit_paragraphcCs|j d¡dS)Nr()rOr)r rvr r r Údepart_paragraphÂszTranslator.depart_paragraphcCs|j |jdd¡dS)NrIr)rOrr^)r rvr r r Úvisit_problematicÅszTranslator.visit_problematiccCs|j |jdd¡dS)NrIr!)rOrr^)r rvr r r Údepart_problematicÈszTranslator.depart_problematiccCs,| d¡dkr"|j | ¡d¡tj‚dS)NÚformatrr()rŸrOrrrr¦)r rvr r r Ú visit_rawËszTranslator.visit_rawcCs|j |jdd¡dS)zE.g. link or email address.rDrN)rOrr^)r rvr r r Úvisit_referenceÑszTranslator.visit_referencecCs|j |jdd¡dS)NrDr!)rOrr^)r rvr r r Údepart_referenceÕszTranslator.depart_referencecCs| |d¡dS)NÚrevision)r›)r rvr r r Úvisit_revisionØszTranslator.visit_revisioncCs|j ¡dS)N)rYr)r rvr r r Ú visit_rowÝszTranslator.visit_rowcCsdS)Nr )r rvr r r Ú depart_rowàszTranslator.depart_rowcCs|jd7_dS)Nr!)rQ)r rvr r r Ú visit_sectionãszTranslator.visit_sectioncCs|jd8_dS)Nr!)rQ)r rvr r r Údepart_sectionæszTranslator.depart_sectioncCs| |d¡dS)NÚstatus)r›)r rvr r r Ú visit_statusészTranslator.visit_statuscCs|j |jdd¡dS)NrFr)rOrr^)r rvr r r Ú visit_strongîszTranslator.visit_strongcCs|j |jdd¡dS)NrFr!)rOrr^)r rvr r r Ú depart_strongñszTranslator.depart_strongcCs tj‚dS)zInternal only.N)rr¦)r rvr r r Úvisit_substitution_definitionôsz(Translator.visit_substitution_definitioncCs|jjjd|ddS)Nz&"substitution_reference" not supported)rß)rrLrà)r rvr r r Úvisit_substitution_referenceøs z'Translator.visit_substitution_referencecCsjt|jtjƒr&|j |jdd¡n@t|jtjƒrB| |d¡n$t|jtj ƒrf|j |jdd¡dS)NrFrr7) rrrÚsidebarrOrr^rr›Úsection)r rvr r r Úvisit_subtitleüs zTranslator.visit_subtitlecCs|j |jddd¡dS)NrFr!z .PP )rOrr^)r rvr r r Údepart_subtitleszTranslator.depart_subtitlecCsbi}d}| d¡r|d|d<| d¡r6d|d}nd}|j d|d|d|d |f¡dS) Nr4Úidr¡Úlinez , line %sz$.IP "System Message: %s/%s (%s:%s)" ÚtypeÚlevelÚsource)ÚhasattrrOr)r rvÚattrZ backref_textrWr r r Úvisit_system_messages   zTranslator.visit_system_messagecCsdS)Nr )r rvr r r Údepart_system_messagesz Translator.depart_system_messagecCs tƒ|_dS)N)rrY)r rvr r r Ú visit_tableszTranslator.visit_tablecCs$| ¡|j |j ¡¡d|_dS)N)rerOr.rYr3)r rvr r r Ú depart_tableszTranslator.depart_tablecCs tj‚dS)N)rr¦)r rvr r r Ú visit_target#szTranslator.visit_targetcCsdS)Nr )r rvr r r Ú visit_tbody'szTranslator.visit_tbodycCsdS)Nr )r rvr r r Ú depart_tbody*szTranslator.depart_tbodycCs|j |jdd¡dS)NrGr)rOrr^)r rvr r r Ú visit_term-szTranslator.visit_termcCs|j |jdd¡dS)NrGr!)rOrr^)r rvr r r Ú depart_term0szTranslator.depart_termcCsdS)Nr )r rvr r r Ú visit_tgroup3szTranslator.visit_tgroupcCsdS)Nr )r rvr r r Ú depart_tgroup6szTranslator.depart_tgroupcCsdS)Nr )r rvr r r Ú visit_thead9szTranslator.visit_theadcCsdS)Nr )r rvr r r Ú depart_thead=szTranslator.depart_theadcCs| |d¡dS)NZtip)r¢)r rvr r r Ú visit_tipAszTranslator.visit_tipcCsÚt|jtjƒr&|j |jdd¡n°t|jtjƒrL|j |jdd¡nŠt|jtjƒrh|j d¡nn|j dkrš|  ¡|j d<|  ¡  ¡|j d<tj ‚n<|j dkrÊ|j d| |  ¡  ¡¡¡tj ‚n |j d ¡dS) Nz topic-titlerz sidebar-titlez.IP "r5r6r!z.SH %s z.SS )rrrZtopicrOrr^rRÚ admonitionrQrrUrˆr¦rn)r rvr r r Ú visit_titleFs  zTranslator.visit_titlecCs*t|jtjƒr|j d¡|j d¡dS)Nú"r()rrrrkrOr)r rvr r r Ú depart_titleXs zTranslator.depart_titlecCs|j |jdd¡dS)zinline citation referencerHrN)rOrr^)r rvr r r Úvisit_title_reference]sz Translator.visit_title_referencecCs|j |jdd¡dS)NrHr!)rOrr^)r rvr r r Údepart_title_referenceasz!Translator.depart_title_referencecCsdS)Nr )r rvr r r Ú visit_topicdszTranslator.visit_topiccCsdS)Nr )r rvr r r Ú depart_topicgszTranslator.depart_topiccCsdS)Nr )r rvr r r Ú visit_sidebarjszTranslator.visit_sidebarcCsdS)Nr )r rvr r r Údepart_sidebarmszTranslator.depart_sidebarcCsdS)Nr )r rvr r r Ú visit_rubricpszTranslator.visit_rubriccCsdS)Nr )r rvr r r Ú depart_rubricsszTranslator.depart_rubriccCs|j d¡dS)Nz .sp .ce ---- )rOr)r rvr r r Úvisit_transitionvszTranslator.visit_transitioncCs|j d¡dS)Nz .ce 0 .sp )rOr)r rvr r r Údepart_transition|szTranslator.depart_transitioncCs| |d¡dS)Nr=)r›)r rvr r r Ú visit_versionszTranslator.visit_versioncCs| |d¡dS)Nrà)r¢)r rvr r r Ú visit_warning‚szTranslator.visit_warningcCstd|jjƒ‚dS)Nz$visiting unimplemented node type: %s)rýÚ __class__r)r rvr r r Úunimplemented_visit‡szTranslator.unimplemented_visit)N)r')ÒrrrÚ__doc__ÚreÚcompileZwords_and_spacesrjr×rrcrdrerrnrwrxr“r–r˜rirœrr¢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ìrîrïrðrñròrórôrõrör÷rørùrúrûrürþrÿrZ depart_hintrrrrrrr r Zdepart_importantr r rrrrrrrrrrrrrrr r!r"r#r$r%r&Z depart_noter>r”r*r+r,r-r.r/r1r2r3r4r7r8r9r:r=r>r?r@rArCrDrErGZdepart_revisionrHrIrJrKrMZ depart_statusrNrOrPrQrTrUr]r^r_r`rarbrcrdrerfrgrhrirjZ depart_tiprlrnrorprqrrrsrtrurvrwrxryrzZdepart_warningr|r r r r r žs˜  E =                                                                 r )r}Z __docformat__r~Zdocutilsrrrr€Ú ImportErrorZdocutils.utils.romanÚutilsrírÌr)r«rr™rr’rrJr r r r r Ú+s" /