Ë }²ªŒ\zííãó—dZdZddlmZddlZddlZddlmZmZm Z m Z Gd„dej«Z Gd„d e j«Z Gd „d ej«ZGd „d ej j"j$«Zy)zv Simple document tree Writer, writes Docutils XML according to https://docutils.sourceforge.io/docs/ref/docutils.dtd. ÚreStructuredTexté)ÚStringION)ÚfrontendÚnodesÚwritersÚutilscó —eZdZy)Ú RawXmlErrorN)Ú__name__Ú __module__Ú __qualname__©óúB/usr/lib/python3.12/site-packages/docutils/writers/docutils_xml.pyr r s„Ørr c óÖ—eZdZdZ ddddgdej dœfdd gdej dœfd d gd d dej dœfddgdd dej dœfffZddiZdZdZ dZ d„Z d„Z y)ÚWriter)Úxmlz"Docutils XML" Writer OptionsNz1Generate XML with newlines before and after tags.z --newlinesÚ store_true)ÚactionÚ validatorz'Generate XML with indents and newlines.z --indentsz,Omit the XML declaration. Use with caution.z--no-xml-declarationÚxml_declarationéÚ store_false)ÚdestÚdefaultrrzOmit the DOCTYPE declaration.z --no-doctypeÚdoctype_declarationÚoutput_encoding_error_handlerÚxmlcharrefreplacezdocutils_xml writer)rcóX—tjj|«t|_y©N)rrÚ__init__Ú XMLTranslatorÚtranslator_class)Úselfs rr!zWriter.__init__7s€Ü�‰×Ñ Ô%Ü -ˆÕrcó¾—|j|j«x|_}|jj|«dj |j «|_y)NÚ)r#ÚdocumentÚvisitorÚ walkaboutÚjoinÚoutput)r$r(s rÚ translatezWriter.translate;sC€Ø!%×!6Ñ!6°t·}±}Ó!EÐEˆŒ �wØ � ‰ ×Ñ Ô(Ø—g‘g˜gŸn™nÓ-ˆ� r) r r r Ú supportedrÚvalidate_booleanÚ settings_specÚsettings_defaultsÚconfig_sectionÚconfig_section_dependenciesr+r!r,rrrrrsÑ„à€IØ'ð (Ø Ø =Ø ˆ.Ø!°×0IÑ0IÑ Jð Lð 4Ø ˆ-Ø!°×0IÑ0IÑ Jð Lð 9Ø !Ð "Ø$°¸mØ ×1Ñ1ñ 3ð 4ð *Ø Ð Ø(°QØ"°×1JÑ1Jñ Lð Mð OðP€Mð$9Ð:MÐNÐà*€NØ".Ðà €FØ.ò.ó.rrcóî—eZdZdZdZej j«Z ejdd«d„Z e je je je jfZd„Zd„Zd„Zd „Zd „Zy ) r"z” z" z5http://xml.org/sax/features/external-general-entitiesTcój—tjj||«|jjj |_|jjj|_|jx|_}dx|_ |_ |jrd|_ |jrd|_ d|_ d|_ d|_d|_g|_|j"r8|j j%t'j"|j(««|j*r%|j j%|j,«|j j%|j.t0j2z«t5«|_|j8j;|j6«y)Nr&Ú z r)rÚ NodeVisitorr!r'ÚreporterÚwarningÚwarnÚerrorÚsettingsÚindentÚnewlineÚnewlinesÚindentsÚlevelÚ in_simpleÚ fixed_textr+rÚappendrÚoutput_encodingrÚdoctypeÚ generatorÚdocutilsÚ __version__ÚTestXmlÚ the_handleÚ xmlparserÚsetContentHandler)r$r'r;s rr!zXMLTranslator.__init__Ps<€Ü ×Ñ×"Ñ" 4¨Ô2ð—M‘M×*Ñ*×2Ñ2ˆŒ Ø—]‘]×+Ñ+×1Ñ1ˆŒ ð$,×#4Ñ#4Ð4ˆŒ ˜Ø%'Ð'ˆŒ �d”lØ × Ò ØˆDŒLØ × Ò ØˆDŒLØ ˆDŒK؈Œ ؈ŒØˆŒðˆŒ Ø × #Ò #Ø �K‰K× Ñ œu×4Ñ4°X×5MÑ5MÓNÔ OØ × 'Ò 'Ø �K‰K× Ñ ˜tŸ|™|Ô ,Ø � ‰ ×ј4Ÿ>™>¬H×,@Ñ,@Ñ@ÔAô"›)ˆŒØ �‰×(Ñ(¨¯©Õ9rcóz—|js2|jj|j|jz«|jj|j t jjj««|xjdz c_t|tjtjf«r|xjdz c_t||j«r|xjdz c_|js&|jj|j «yy)zDefault node visit method.rN)rAr+rCr<r@ÚstarttagrÚsaxÚsaxutilsÚ quoteattrÚ isinstancerÚFixedTextElementÚliteralrBÚ simple_nodesr=©r$Únodes rÚ default_visitzXMLTranslator.default_visitusÇ€à�~Š~Ø �K‰K× Ñ ˜tŸ{™{¨4¯:©:Ñ5Ô 6Ø � ‰ ×ј4Ÿ=™=¬¯©×)9Ñ)9×)CÑ)CÓDÔEØ � Š �a‰� ä �dœU×3Ñ3´U·]±]ÐCÔ DØ �OŠO˜qÑ �OÜ �d˜D×-Ñ-Ô .Ø �NŠN˜aÑ �NØ�~Š~Ø �K‰K× Ñ ˜tŸ|™|Õ ,ðrcó4—|xjdzc_|js2|jj|j|jz«|jj|j ««t |tjtjf«r|xjdzc_ t ||j«r|xjdzc_|js&|jj|j«yy)zDefault node depart method.rN) r@rAr+rCr<ÚendtagrRrrSrTrBrUr=rVs rÚdefault_departurezXMLTranslator.default_departureƒs´€à � Š �a‰� Ø�~Š~Ø �K‰K× Ñ ˜tŸ{™{¨4¯:©:Ñ5Ô 6Ø � ‰ ×ј4Ÿ;™;›=Ô)Ü �dœU×3Ñ3´U·]±]ÐCÔ DØ �OŠO˜qÑ �OÜ �d˜D×-Ñ-Ô .Ø �NŠN˜aÑ �NØ�~Š~Ø �K‰K× Ñ ˜tŸ|™|Õ ,ðrcó—tjjj|j ««}|j s,|j dd|j|jzz«}|jj|«y)Nr5) rrOrPÚescapeÚastextrBÚreplacer<r@r+rC)r$rWÚtexts rÚ visit_TextzXMLTranslator.visit_Text“s]€Ü�w‰w×Ñ×&Ñ& t§{¡{£}Ó5ˆà�ŠØ—<‘<  d¨4¯;©;°t·z±zÑ+AÑ&AÓBˆDØ � ‰ ×ј4Õ rcó—yr rrVs rÚ depart_TextzXMLTranslator.depart_Textšs€Ø rcóT—d|jdd«j«vr|j|«y|j|«|j«}|jj |«|j |« |jjt|««t*j2‚#tjjj$rÉ|jjj!«}|jjj#«}|j$}t'|j(t*j,«s|dz }d|||j«fz}|j/||j0||zdz ¬«Yt*j2‚wxYw)NrÚformatr&éz0Invalid raw XML in column %d, line offset %d: %sr)ÚsourceÚline)ÚgetÚsplitrXr^r+rCr[rKÚparserrrOÚ _exceptionsÚSAXParseExceptionrJÚlocatorÚgetColumnNumberÚ getLineNumberrhrRÚparentrÚ TextElementr9rgÚSkipNode)r$rWÚ xml_stringÚcol_numÚline_numÚsrclineÚmsgs rÚ visit_rawzXMLTranslator.visit_raw�sS€Ø ˜Ÿ™ ¨2Ó.×4Ñ4Ó6Ñ 6ð × Ñ ˜tÔ $Ø à ×ј4Ô Ø—[‘[“]ˆ Ø � ‰ ×ј:Ô&Ø ×јtÔ$ð HØ �N‰N× Ñ ¤¨*Ó!5Ô 6ô�n‰nÐøô�w‰w×"Ñ"×4Ñ4ò HØ—o‘o×-Ñ-×=Ñ=Ó?ˆGØ—‘×.Ñ.×<Ñ<Ó>ˆHØ—i‘iˆGܘdŸk™k¬5×+<Ñ+<Ô=ؘ1‘ �ØEؘH d§k¡k£mðI5ñ5ˆCà �I‰I�c $§+¡+°G¸HÑ4DÀQÑ4FˆIÕ GÜ�n‰nÐð HúsÂ$B7Â7CF'Æ&F'N)r r r rErFrrOÚ make_parserrKÚ setFeaturer!rrrÚimageÚcolspecÚ transitionrUrXr[rarcryrrrr"r"As„„ð  Fð ð6€Ià—‘×#Ñ#Ó%€IØ7Ø ×ÑØ?ÀôGò:ðD×%Ñ%Ø—K‘K §¡°×0@Ñ0@ðB€Lò -ò -ò !ò órr"có—eZdZd„Zy)rIcó—||_yr )rn)r$rns rÚsetDocumentLocatorzTestXml.setDocumentLocator¹s €Øˆ� rN)r r r r�rrrrIrI·s„órrI)Ú__doc__Ú __docformat__ÚiorÚxml.sax.saxutilsrrGrrrrÚApplicationErrorr rÚGenericNodeVisitorr"rOÚhandlerÚContentHandlerrIrrrÚrŠsrðñ ð #€ åÛãß4Ó4ô �(×+Ñ+ô ô&.ˆW�^‰^ô&.ôRs�E×,Ñ,ôsôlˆc�g‰g�o‰o×,Ñ,õr