o
×$•aí= ã @ sê d Z ddlmZmZmZmZ ddlmZ ddlm Z m
Z
mZ ddlm
Z ddlmZ ddlmZ ddlmZ dd lmZmZ dd
lmZ ddlmZ ddlmZ dd
lmZ e e ¡Z!G dd„ deƒZ"G dd„ dƒZ#G dd„ deeƒZ$dS )zä
sphinx.writers.manpage
~~~~~~~~~~~~~~~~~~~~~~
Manual page writer, extended for Sphinx custom nodes.
:copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS.
:license: BSD, see LICENSE for details.
é )ÚAnyÚDictÚIterableÚcast)Únodes)ÚElementÚNodeÚTextElement)Ú
Translator)ÚWriter)Úaddnodes)ÚBuilder)Ú_Úadmonitionlabels)Úlogging)ÚSphinxTranslator)Úformat_date)ÚNodeMatcherc s0 e Zd Zdeddf‡ fdd„Zddd„Z‡ ZS ) ÚManualPageWriterÚbuilderÚreturnNc s t ƒ ¡ || _d S ©N)ÚsuperÚ__init__r )Úselfr ©Ú __class__© ú8/usr/lib/python3/dist-packages/sphinx/writers/manpage.pyr s
zManualPageWriter.__init__c C sL t | jƒ}| ¡ | j | j| j¡}tt|ƒ| _| j |¡ | j ¡ | _
d S r )ÚNestedInlineTransformÚdocumentÚapplyr Úcreate_translatorr ÚManualPageTranslatorÚvisitorÚ walkaboutÚastextÚoutput)r Ú transformr$ r r r Ú translate" s
zManualPageWriter.translate)r N)Ú__name__Ú
__module__Ú__qualname__r
r r) Ú
__classcell__r r r r r s r c @ s6 e Zd ZdZdejddfdd„Zdeddfdd „ZdS )
r a
Flatten nested inline nodes:
Before:
foo=1
&bar=2
After:
foo=var
&bar=2
r r Nc C s
|| _ d S r )r )r r r r r r 6 ó
zNestedInlineTransform.__init__Úkwargsc sÄ t tjtjtjƒ‰ t| j ˆ ¡ƒD ]N}t‡ fdd„|D ƒƒr_|j
|¡}tt|ƒƒD ]*}| |¡ ˆ |ƒr?|j
|d |¡ q*|jdd|fi |j¤Ž}|j
|d |¡ q*t|ƒs_|j |¡ qd S )Nc 3 s | ]}ˆ |ƒV qd S r r )Ú.0Úsubnode©Úmatcherr r Ú <