我想从文章文档的目录中删除最后一节及其子节的页码。我对此主题进行了多次问答,最终破坏了我的文档。幸运的是,我早上保存了论文的先前版本。目前我有
Section ............ 1
subsection ....... 2
Section ............ 4
subsection ....... 6
Section ............ 8
subsection ....... 9
在我的目录中,我想要
Section ............ 1
subsection ....... 2
Section ............ 4
subsection ....... 6
Section
subsection
相反。感谢大家的帮助。
答案1
使用该tocloft
包来控制 ToC(以及 LoF 和 LoT)。
% sectocprob.tex SE 623057
\documentclass{article}
\usepackage{tocloft}
\begin{document}
\tableofcontents
\section{First section}
\subsection{A subsection}
\section{Second section}
\subsection{B subsection}
%% add into the ToC
\addtocontents{toc}{\cftpagenumbersoff{sec}} % no section page numbers
\addtocontents{toc}{\cftpagenumbersoff{subsec}} % no subsection page numbers
\section{Third section}
\subsection{C subsection}
\end{document}
答案2
由于您没有在目录中对章节或子章节进行编号,因此我假设您使用以下方式添加它们\addcontentline
因此,您需要为最后一节和小节做两件事
- 隐藏页码,并
- 删除点。
如果你正在使用book
类删除\renewcommand*\l@section{...
\documentclass{article}
% adds dots for section in class article
\makeatletter
\renewcommand*\l@section{\@dottedtocline{1}{0.5em}{2.3em}}
\makeatother
\begin{document}
\tableofcontents
\clearpage
\section*{First}
\addcontentsline{toc}{section}{First}
\subsection*{First subsec}
\addcontentsline{toc}{subsection}{First sub}
\section*{Second}
\addcontentsline{toc}{section}{Second}
\subsection*{Second subsec}
\addcontentsline{toc}{subsection}{Second sub}
% supress page numbers => https://tex.stackexchange.com/a/9294/161015
\renewcommand*{\addcontentsline}[3]{\addtocontents{#1}{\protect\contentsline{#2}{#3}{}}}
% supress the dots => https://tex.stackexchange.com/a/71329/161015
\makeatletter
\addtocontents{toc}{\def\string\@dotsep{100}}
\makeatother
\section*{Third}
\addcontentsline{toc}{section}{Third}
\subsection*{Second subsec}
\addcontentsline{toc}{subsection}{Third sub}
\subsection*{Third sub}
\end{document}
笔记
如果此解决方案对您不起作用,则可能是因为您正在使用另一个类和附加包来修改目录。如果是这种情况,请发布一个带有完整前言的最小可编译示例。(从 \documentclass
到\end{document}
)