3

我正在使用 sphinx 文档系统生成 HTML 和 Latex 输出格式的报告。所以有一个层次结构,我有一个读取 index.rst ,其中包含一个按出现顺序引用所有章节的目录树。然后一章是一个文件夹,其中还包含一个 index.rst,只有一个标题和一个包含该章所有部分的目录树。

例如,我的结构如下所示:

root
    - index.rst <- Contains only a toctree that references other chapters index.rst.
    - SomeChapter
        - index.rst <- Contains heading and toctree that references actual content
        - section1.rst <- actual content
        - section2.rst <- actual content
        ....

这可以用乳胶很好地呈现,因为你会从字面上得到 someChapter 和下面的部分,但在 html 中,这些都是单独的页面,对于一些较小的小节来说很快就会很无聊,因为你必须不断点击。有没有办法指示 html 构建器在某些情况下应该在它们在目录树中的同一页面中显示子页面,而不是为其创建子页面?

我知道 singlehtml,但它确实为它构建了一个完整的单个 html 页面,我想部分地这样做,因为很多时候不同的章节在不同的页面上都很棒,但部分可以很容易地在同一个页面上。

任何帮助表示赞赏。

4

1 回答 1

0

未经测试的答案。

有两个不同的索引页面,一个用于 HTML ( index.rst) 和 LaTeX ( indexlatex.rst),后者是前者的副本,然后修改前者。

然后在你的conf.py,指定indexlatex.rst为条目目录树。金字塔的例子:

latex_documents = [
  ('latexindex', 'pyramid.tex',
  ...
  )

最后要修改index.rst,您将使用一系列include指令并删除该toctree指令。

.. include:: section1.rst
.. include:: section2.rst

您可能还需要使用文件上的元:orphan:数据latexindex来禁止有关它未包含在index.toctree

于 2018-03-22T10:46:35.237 回答