m iEc@sdZdZdkZdkZdklZdkZdklZl Z l Z dk l Z dk lZde ifdYZd efd YZd efd YZd efdYZdeifdYZdS(s LaTeX2e document tree Writer. treStructuredTextN(sListType(snodesswriterssutils(s unicode_map(s writer_auxtWriterc BsntZd&ZdZeieiiei deiieii e eZ ddddghd d <d d <d dt overrideststylesheet_pathsmSpecify a stylesheet file, relative to the current working directory. Overrides --stylesheet. Default: "%s"s--stylesheet-patht stylesheets2Specify a user stylesheet file. See --stylesheet.s--user-stylesheettuser_stylesheet_paths7Specify a user stylesheet file. See --stylesheet-path.s--user-stylesheet-pathtuser_stylesheettoutput_encodingtasciitoutput_encoding_error_handlertstrictttrim_footnote_reference_spaceit docinfo_xformit tracebacksnewlatex2e writertwriterscCstii|tigS(N(RRtget_transformstselft writer_auxtCompound(R((tC/data/zmath/zope/lib/python/docutils/writers/newlatex2e/__init__.pyRVscCstii|t|_dS(N(RRt__init__RtLaTeXTranslatorttranslator_class(R((RRYscCsi|i|i}|ii||i ptd|i|i|_|i |_ |i |_ dS(Nscontext not empty: %s( RRtdocumenttvisitort walkabouttcontexttAssertionErrortastexttoutputtheadertheadtbody(RR((Rt translate]s  (RR(R R (swriters(t__name__t __module__t supportedtdefault_stylesheettutilst relative_pathtostpathtjointgetcwdtdirnamet__file__tdefault_stylesheet_patht settings_spectsettings_defaultstrelative_path_settingstconfig_sectiontconfig_section_dependenciestNoneR#RRR'(((RRs$3   tLaTeXExceptioncBstZdZRS(sl Exception base class to for exceptions which influence the automatic generation of LaTeX code. (R(R)t__doc__(((RR;fs tSkipAttrParentLaTeXcBstZdZRS(s Do not generate ``\Dattr`` and `` enewcommand{\Dparent}{...}`` for this node. To be raised from ``before_...`` methods. (R(R)R<(((RR=ms tSkipParentLaTeXcBstZdZRS(sx Do not generate `` enewcommand{\DNparent}{...}`` for this node. To be raised from ``before_...`` methods. (R(R)R<(((RR>vs RcBstZhdd<dd<dd<dd<d d <d d <d d<dd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJdZ?dZ@dZAdZBdZCdZDRS(Ntnotnorsktgdtscottishtslt sloveniantaft afrikaanstbgt bulgariantbrtbretontcatcatalantcstczechtcytwelshtdatdanishtfrtfrenchtdetngermanteltgreektentenglishteot esperantotestspanishtettestonianteutbasquetfitfinnishtgatirishtgltgalicianthethebrewthrtcroatianthut hungariantist icelandictittitaliantlatlatintnltdutchtpltpolishtptt portuguesetrotromaniantrutrussiantsktslovaktsrtserbiantsvtswedishttrtturkishtukt ukrainianicCstii|||i|_g|_g|_g|_t i |it i i t id|_|io|iii|in|ii|i_|ii|i_t i |it i i t id|_|io|iii|in|idS(NR(tnodest NodeVisitorRRRtsettingsR$R&R R,tget_stylesheet_referenceR.R/R0R1R trecord_dependenciestaddR R R t write_header(RR((RRs    - - cCs|ii}|dti|d|d|iipd}|d||d|i i ||i i |i ddd|d|i o|d|d |i n|d |d |i |d|d x+tiD] }|d |iddqW|d|d |d|d|d|d|d|d|d|d|ddS(Ns>%% Generated by Docutils %s .Rs% Docutils settings:s"\providecommand{\Dlanguageiso}{%s}s$\providecommand{\Dlanguagebabel}{%s}t_is% User stylesheet:s \input{%s}s% Docutils stylesheet:s)% Default definitions for Docutils nodes:s\providecommand{\DN%s}[1]{#1}s% Auxiliary definitions:s\providecommand{\Dsetattr}[2]{}s&\providecommand{\Dparent}{} % variables\providecommand{\Dattr}[5]{#5}s'\providecommand{\Dattrlen}{} % variables,\providecommand{\Dtitleastext}{x} % variables-\providecommand{\Dsinglebackref}{} % variables0\providecommand{\Dmultiplebackrefs}{} % variables6\providecommand{\Dparagraphindented}{false} % variables (RR$tappendtatdocutilst __version__Rt language_codetlangtiso639_to_babeltgettsplitR R Rtnode_class_namest node_nametreplace(RRRR((RRs:   9                 u“s{``}u”s{''}u„s{,,}s\s{\textbackslash}t{s{\{}t}s{\}}t$s{\$}t&s{\&}t%s{\%}t#s{\#}t[s{[}t]s{]}t-s{-}t`s{`}t's{'}t,s{,}t"s{"}t|s {\textbar}ts{\textgreater}t^s{\textasciicircum}t~s{\textasciitilde}Rs{\Dtextunderscore}s\#s\%Rs\{s\}s"{}c CsN|djotid|} | ptd||f| i\}} | djo tt |d}d} n.| djo tt |d }d } nd || fSn|o|i i }n |i i }dig}|D]}||||q~}|ip |io| o|id d}|io|idd}|i} n |i} tid| |}|idd}|idd}|Sn|ptidd|}g}xa|i|i dD]I}|o/|i|iodpd|i |_n|i|qWdi|Sn|SdS(s Encode special characters in ``text`` and return it. If attval is true, preserve as much as possible verbatim (used in attribute value encoding). If attval is 'width' or 'height', `text` is interpreted as a length value. twidththeights([0-9.]+)(\S*)$s%s="%s" must be a lengthRids\DrelativeunitRtpxf0.75s \Dpixelunits%s%ss s s \mbox{}\\s\s+Rs\mbox{-}Rs{\Dtextliteralsinglequote}s{ }Rs{\Dtextleftdblquote}s{\Dtextrightdblquote}N(swidthR(RR(tattvaltretmatchttextR!tgroupstvaluetunittstrtfloatRtatt_mapRt character_mapR0t_[1]tct literal_blocktinline_literalRt'encode_replace_for_literal_block_spacest replace_fnt(encode_replace_for_inline_literal_spacestsubtLRtpartRt left_quote( RRRRRRRRRRRR((RtencodesJ      3   cCsdt|iS(NR(tlenRtgroup(RR((RRYscCsddt|idS(Ns{ }Ri(RRR(RR((RR\scCs di|idi|iS(Ns R(R0RR$R&(R((RR"_ss% cCsVg}|idD]}|d|i||q~}|ii di |dS(sM Append text, stripping newlines, producing nice LaTeX code. is RN( RRt splitlinestlineRtindentation_leveltnewlinetlinesR&RR0(RRRRRR((RRbs9cCs |i|i|idS(N(RRRtnodeR"(RR((Rt visit_TextjscCsdS(N((RR((Rt depart_TextmscCst|tiptg}|iD]5}|i|ot|ti  o ||q(q(~}|i |}d|djp(|djo#t||dti odSn|djS(s9Return true if `paragraph` should be first-line-indented.t continuedtclassesiiN( t isinstancet paragraphRR!RtparenttnRt is_visibletTitulartsiblingstindext transition(RRRRRR((Rt is_indentedpsL9cCs,|id|i|odpddS(Ns&\renewcommand{\Dparagraphindented}{%s}ttruetfalse(RRRR(RR((Rtbefore_paragraph|scCsl|id|i|i|idt|idjot|idti odpddS(Ns \renewcommand{\Dtitleastext}{%s}s \renewcommand{\Dhassubtitle}{%s}iiRR( RRRRR"RRRRtsubtitle(RR((Rt before_titles cCs-d|djo|di|d(RRR@R?R;((Rt before_entrys.     cCs|i|iidS(N(RRR R1(RR((Rt depart_entryJscCs tidS(N(RtSkipNode(RR((Rtbefore_substitution_definitionMscCs|iiiddS(NRR(Rt __class__R(R(RR((RRRstalignRtidscCs||ijo9||ijo)t|ii||ii|Sn||ij||ijjo||ijodpdSnt||SdS(s Compare attribute names `a1` and `a2`. Used in propagate_attributes to determine propagation order. See built-in function `cmp` for return value. iiN(ta1Rtattribute_orderta2tcmpR(RRIRK((Rt attribute_cmpXs c si|}g}t|tio|i}n|idd}i |}x |D]\}}t|t oi dt|xftt|D]R}i d|d|i||d||f|pi dqqW|t|7}qgi d|it|d||f|pi dn|d7}qgW|oii d|nii d dS( Ncsi|d|dS(Ni(RRMtpair1tpair2(RNRO(R(Rtns is\renewcommand{\Dattrlen}{%s}s\Dattr{%s}{%s}{%s}{%s}{iRRs\Dattr{}{%s}{%s}{%s}{R(RRRtattlistRRtElementtsorttnumattst pass_contentstkeyRtListTypeRRRRRtunicodeR ( RRRRRRURVRTRQ((RRtpropagate_attributeshs0 4/cCstddS(NsDocinfo not yet implemented.(tNotImplementedError(RR((Rt visit_docinfoscCs|}x~|itiD]j}|idoTt|ti o@|iti}|o#|di |dg|dR=RRDRt SkipSiblingstinstancet SkipDepartureRZRRRtattribute_deletersRRRRQtnameRRWtmacroRRXR R0RURRYRRtSparseNodeVisitortdispatch_visitR;( RRReRfRiRdRlRmRRRk((RRosZ !    ,* cCsst|ti o_t|tipLt|tip9t|tip&t|tip|iddjS(NRGR9tright(sleftRp( RRRRt InvisibleR"R$trawR(RR((Rt is_invisiblescCs|i| S(N(RRsR(RR((RRscCsJt|tipt|tio$|i|pt|iti S(s?Two nodes for which `needs_space` is true need auxiliary space.N( RRRtBodyttopicRRsRR(RR((Rt needs_spacescCst|tiS(s Always add space around nodes for which `always_needs_space()` is true, regardless of whether the other node needs space as well. (E.g. transition next to section.) N(RRRR(RR((Rtalways_needs_spacesc Cs%tii||t|tip|id8_|i|i i |i i |i|i i |i ddddddd|i }|i |o|i |p |i|p|i|oHt|tio$t|tio|idq|idq!ndS( NitascendiRtdescendt conditions\Dparagraphspaces\Dauxiliaryspace(RRntdispatch_departureRRRRRRR R1R]RRvRwR(RRR]((RR{s#@&(ER(R)RRRRt unicode_mapRRRR:RRRR"RRRRRRRRRRtvisit_doctest_blocktdepart_doctest_blockRRRRRRRRRRRRRt before_lineRR!R#R%R&R0R2R3R4R5R6RBRCRERRRJRMRYR[R`RURoRsRRvRwR{(((RR~sT,  ( <  B                 3               ,     "   >   (R<t __docformat__Rtos.pathR.ttypesRWRRRR,tdocutils.writers.newlatex2eR|tdocutils.transformsRRt ExceptionR;R=R>RnR(R;RR>R,RRRRR|RR=RWRRR.((Rt? s      J