在Sphinx中使用noindex和词汇表

时间:2013-01-14 16:28:19

标签: python-sphinx documentation-generation restructuredtext

使用Sphinx 1.1.3时,如何创建一个未显示在自动生成的索引中的.. glossary::条目?

我在四个地方试过:noindex:

词汇表之前和之后使词汇表消失。

.. :noindex: glossary:: 

    `term`
        definition

.. glossary:: :noindex:

    `term`
        definition

虽然使用该术语使术语可点击并显示:noindex:

.. glossary:: 

    :noindex: `term`
        definition

.. glossary:: 

    `term` :noindex:
        definition

我的术语有特殊字符,所以我故意用反引号括起来。

1 个答案:

答案 0 :(得分:2)

据我了解,glossary指令为每个术语创建了钩子,可以从文档中的任何地方轻松引用;这将最终在某个地方的某个索引中结束,至少在构建时内部。

要解决此问题,您可以使用标准的定义列表:

 term_1
   definition for term_1

 term_2
   definition for term_2

然后,这些定义将仅在本地编写,而不会出现在主索引中。有关语法的详细信息,请参阅reST docs

如果您想在此类列表中明确包含某些字词,则可以使用:index:角色。

 :index:`term_3`
   definition for an indexed term

这些术语现在将出现在索引中。但是,除非条款很少,否则这是实现词汇表为您所做的事情的一种笨重方式;并且失去了使用交叉引用的能力(使用语法:term:`term_1`)。