我可以用Sphinx把所有的外部链接保存在一个单独的文件中吗?

问题描述 投票:2回答:1

我有一个Sphinx项目,其中包含了一系列文件,这些文件在每个文件的底部都有外部链接作为参考,就像这样。

Some text with `my link`_, more text
100 lines of text ...

.. _my link: http://example.com

我想重新组织我的文件,将它们拆分,合并,再使用外部链接。为了方便起见,我想把我的链接放在一个单独的文件中,每个链接都有一个唯一的id,我可以在文本中引用。有什么方法可以做到这一点吗?渲染后的输出仍然应该创建一个外部链接,而不是像它在 "我的故事 "中建议的那样创建一个脚注。如何在Sphinx中收集所有外部链接?

hyperlink python-sphinx
1个回答
3
投票

这可以通过正确的设置来解决。conf.py:

# Exclude link file
exclude_patterns = ['_build', 'links.rst']

# make rst_epilog a variable, so you can add other epilog parts to it
rst_epilog =""
# Read link all targets from file
with open('links.rst') as f:
     rst_epilog += f.read()

links.rst 看起来是这样的。

.. _my link: http://example.com
.. _my other link: http://example2.com

有了这个设置,我可以灵活地使用唯一的ID作为链接标签,或者提供一个自定义的链接标签。

Some text with `my link`_ and a `custom label<my other link>`_
© www.soinside.com 2019 - 2024. All rights reserved.