【问题标题】:Can't use :ref: with a Label using Sphinx doc不能使用 :ref: 与使用 Sphinx 文档的标签一起使用
【发布时间】:2015-11-27 11:43:21
【问题描述】:

我在使用 Sphinx-doc 的 :ref: 角色时遇到问题,我在段落上方放置了一个标签,然后我尝试从另一个文档链接到该标签,但在同一个项目中。

我在一个文档中使用的标签:

.. _hal_1k_1p:

我尝试使用ref 链接到该标签:

:ref:`Link title hal_1k_1p`

但我只在构建文档时收到此错误消息:

警告:未定义标签:链接标题 hal_1k_1p(如果链接没有 标题标签必须在节标题之前)

我做错了什么?

【问题讨论】:

    标签: python-sphinx restructuredtext cross-reference


    【解决方案1】:

    好的,看看:ref:,你需要这个:

    :ref:`Link title <ha1_1k_1p>` 
    

    链接到该标签。

    确保标签周围有尖括号,如下所示:

    【讨论】:

    • 当我阅读官方文档时,他们就我的问题给出了这个答案“仍然可以引用未放置在部分标题之前的标签,但您必须使用此链接为链接提供明确的标题语法::ref:Link title &lt;label-name&gt;。"但问题是他们并没有真正举例说明如何实现它,所以我有点卡住了
    • 另请注意,标签定义确实在开头包含_,而标签使用包含_字符
    【解决方案2】:

    首先确保您的 ref 格式为:

    标签

    .. _yourlabel:
    

    参考

    This is a reference to :ref:`yourlabel`.
    

    或者(如果你想给它一个自定义名称)

    This is a reference to :ref:`my very own label <yourlabel>`.
    

    标签定义包含前导下划线 (_) 而引用不包含!还要确保您没有意外地将标签定义 (:) 中的冒号复制到引用中。

    如果这无济于事,请尝试在 conf.py 中暂时将语言切换回英语:

    language = 'en'
    

    如果您发现这可行,您可以切换回来。不知何故,这解决了我的问题。可能与:https://github.com/sphinx-doc/sphinx/issues/1300

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-07
      • 2022-11-24
      • 2012-09-08
      • 1970-01-01
      • 2016-12-07
      • 2014-04-05
      • 1970-01-01
      相关资源
      最近更新 更多