Скрыть номер страницы из элемента оглавления (используя 'addtocontents')

Скрыть номер страницы из элемента оглавления (используя 'addtocontents')

Казалось бы, это просто, но я не могу понять, как отключить отображение номеров страниц в оглавлении для элементов, добавленных с помощью \addcontentsline.

Я бы хотел, чтобы в оглавлении отображалась строка текста «Эпоха поэзии» без ссылки на страницу, а затем сразу под ней — название стихотворения с номером страницы.

Я не хочу использовать \chapterили, \sectionпоскольку я хочу, чтобы мой контент состоял только из стихов (что представлено заголовками sectionв MWE.


\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без номера страницы.

а

\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}

Связанный контент