隐藏目录项中的页码(使用“addtocontents”)

隐藏目录项中的页码(使用“addtocontents”)

这看起来很简单,但我似乎无法弄清楚如何抑制使用 添加的项目在目录中显示的页码\addcontentsline

我希望目录中显示一行文本“诗歌时代”,不带页码,然后在诗歌标题下方显示页码。

我不想使用\chapter或因为我希望我的内容仅仅是诗歌(由MWE 中的标题\section表示) 。section


\documentclass[draft]{book}
\usepackage{lipsum}
\begin{document}
    
    \tableofcontents
    \addcontentsline{toc}{chapter}{Poetry Era}
    \section{First Section}
    \lipsum[1-12]
    \section{Second Section}
    \lipsum[13-27]
    \section{Third Section}
    \lipsum{28-44]}
    \addcontentsline{toc}{chapter}{Poetry Era}
    \section{Fourth Section}
    \lipsum[45-58]
    \section{Fifth Section}
    \lipsum[59-65]
    \addcontentsline{toc}{chapter}{Poetry Era}
    \section{Sixth Section}
    \lipsum[66-72]
\end{document}

答案1

这里定义了一个新命令,它将生成没有页码的addcontentslinex条目。toc

A

\documentclass[draft]{book}
\usepackage{lipsum}

\makeatletter
\def\addcontentslinex#1#2#3{% added <<<<<<<<<<<<<
    \addtocontents{#1}{\protect\contentsline{#2}{#3}{}{}\protected@file@percent}}
\makeatother


\begin{document}
    
    \tableofcontents
    \addcontentslinex{toc}{chapter}{Poetry Era 1}
    \section{First Section}
    \lipsum[1-12]
    \section{Second Section}
    \lipsum[13-27]
    \section{Third Section}
    \lipsum{28-44]}
    \addcontentslinex{toc}{chapter}{Poetry Era 2}
    \section{Fourth Section}
    \lipsum[45-58]
    \section{Fifth Section}
    \lipsum[59-65]
    \addcontentslinex{toc}{chapter}{Poetry Era 3}
    \section{Sixth Section}
    \lipsum[66-72]
\end{document}

相关内容