
    O&i              
       x   d Z ddlZddlmZ ddlmZmZmZmZm	Z	m
Z
mZ ddlmZ ddlmZ ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZmZ ddlmZ ddlm Z  ddl!m"Z"m#Z# ddl$m%Z%m&Z&  ej'        e(          Z) G d de          Z*dedee
e+e+e+ee+         e,f                  fdZ-dedee+ef         fdZ.dS )zManual pages builder.    N)path)AnyDictListOptionalSetTupleUnion)OptionParser)
FileOutput)addnodes)Sphinx)Builder)Config)__)loggingprogress_message)	darkgreen)inline_all_toctrees)	ensuredirmake_filename_from_project)ManualPageTranslatorManualPageWriterc                       e Zd ZU dZdZdZ ed          ZeZ	g Z
ee         ed<   ddZdeeee         f         fdZdd	ed
ee         defdZ e ed                    deddfd            ZddZdS )ManualPageBuilderz4
    Builds groff output in manual page format.
    manz#The manual pages are in %(outdir)s.supported_image_typesreturnNc                 p    | j         j        s)t                              t	          d                     d S d S )NzBno "man_pages" config value found; no manual pages will be written)config	man_pagesloggerwarningr   selfs    d/home/geonatureadmin/si_en_reseau/tutos/venv/lib/python3.11/site-packages/sphinx/builders/manpage.pyinitzManualPageBuilder.init#   sJ    {$ 	2NN2 0 1 1 2 2 2 2 2	2 	2    c                     dS )Nzall manpages r$   s    r&   get_outdated_docsz#ManualPageBuilder.get_outdated_docs(   s    ~r(   docnametypc                     dS )N r*   )r%   r,   r-   s      r&   get_target_uriz ManualPageBuilder.get_target_uri+   s    rr(   writingignoredc           	         t          |           }t          j                    5  t          j        dt                     t          | j        j        |fd                                          }d d d            n# 1 swxY w Y   | j	        j
        D ]}|\  }}}}}	|| j        j        vr)t                              t          d          |           Bt          |t                     r|r|g}ng }||_        ||_        ||_        |	|_        | j	        j        r7d|	z  }
t-          t/          j        | j        |
                     |
d|d|	}n|d|	}t                              t7          |          d	z   d
           t9          t/          j        | j        |          d          }| j                            |          }t=                      }t?          | |||t6          |g          }||_        t                              dd
           | j                             |||            |!                    tD          j#                  D ]}|$                    |j%                   |&                    ||           d S )Nignore)categoryT)defaults
componentsread_config_filesz7"man_pages" config value references unknown document %szman%s/.z { )nonlzutf-8)destination_pathencodingz} )'r   warningscatch_warningsfilterwarningsDeprecationWarningr   envsettingsget_default_valuesr    r!   all_docsr"   r#   r   
isinstancestrtitlesubtitleauthorssectionman_make_section_directoryr   r   joinoutdirinfor   r   get_doctreesetr   resolve_referencesfindallr   pending_xrefreplace_selfchildrenwrite)r%   r2   	docwriterdocsettingsrO   r,   namedescriptionrJ   rK   dirname
targetnamedestinationtreedocnames	largetreependingnodes                    r&   rW   zManualPageBuilder.write.   s   $T**	$&& 	= 	=#H7IJJJJ  ,*%<"& (  (  ( );(:(<(< 		= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= K) (	4 (	4D;?8GT;dh///r #0  1  129; ; ;'3'' ! !&iGG G $K#.K ")K")K{5 7!G+$)DK99:::+277DDD''B

(,gg6
KK	*--5DKAAA$!%4;
!C!C " " "K 8''00D!$H+D(GT,5yB BI!,IKK4K(((H''	7DAAA(001FGG ? ?(()=>>>>OOI{3333Q(	4 (	4s   AA::A>A>c                     d S Nr*   r$   s    r&   finishzManualPageBuilder.finishd   s    r(   )r   Nrd   )__name__
__module____qualname____doc__rZ   formatr   epilogr   default_translator_classr   r   rG   __annotations__r'   r
   r+   r   r0   r   r   rW   re   r*   r(   r&   r   r      s          DFR566F3')49)))2 2 2 2
5d3i#8     c       bbmm$$34c 34d 34 34 34 %$34j     r(   r   r    r   c                 n    t          | j                  }| j        || j        d| j        | j        gdfgS )z$ Better default man_pages settings.     )r   projectroot_docreleaseauthor)r    filenames     r&   default_man_pagesrv   h   sA    )&.99H_h6>>>6>>(Rm_a! " "r(   appc                     |                      t                     |                     dt          d           |                     ddd           |                     ddd           ddddS )Nr!   Fman_show_urlsrL   builtinT)versionparallel_read_safeparallel_write_safe)add_builderr   add_config_valuerv   )rw   s    r&   setupr   o   sy    OO%&&&&7???%7775ueDDD "#  r(   )/ri   r>   osr   typingr   r   r   r   r   r	   r
   docutils.frontendr   docutils.ior   sphinxr   sphinx.applicationr   sphinx.buildersr   sphinx.configr   sphinx.localer   sphinx.utilr   r   sphinx.util.consoler   sphinx.util.nodesr   sphinx.util.osutilr   r   sphinx.writers.manpager   r   	getLoggerrf   r"   r   rG   intrv   r   r*   r(   r&   <module>r      s            ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? * * * * * * " " " " " "       % % % % % % # # # # # #                   1 1 1 1 1 1 1 1 ) ) ) ) ) ) 1 1 1 1 1 1 D D D D D D D D I I I I I I I I		8	$	$M M M M M M M M`"f "eCc49c4Q.R)S " " " "v $sCx.      r(   