Sphinx / reST:同一段落中的多个匿名显式外部链接

Sphinx / reST: Multiple anonymous explicit external links in the same paragraph

如何在同一段落中创建两个 separated external links,例如:

for pytorch click `here <http://www.pytorch.org>`_ and for tensorflow click
`here <http://www.tensorflow.org>`_

显示如下

for pytorch click here and for tensorflow click here

BUT分开non-inlinelinks !这将允许我在一个地方收集所有外部 links 并使用我喜欢的任何标题调用它们。

现在,如果我使用 anonymous links,如下代码所示:

.. __: pytorch_
for example.com click here__

.. __: tensorflow_
and for tensorflow.com click here__

.. _pytorch: http://www.pytorch.org
.. _tensorflow: http://www.tensorflow.org

这是我得到的(注意单独的段落)

for pytorch click here

and for tensorflow click here

换句话说,如果我们拿这个例子...我可以使用相同的标题(例如 here)到 link 到两个不同的 explicitnon-inline外部link在同一段?

.

之后使用具有 raw-html 角色的替换

添加到conf.py:

rst_epilog = """
.. role:: raw-html(raw)
   :format: html

.. |pytorch| replace:: :raw-html:`<a href="https://www.pytorch.org">here</a>`

.. |tensorflow| replace:: :raw-html:`<a href="https://www.tensorflow.org">here</a>`
"""

在你的.rst中:

|pytorch| and |tensorflow|

extlinks扩展旨在缩短外部links,但它也允许指定link描述文本

要使用它,请在 conf.py

中执行以下操作
# enable `extlinks` extension
extensions = [
        'sphinx.ext.extlinks',
]

# add external URLs
extlinks = {
        'pytorch': ('https://www.pytorch.org/%s', 'pytorch'),
        'tensorflow': ('https://www.tensorflow.org/%s', 'tensorflow')
        }

现在在文档中执行以下操作:

Incidentally :tensorflow:`some <>` libraries turn out to be more popular than
:pytorch:`some <>`

输出应如下所示

Incidentally some libraries turn out to be more popular than some