章节和附录上的不同目录标签

章节和附录上的不同目录标签

在我正在写的一本书中,我希望章节的目录条目能够阅读

Chapter 1: foobar        3

附录

Appendix 1:  bletch    197

使用tocloft,线条

\renewcommand{\cftchappresnum}{Chapter }
\renewcommand{\cftchapaftersnum}{: }

(连同一行来控制宽度)在我的前言中可以完成章节名称格式的设置,但不幸的是,这些行似乎需要放在前言中,因此cftchappresnum在开始处理附录时我无法重新定义。我也尝试过让 的定义cftchappresnum依赖于该布尔值:

\newboolean{inappendix}
\setboolean{inappendix}{false}
\renewcommand{\cftchappresnum}{\ifthenelse{\boolean{inappendix}}{Appendix }{Chapter }}

然后\setboolean{inappendix}{true}在之后发出\appendix,但这也会失败(它表现得好像inappendix始终是假的)。

答案1

必须将的更改直接\cftchappresnum写入,ToC才能在.toc调用文件时对附录生效,即

\addtocontents{toc}{\protect\renewcommand{\protect\cftchappresnum}{\protect\appendixname~}}

将写入更改(用于\protect防止写入过程中出现错误)

\documentclass{book}
\usepackage{tocloft}


\renewcommand{\cftchappresnum}{\chaptername~}
\renewcommand{\cftchapaftersnum}{: }

\addtolength{\cftchapnumwidth}{50pt}

\begin{document}

\tableofcontents

\chapter{Foo}

\appendix

\addtocontents{toc}{\protect\renewcommand{\protect\cftchappresnum}{\protect\appendixname~}}

\chapter{Foo appendix}

\end{document}

我把实际长度的指定留给\cftchapnumwidthOP

在此处输入图片描述

相关内容