我正在改进一些技术文档(Sphinx),并希望将RST文件的内容包含在多个位置;但是,这样做是将RST文件多次添加到TOC中。如何在我想要的位置包含文件,但只在目录中引用该部分一次?
这是index.rst文件的样子:
============
Main Content
============
These docs reference:
- :ref:`section-1`.
- :ref:`section-2`.
- :ref:`section-3`.
- :ref:`section-4`.
.. include:: section1.rst
.. include:: section2.rst
.. include:: section3.rst
.. include:: section4.rst
接下来,这里是main_content.rst:
.. _section-2:
This is Section 2
********************
.. include: section4.rst
Some other Section 2 content.
“第4节”是参考表;例如,我想将其包含在“第2节”中,但也要像附录一样将其保留在文档的底部。
这是section2.rst的样子:
.. _section-4:
This is Section 4
********************
+------------------+-------------------------+
| Heading | Heading 2 |
+==================+=========================+
| This is what I | want to reference |
+------------------+-------------------------+
| in other rst | files. |
+------------------+-------------------------+
最后,section4.rst可能如下所示:
{{1}}
执行此操作时,我的目录两次包含“第4节”。有什么见解吗?谢谢!
答案 0 :(得分:1)
由于@sinoroc的建议,我想出了一个解决方案:
我从section4.rst中删除了以下内容,仅保留了该表:
.. _section-4:
This is Section 4
********************
我将其添加到新文件appendix.rst的顶部,并添加了对section4.rst的引用:
.. _section-4:
This is Section 4
********************
.. include:: section4.rst
然后我修改了main_content.rst,使其引用了appendix.rst而不是section4.rst。
我的主要学习要点:TOC反映了引用文件中的标题。