![在目录中包含某些章节的部分内容,但不包含其他章节的部分内容](https://linux22.com/image/298211/%E5%9C%A8%E7%9B%AE%E5%BD%95%E4%B8%AD%E5%8C%85%E5%90%AB%E6%9F%90%E4%BA%9B%E7%AB%A0%E8%8A%82%E7%9A%84%E9%83%A8%E5%88%86%E5%86%85%E5%AE%B9%EF%BC%8C%E4%BD%86%E4%B8%8D%E5%8C%85%E5%90%AB%E5%85%B6%E4%BB%96%E7%AB%A0%E8%8A%82%E7%9A%84%E9%83%A8%E5%88%86%E5%86%85%E5%AE%B9.png)
标题几乎说明了一切。我有一份很长的文档,其中包含章节、节、小节……目录应该只包括大多数章节的节,但某一特定章节内的小节应该像这样:
Chapter 1
section 1
section 2
Chapter 2
section 1
section 2
Chapter 3
section 1
subsection 1
subsection 2
section 2
subsection 1
subsection 2
Chapter 3
section 1
section 2
这可能吗?如果可以,该怎么做?
[编辑:例如,第 1 章中的某些部分也会有(编号的)子部分,但我不希望它们显示在目录中。基本上,我希望目录深度因章节而异。]
答案1
tocdepth
您可以在目录中通过在适当的位置插入更改命令来重置。
假设您\setcounter{tocdepth}{1}
从不包含低于章节的内容开始。要在另一个章节中重置它以包含小节,请在\chapter
相关章节的命令后插入此命令:
\addtocontents{toc}{\setcounter{tocdepth}{2}}
该命令需要进入包含章节数据的文件中;如果你把它放入主文件中,并用它\include
来拉取章节文件,latex 将延迟其应用,直到后d文件\include
,所以最好不要尝试从主文件中执行此操作。至于它在章节文件中的位置,它可以放在要列出的第一个部分之前的任何位置。如果你把它放在行后\chapter
,它会很容易记住和找到,如果你以后决定要更改它。
您可以在下一章(或下一个适用的章)中通过另一个
\addtocontents
插入恢复原始设置。
还有其他方法可以限制设置的范围tocdepth
,但这可能是最直接的。