我正在使用tcolorbox
它来制作文档。这是我的代码吗?
\documentclass{scrartcl}
%%
\usepackage{tcolorbox}
\tcbuselibrary{listingsutf8,documentation}
\newcommand{\lcmd}[1]{\texttt{\textbackslash{#1}}}
\begin{document}
\tableofcontents
%%
\section{The Problem}
\subsection{Example 1: listing on}
%%
\begin{tcblisting}{title= Example 1}
\section{Main Section}
An Example you to usethe section commands.
\subsection{Sub Section}
\subsubsection{SubSub Section}
\end{tcblisting}
%
\end{document}
编译将代码片段的部分添加到目录中。
我该如何预防?
答案1
更新后续跟进:添加其他包。
更改tocdepth
之前的tcblisting
--以抑制 ToC 中的条目--然后在之后恢复它。
使用\addtocontents{toc}{\protect\setcounter{tocdepth}{-1}}
和
\addtocontents{toc}{\protect\setcounter{tocdepth}{3}}
其中的部分tcblisting
将以#1 开始。
\documentclass{scrartcl}
\usepackage{mathtools}% added to check compatiblity
\usepackage{todonotes}% idem
\usepackage{tcolorbox}
\tcbuselibrary{listings,documentation}
\newcommand{\lcmd}[1]{\texttt{\textbackslash{#1}}}
\newcounter{oldsection}% added <<<<<<<<<<<<
\begin{document}
\tableofcontents
\section{Introduction}
\section{The Problem}
\subsection{Example 1: listing on}
\addtocontents{toc}{\protect\setcounter{tocdepth}{-1}} % suppress all entries to ToC<<<
\setcounter{oldsection}{\thesection} % save section number
\addtocounter{section}{-\thesection} % start numbering with 1
\begin{tcblisting}{title= Example 1}
\section{Main Section}
An Example you to use the section commands.
\subsection{Sub Section}
\subsubsection{SubSub Section}
\section{Conclusions}
\subsection{Another Sub Section}
\end{tcblisting}
\addtocontents{toc}{\protect\setcounter{tocdepth}{3}} % restore <<<<
\setcounter{section}{\theoldsection} % % restore <<<<...
\section{Another Section}
\subsection{Last subsection}
\end{document}