o
    :ήc                     @   sP   d Z ddlmZmZ ddlmZ i g fddZi g fddZdd	 Zd
d Z	dS )a&  
    doilinks
    ~~~~~~~~
    Extension to add links to DOIs. With this extension you can use e.g.
    :doi:`10.1016/S0022-2836(05)80360-2` in your documents. This will
    create a link to a DOI resolver
    (``https://doi.org/10.1016/S0022-2836(05)80360-2``).
    The link caption will be the raw DOI.
    You can also give an explicit caption, e.g.
    :doi:`Basic local alignment search tool <10.1016/S0022-2836(05)80360-2>`.

    :copyright: Copyright 2015  Jon Lund Steffensen. Based on extlinks by
        the Sphinx team.
    :license: BSD.
    )nodesutils)split_explicit_titlec                 C   H   t |}t|\}}}	d|	 }
|sd|	 }tj||d|
d}|gg fS )Nzhttps://doi.org/zDOI:Finternalrefurir   unescaper   r   	referencetyprawtexttextlinenoinlineroptionscontenthas_explicit_titletitlepartfull_urlpnode r   7/tmp/pip-target-vg8gfxp4/lib/python/doc/ext/doi_role.pydoi_role      

r   c                 C   r   )Nzhttps://arxiv.org/abs/zarXiv:Fr   r	   r   r   r   r   
arxiv_role!   r   r   c                 C   sD   | j dtdd | j dtdd | j dtdd | j dtdd d S )NdoiT)overrideDOIarXivarxiv)add_roler   r   appr   r   r   setup_link_role+   s   r&   c                 C   s   |  dt dddS )Nzbuilder-initedz0.1T)versionparallel_read_safe)connectr&   r$   r   r   r   setup2   s   
r*   N)
__doc__docutilsr   r   sphinx.util.nodesr   r   r   r&   r*   r   r   r   r   <module>   s   

