如何使附录出现在目录的部分级别中?

如何使附录出现在目录的部分级别中?

book文档类中,我希望有一个附录,它出现在部分级别的目录中。目录应如下所示:

Preface
Part title
  Chapter title
  Chapter title
Part title
  Chapter title
  Chapter title
Appendix: Some title
Bibliography
Index

我知道如何包含参考书目和索引\addcontentsline{toc}{part}{...},我甚至知道如何\phantomsection让它指向 PDF 中的正确位置。

但是我如何让附录达到part目录的级别?它位于chapter最后一部分之下。

我不在乎是否“手动”制作附录,即不使用 \appendix。顺便说一句,我用它来自\titlesec定义章节和部分的格式。

答案1

由于你只有一个附录,因此“一次性破解”应该足够了:

\documentclass{book}

\usepackage{etoolbox}
\makeatletter
\newcommand{\appchapter}[1]{%
  \begingroup
  \patchcmd{\@chapter}
   {\addcontentsline{toc}{chapter}}
   {\addcontentsline{toc}{part}}
   {}{}
  \patchcmd{\@chapter}
   {\addcontentsline{toc}{chapter}}
   {\addcontentsline{toc}{part}}
   {}{}
  \chapter{#1}
  \endgroup
}
\makeatother

\begin{document}

\frontmatter
\tableofcontents

\mainmatter

\chapter{Preface}

\part{Part title}
\chapter{Chapter title}
\chapter{Chapter title}

\part{Part title}
\chapter{Chapter title}
\chapter{Chapter title}

\backmatter
\appendix
\appchapter{Appendix: Some title}

\chapter{Bibliography}

\end{document}

在此处输入图片描述

相关内容