主目录和分段目录的目录深度不同

主目录和分段目录的目录深度不同

有这样的代码

\documentclass{article}
\usepackage{lipsum}
\usepackage{titletoc}
\begin{document}
\tableofcontents
\section{A long section}
\startcontents[section]
\printcontents[section]{}{2}{\setcounter{tocdepth}{3}}
\lipsum[1-2]
\subsection{SubA}
\subsubsection{SSub-a}
\subsection{SubB}
\subsubsection{SSub-b}
\subsection{SubC}
\end{document}

我想跳过A long section主目录中的节的子节和子子节,但将它们显示在节目录中。用 包裹节\addtocontents{toc}{\setcounter{tocdepth}{1}}\addtocontents{toc}{\setcounter{tocdepth}{3}}隐藏A long section主目录中的结构,但使其自己的目录完全消失。我怎样才能得到我想要的?

答案1

默认情况下,titletoc将部分目录写入扩展名为 的文件中.ptc;然后您可以将tocdepth计数器设置为适当的值(对于主目录使用\addtocontents{toc}{...},对于部分目录使用\addtocontents{ptc}{...}。)

\documentclass{article}
\usepackage{lipsum}
\usepackage{titletoc}
\begin{document}
\tableofcontents
\addtocontents{toc}{\setcounter{tocdepth}{1}}
\section{A long section}
\startcontents[section]
\printcontents[section]{}{2}{\addtocontents{ptc}{\setcounter{tocdepth}{3}}}
\lipsum[1-2]
\subsection{SubA}
\subsubsection{SSub-a}
\subsection{SubB}
\subsubsection{SSub-b}
\subsection{SubC}
\addtocontents{toc}{\setcounter{tocdepth}{3}}
\end{document}

在此处输入图片描述

答案2

为了回应我对 Gonzalo 帖子的评论,对他的解决方案稍加修改即可使用mathtoolsmhchem包:

\startcontents[section]
\printcontents[section]{}{2}{\setcounter{tocdepth}{3}}

请注意,与上面的 MWE 相比,唯一的变化是我从命令中删除了\addcontents{ptc}一组多余的花括号。setcounter\printcontents

article我在和文档类中都使用了这个解决方案,book没有任何问题。

相关内容