Разделение исходного документа в Sphinx (т.е. управление иерархией файлов)

Каков правильный способ разделения исходного документа в Sphinx?

У меня есть большой файл, назовем его file1.rst, структура которого такая:

Section 1
*********

Subsection 1
============

Subsection 2
============

Subsection 3
============

Каждый подраздел очень длинный, и исходный файл стал неуправляемым. Я хотел бы поместить каждый подраздел в отдельный исходный файл.

Я пробовал с директивой include:

Section 1
*********
.. include:: subsection1.rst
.. include:: subsection2.rst
.. include:: subsection3.rst

Но он выдает предупреждения о том, что метки в subsction1.rst дублируются в section1.rst (неверно, метка есть только во вложенном документе).

В качестве альтернативы, есть ли возможность изменить иерархию в директиве TOC?


person gozzilli    schedule 22.02.2012    source источник


Ответы (1)


Я отвечаю на свой вопрос (позор!), Потому что наконец понял, в чем я ошибаюсь.

Директива TOC, table of contents может использоваться несколько раз. Это приведет к иерархической структуре, которую я искал.

Я надеюсь, что это поможет тем, кто, как и я, думал, что может быть только одна TOC.

person gozzilli    schedule 28.02.2012
comment
Вы не сказали просто как вы разместили несколько директив оглавления, чтобы получить точно такую ​​же структуру, поэтому оглавление и боковая панель остались прежними. - person Alexey Orlov; 15.12.2020
comment
Каждый родительский файл может иметь toc, указывающий на дочерние файлы. Таким образом, у вас может получиться целое дерево, сколь угодно глубокое. Имеет ли это смысл? - person gozzilli; 16.12.2020
comment
Что такое родительский файл? У вас нет включений, не так ли? - person Alexey Orlov; 16.12.2020
comment
Вы имеете в виду родительский файл, как и index.rst, в подкаталоге вместе с subsection*.rst файлами? - person Alexey Orlov; 16.12.2020
comment
Я полагаю, вы сделали что-то вроде этого :) - person Alexey Orlov; 16.12.2020