从标签和参考自动生成索引
Automatic generation of index from label and ref
能否让Sphinx根据已有的标签和文本中的:ref:
生成索引?假设您有标签:
.. _my_label:
My Section
后来通过多次引用:ref:`my_label`
,有没有办法等价于自动生成:
.. index:: My Section
标签在哪里,和:ref:
所在的段落之前一样吗?
官方文档没有将标签或 :ref:
列为 index-generating markup,而且我找不到任何扩展。但也许有一个?
Sphinx extensions 有官方列表,Github 上有一些非官方扩展列表,但其中 none 实现了问题中指定的功能。
最接近问题中指定问题的方法是使用 autosectionlabel
自动创建具有部分名称的目标标签,并在其旁边放置一个 :index:
或 .. index::
reST 部分将其放在索引中。但是,这只会省去声明标签,声明索引条目仍然是必要的。
您要求的功能(指令)除了少写一行或一小块 reST 代码(.. index::
指令或 :index:
角色)外,几乎没有提供任何实际收益,无论是针对部分还是针对目标.
Sphinx 是开源的将允许为此实现自定义指令,但是使用 non-standard 指令的唯一目的是通过单个构造缩短标准语法,这会给您的读者带来更多困难而不是收获源代码。
能否让Sphinx根据已有的标签和文本中的:ref:
生成索引?假设您有标签:
.. _my_label:
My Section
后来通过多次引用:ref:`my_label`
,有没有办法等价于自动生成:
.. index:: My Section
标签在哪里,和:ref:
所在的段落之前一样吗?
官方文档没有将标签或 :ref:
列为 index-generating markup,而且我找不到任何扩展。但也许有一个?
Sphinx extensions 有官方列表,Github 上有一些非官方扩展列表,但其中 none 实现了问题中指定的功能。
最接近问题中指定问题的方法是使用 autosectionlabel
自动创建具有部分名称的目标标签,并在其旁边放置一个 :index:
或 .. index::
reST 部分将其放在索引中。但是,这只会省去声明标签,声明索引条目仍然是必要的。
您要求的功能(指令)除了少写一行或一小块 reST 代码(.. index::
指令或 :index:
角色)外,几乎没有提供任何实际收益,无论是针对部分还是针对目标.
Sphinx 是开源的将允许为此实现自定义指令,但是使用 non-standard 指令的唯一目的是通过单个构造缩短标准语法,这会给您的读者带来更多困难而不是收获源代码。