Rinohtype link 文本是 "Section 3.1" 而不是 link 或 link 目标中指定的文本

Rinohtype link text is "Section 3.1" instead of the text specified in the link or link target

我指定一个明确的 link 目标如下:

.. _REPLY_STATUS_CODE:

REPLY_STATUS_CODE (0x0001)
---------------------------

然后像这样创建对它的引用:

Related
    :ref:`REPLY_STATUS_CODE`

也试过这样的:

A :ref:`REPLY_STATUS_CODE <REPLY_STATUS_CODE>` command...

在这两种情况下,link 上的文本都是“第 3.8 节”而不是“REPLY_STATUS_CODE”使用 Sphinx 构建 HTML 将 link 文本呈现为“ REPLY_STATUS_CODE”。有没有办法获取我想要的文本而不是部分和 rinohtype 中的数字?

您可以通过调整 linked 参考 样式,使 rinohtype 创建与 HTML 相同的 links:

[STYLESHEET]
name = My custom style sheet
base = sphinx

[linked reference]
type = custom

您仍然可以使用 :numref: role to explicitly reference elements by number (which does require setting numfig = True, also affecting HTML output). See issue #244 How to restore target number references? 获取更多信息。

理想情况下,像您尝试的那样提供明确的 link 文本 (:ref:`REPLY_STATUS_CODE <REPLY_STATUS_CODE>` ) 将覆盖 link 按编号划分部分的默认行为,但这需要更改 docutils/Sphinx 因为 rinohtype 看不出有和没有显式 link 文本的引用之间的区别。

最后,如果能够定义一个custom role,这样rinohtype就可以区分不同类型的引用,那就太好了。例如:

.. role:: titleref(ref)
   :class: titleref

唉,这也不可能。所以,至少现在,你只能区分使用 :ref::numref:(这也会影响 HTML 输出)。