mò Ö²*Ec@s¯dklZlZdklZlZdkZdkZdkZdk Z dk l Z dk Z dk Z eidƒZeidƒZd„Zd„Zhdd <d d <d d <dd<dd<dd<dd<ddtltt1scCst|dƒo||i|idƒƒSnt|dƒo|||iƒƒSnx$|iD]}t ||||ƒq^WdS(Nterefttdata( thasattrtnodetwritertentitiestgetR&tfilterR(t childNodestchildt getLatexText(R*R+R.R,R0((RR11s tBaseLatexSpittercBsStZddd„Zd„Zd„Zd„Zd„ZeZd„Zd „Z RS( Nt.R'cCs||_||_||_dS(N(R+tselftcurrDirtfilename(R4R+R5R6((Rt__init__;s  cCsdt|tiƒodSnt|dƒp|i|ƒdSnt|d|i|i ƒ|ƒdS(NttagNamet visitNode_( t isinstanceR*tmicrodomtCommentR)R4t writeNodeDatatgetattrR8tvisitNodeDefault(R4R*((Rt visitNode@s  cCse|it|d|idƒƒx|iD]}|i|ƒq*W|it|d|idƒƒdS(Ntstart_R'tend_(R4R+R>R*R8R/R0R@(R4R*R0((RR?Hs   cCs‘|idƒo.|idƒidƒo|i|ƒSq>n|idƒo|i|ƒSn|idƒo|i|ƒSn|i|ƒdS(Ntclasstlistingthreftname( R*t hasAttributet getAttributetendswithR4tvisitNode_a_listingtvisitNode_a_hreftvisitNode_a_nameR?(R4R*((Rt visitNode_aNscCsN|idƒp|i|ƒSn|id|idƒ7_|i|ƒdS(NRCt_(R*RGR4R?R8RHR@(R4R*((RtvisitNode_spanXscCsdS(N((R4R*((Rt visitNode_h1`scCsdS(N((R4R*((RtvisitNode_stylecs( t__name__t __module__R7R@R?RMROt visitNode_divRPRQ(((RR29s    t LatexSpittercBsntZdZeeidƒƒZd„Zd„Zd„Z d„Z d„Z d„Z d „Z d „Zd „Zd „Zd „Zd„Zd„Zd„Zd„ZeZZZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'd Z(d!Z)d"Z*d#Z+d!Z,d$Z-d%Z.Z/d&Z0Z1d'Z2d(Z3d)Z4d*Z5d+Z6d,Z7RS(-NitdiacCsKtƒ}t||itƒ|i|iƒi ddƒi ddƒƒdS(NRs$<$Rs$>$( tStringIOtbufR1R*twriteRR4R+tgetvalueR (R4R*RX((RR=ls c Cs9ti|ddƒ}g}|D]!}|idjo ||q q ~}|o×|idƒg}xš|D]’}|i ddƒ}|i ddƒ}|idƒo|d }n|o+|o|d 7}n|d |d 7}n|o|i|ƒqkqkW|id i|ƒƒ|idƒn|i|ƒdS(Ntreltauthortlinks\author{ttitleR'REsmailto:iR s$<$s$>$s \and R(t domhelperstfindElementsWithAttributeR*t authorNodest_[1]tnR8R4R+tauthorstaNodeRHRFRER!tappendR R?( R4R*RFRaRcRbREReRd((RtvisitNode_headqs(5 cCsS|idƒtƒ}t||iƒ|iti|i ƒƒƒ|idƒdS(Ns\begin{verbatim} s\end{verbatim} ( R4R+RWRXR1R*RYR tremoveLeadingTrailingBlanksRZ(R4R*RX((Rt visitNode_pre‰s   cCsktƒ}t||itƒtid|iƒƒ}|d |di ddƒ}|i d|dƒdS(Ns\1\\linebreak[1]\2iR3s.\linebreak[1]s\texttt{R( RWtfoutR1R*RYRt lowerUpperRER RZR(R R4R+(R4R*RjR(((RtvisitNode_codes  cCsòtii|i|idƒƒ}tii|ƒ\}}|i o.ti |dti ƒod}||}nt|d|ddƒ}|pdSntii|itii|ƒdƒ}|||ƒtii|ƒ}|i|ƒdS(Ntsrcs.diatconvert_is.eps(RRR R4R5R*RHtfileNametsplitextttargettexttdiaHacktaccesstR_OKR>tNonetftbasenamet _write_img(R4R*RqRwRoRr((Rt visitNode_img—s!$( cCs|id|ƒdS(sWrite LaTeX for image.so\begin{center}\includegraphics[%% width=1.0 \textwidth,height=1.0\textheight, keepaspectratio]{%s}\end{center} N(R4R+Rq(R4Rq((RRy¥scCs:tid||fƒ}|djot|ƒ‚ndS(Ns&pngtopnm "%s" | pnmtops -noturn > "%s"i(RtsystemRmRqtrtOSError(R4RmRqR|((Rt convert_png¬s cCs‘tid|ƒiƒ}d}d}td|dƒi|i ||ƒƒti d|fƒti d||fƒti d||fƒdS( Ns gunzip -dc %ss< s> s %s_hacked.diatwbsgzip %s_hacked.dias!mv %s_hacked.dia.gz %s_hacked.diasdia %s_hacked.dia -n -e %s( RtpopenRmtreadR(tpretposttopenRYR R{Rq(R4RmRqR‚R(Rƒ((Rt convert_dia³s&cCspt|idƒd|i}|id|ddƒt|i|i|i ƒ}|i |ƒ|idƒdS(Niis \R ssection{s} ( tintR*R8R4t baseLeveltlevelR+tHeadingLatexSpitterR5R6tspitterR?(R4R*RˆRŠ((RtvisitNodeHeaderÁs  cCsótii|i|idƒƒ}|idƒt t i t |ƒi ƒƒ}|t|iddƒƒ}|itidi|ƒƒƒ|idƒtii|ƒ}ti|ƒ}||jo d}n|idt|ƒt|ƒfƒdS( NREs\begin{verbatim} t skipLinesis s\end{verbatim}sSource listingsM\parbox[b]{\linewidth}{\begin{center}%s --- \begin{em}%s\end{em}\end{center}}(RRR R4R5R*RHRoR+tmaptstringtrstripR„t readlinestlinesR†R RhRxR_t getNodeTexttcaptionR(R4R*R‘RoR“((RRJÈs!    cCsKddddg}|idƒ}ti|ƒd|joHti|ƒ}|i |ƒ||jo|i dt |ƒƒqGnÅ|i dd ƒdgd \}}|d jo |i}n%tiitii|iƒ|ƒ}t|ƒ}|o|d |}n|}|i d ƒ|i |ƒ|i dƒ|i d|ƒdS(NthttpthttpstftptmailtoREis \footnote{%s}t#iiR'tHASHs\textit{Rs \loreref{%s}(tsupported_schemesR*RHREturlparseR_R’R R4R?R+RtsplitRvRtfragidR6RR tdirnameR#tref(R4R*RšRŸR RRER((RRKÙs&  #  $    cCs:|idt|iƒ|idƒfƒ|i|ƒdS(Ns\label{%sHASH%s}RF(R4R+R#R6R*RHR?(R4R*((RRLùs)c Cs¦g}|iD]e}t|ddƒdjoF|g}|iD]*}t|ddƒdjo ||q>q>~qq~}dt g}|D]}|t |ƒq~ƒ}|i dƒ|i dd|d ƒx~|D]v}d }xB|D]:}|i|ƒ|i d ƒ|idjo d}qíqíW|i d ƒ|o|i d ƒqÚqÚW|i dƒ|idƒo$|i dt|idƒƒƒn|i dƒdS(NR8ttrtthttdis\begin{table}[ht]\begin{center}s\begin{tabular}{@{}tls@{}}it&s\\ s\hline s\end{tabular} R^s \caption{%s}s\end{center}\end{table} (sthstd(RbR*R/trowR>Rvt_[2]tcoltrowstmaxR"tnumColsR4R+R¡R@R8RGRRH( R4R*R¨RbR¡R¦R§RªR¥((RtvisitNode_tables(|1     $cCsF|idƒt|i|i|iƒ}|i|ƒ|idƒdS(Ns \footnote{R(R4R+tFootnoteLatexSpitterR5R6RŠR?R*(R4R*RŠ((RtvisitNode_span_footnotes  cCs+|id|idƒƒ|i|ƒdS(Ns \index{%s} tvalue(R4R+R*RHR?(R4R*((RtvisitNode_span_indexss\title{s} s$_{s}$s$^{s®\documentclass{article} \newcommand{\loreref}[1]{% \ifthenelse{\value{page}=\pageref{#1}}% { (this page)}% { (page \pageref{#1})}% }s\begin{document} \maketitle s\end{document}s\begin{description} s\end{description} s\begin{itemize} s\end{itemize} s\begin{enumerate} s\end{enumerate} s\item s s\item[t]s s \begin{em}s\end{em}s``s''s\begin{quotation}\textbf{Note:}s\end{quotation}s\textbf{R(8RRRSR‡tboolt procutilstwhichRsR=RgRiRlRzRyR~R…R‹RJRKRLR«R­R¯t visitNode_h2t visitNode_h3t visitNode_h4t start_titlet end_titlet start_subtend_subt start_suptend_supt start_htmlt start_bodytend_bodytstart_dltend_dltstart_ultend_ultstart_oltend_oltstart_litend_litstart_dttend_dttend_ddtstart_pt start_strongtstart_emt end_strongtend_emtstart_qtend_qtstart_div_notet end_div_notetstart_thtend_th(((RRUgs^                tSectionLatexSpittercBs/tZdZdZd„ZdZZZZRS(Nis \section{cCs+|i|ƒ|idt|iƒƒdS(Ns \label{%s}} (R4R?R*R+R#R6(R4R*((RtvisitNode_titleZs R'( RRRSR‡R·R×R¸R¿R¾R½(((RRÖTs tChapterLatexSpittercBstZdZdZRS(Nis \chapter{(RRRSR‡R·(((RRØbsR‰cBs tZdZdZeiiZRS(Ns``s''(RRRSRÐRÑRUR=tim_func(((RR‰gsR¬cBs&tZdZdZd„Zd„ZRS(sQFor multi-paragraph footnotes, this avoids having an empty leading paragraph.R'cCs|i|ƒdS(N(R4R?R*(R4R*((RR­tscCs|i|ƒti|_dS(N(R4R?R*RURË(R4R*((Rt visitNode_pws (RRRSt__doc__RËR­RÚ(((RR¬ns  tBookLatexSpittercBsktZd„Zd„Zd„Zd„ZdZdZdZdZ dZ dZ d„Z d „Z d „ZRS( NcCs^ti|gddƒ}ti|ƒt|ƒo|d}|i|ƒn|i |ƒdS(NRCttoci( R_t locateNodesR*ttocst clearNodeR"RÝt appendChildR4R?(R4R*RÝRß((RtvisitNode_body|s    cCsN|idƒp|i|ƒSn|id|idƒ7_|i|ƒdS(NR[RN(R*RGR4R?R8RHR@(R4R*((RtvisitNode_link„scCs|id|idƒƒdS(Ns \author{%s} R (R4R+R*RH(R4R*((RtvisitNode_link_authorŠscCsz|idƒof|idƒoV|idƒdjo<|idƒ}tii|ƒ\}}|i d|ƒqvndS(NttypeREsapplication/x-latexs\usepackage{%s} ( R*RGRHt packagenameRRRpt packagebaseRrR4R+(R4R*RçRrRæ((RtvisitNode_link_stylesheets  sP\documentclass[oneside]{book} \usepackage{graphicx} \usepackage{times,mathptmx} s-\begin{document} \maketitle \tableofcontents R'cCs®|idƒoK|idƒ}|idƒo|i|ƒSq[t|d|ƒ|ƒSn|idƒo|i|ƒSn|idƒo|i |ƒSn|i |ƒdS(NRCRDsvisitNode_a_%sRERF( R*RGRHta_classRIR4RJR>RKRLR?(R4R*Ré((RRM¤scCs+|idƒ|i|ƒ|idƒdS(Ns \chapter{s} (R4R+R?R*(R4R*((RtvisitNode_a_chapter±s  cCs6tii|idƒƒ\}}|id|ƒdS(NREs \input{%s} ( RRRpR*RHtbaseRrR4R+(R4R*RëRr((RtvisitNode_a_sect¶s!(RRRSRâRãRäRèR½R¾RÆRÇRÂRÃRMRêRì(((RRÜ{s     cCs#ti|ƒi}|i|ƒdS(N(R;tparsetfintdocumentElementtdomRŠR@(RŠRîRð((Rt processFile¼scCsuttii|ƒdddƒ}||itii|ƒ|ƒ}t|ƒ}t ||ƒ|i ƒ|i ƒdS(Nis.textw( R„RRRpR6Rjt spitterClassRYRžRŠRîRñtclose(R6RóRŠRjRî((Rt convertFileÁs #!   (t twisted.webR;R_ttwisted.pythonR R²Rtos.pathtreRŽt cStringIORWR›ttreetcompileR RkRRR,R#R1R2RURÖRØR‰R¬RÜRñRõ(RÜRÖRkR R RUR2R;R,RRùRØR#RŽRñRõRWR¬RûR_RR›R1R‰RR²((Rt?s*$    N .í A