我根本不知道如何链接到 reST 文件中的另一个文档。
我想在一个段落中将名为 install.rst
的文件链接到我的快速入门指南。我不知道我该如何实现这一目标。
请您也参考一个很棒的资源,我可以从中查找其余的语法。默认的快速入门有点无聊,不涉及对将 rest 与狮身人面像一起使用的深入讨论。
有问题的文档是:http://todx.rtfd.io
要在不同的reStructuredText (.rst)文件之间创建链接,您可以使用sphinx提供的内联标记。请参阅交叉引用文档标题下的文档
在文件顶部定义其标签
.. _my-reference-label:
然后,您可以使用以下方法从其他文档链接到它
:ref:`my-reference-label`.
我不认为您需要使用 intersphinx 扩展,因为它用于不同项目之间的链接。使用此方法,您可以使用其相对路径在不同的 .rst 文件之间进行链接,如上面的文档链接中所述。
我用这个写了另一个文档的链接:
:doc:`my document <../my_doc>`
../my_doc
是我的my_doc.rst
文件的路径。
我的conf.py
文件中也有狮身人面像间扩展名。
extensions = ['sphinx.ext.intersphinx']
简化@eme-eme的答案,你可以做:
:doc:`path/to/document`
无需将路径括在<>中并提供要显示的文本。在这种情况下,引用文档中的顶级标题将显示为链接。
你不需要狮身人面像之间的扩展。
可以使用以下语法链接到现有文件 {example.rst}:
:ref:`Optional Link text <example>`
但是,将其弹出到主题中,甚至是项目符号,行为可能会改变。因此,您可以参考最终构建的文件:
`Optional Link text <example.html>`_
这是一个很棒的指南
若要从项目中的一个页面(.rst 文件)链接到另一个页面(不同的 .rst 文件),请使用以下内联格式:
See :ref: `topLevelHeadingofOtherPage`
例如:
See :ref:`Perform Bulk Actions`.
就是这样。我同意,这些信息在狮身人面像指南中很难找到。因为它太简单了,我认为人们认为你想做一些更复杂的事情。
要引用标题,需要将此扩展添加到conf.py
:
extensions = [
'sphinx.ext.autosectionlabel',
]
然后只需使用:ref:`Any heading in the project`
.
有关详细信息,请参阅扩展说明。它也可以与狮身人面像一起工作。
@Ryszard Cetnarski的建议对我有用,尽管确实需要几次尝试:
我的overview.rst
文件中的相关文本:
Blah... blah...
.. _overview-database-requirements:
Database requirements
---------------------
Blah... blah...
在我的my_python.py
文件的文档字符串中:
"""Implement some more abstract base model (table) classes.
Blah... blah...
See :ref:`overview-database-requirements` for more details.
"""
我不必启用任何其他扩展。
为了引用其他文件,我必须在conf.py
中包含以下内容。我从枕头(PIL fork)的文档中提取了代码。
extensions = ['sphinx.ext.intersphinx']
我认为狮身人面像之间的扩展对我有帮助。它链接到其他文档页面。