【问题标题】:How to create a link to a header in restructuredtext?如何在重组文本中创建指向标题的链接?
【发布时间】:2018-02-20 15:23:27
【问题描述】:

我在 restructuredtest 中有一个文档,例如:

Header 1
========

从任何其他点(可能是相同的“第一个”文件或不同的文件)我想创建一个指向该标题的超链接。这样当用户点击它时,他会到达标题为Header 1的页面

怎么做?

我尝试将下面这行放在另一个文档中(根据this documentation):

see :ref:`Header 1`

但我得到的是以下内容:

see Header 1

没有任何链接...

我也尝试关注this documentation

我在rst 文件中输入的内容如下

see `Header 1`_

我看到的是以下链接:

see `Header 1`_

这看起来不太好......

【问题讨论】:

    标签: restructuredtext


    【解决方案1】:

    您的第一个链接几乎是正确的。您需要在节标题前添加一个标签,以空行分隔。见Inline markup, Cross-referencing arbitrary locations, using the :ref: directive

    在你的情况下:

    .. _header-1-label-name:
    
    Header 1
    ========
    
    Some text
    
    Here is a section reference: :ref:`header-1-label-name`.
    
    Here is a section reference with a title: :ref:`Header 1 with a title <header-1-label-name>`.
    

    【讨论】:

    • 但我不明白——为什么所有的文件都错了?我在那里想念什么?
    • 文档是正确的。我写的例子来源于我提供的链接中的文档。
    • 这意味着我发现了错误或不正确的文档?我使用了问题中包含的两页中的描述。我做错什么了吗?这些文件不正确吗?也许过时了?
    • 文档是最新且正确的。我从sphinx-doc.org/en/stable/markup/… 复制粘贴了示例,然后将其稍微编辑为一个示例。你有什么不明白的?
    【解决方案2】:

    除了accepted answer,您添加的标签(在本例中为.. _header-1-label-name:)还需要有破折号。所以一个简单的.. _label: 是行不通的。我花了一段时间才弄清楚。

    【讨论】:

      猜你喜欢
      • 2014-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-23
      • 2013-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多