我有一个Sphinx项目,其中包含了一系列文件,这些文件在每个文件的底部都有外部链接作为参考,就像这样。
Some text with `my link`_, more text
100 lines of text ...
.. _my link: http://example.com
我想重新组织我的文件,将它们拆分,合并,再使用外部链接。为了方便起见,我想把我的链接放在一个单独的文件中,每个链接都有一个唯一的id,我可以在文本中引用。有什么方法可以做到这一点吗?渲染后的输出仍然应该创建一个外部链接,而不是像它在 "我的故事 "中建议的那样创建一个脚注。如何在Sphinx中收集所有外部链接?
这可以通过正确的设置来解决。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>`_