tocloft 和 babel 可能不兼容

tocloft 和 babel 可能不兼容

我正在尝试更改目录的默认章节标题,并更新tocloft\contentsname

\documentclass{article}

\usepackage[american]{babel} % (*) THE STARRED LINE

\usepackage{tocloft}

\renewcommand*{\contentsname}{FooContents}

\begin{document}
  \tableofcontents

  \section{The first section}
  \section{The second section}
\end{document}

如果我删除带星号的行,目录将按预期显示,标题为“FooContents” - 否则,将使用默认标题“Contents”。

有没有办法可以做到这一点而不摆脱babel

编辑

根据下面@egreg 的评论,这个特定问题可以通过 解决\addto\captionsamerican{\renewcommand*{\contentsname{FooContents}}}

关于\addtobabel 文档(第 64 页)指出:

对于每种语言,必须定义四个控制序列来控制特定于语言的定义。为了能够在定义这些宏后向其添加内容,引入了宏 \addto。

但是,我找不到这四个控制序列的列表。我使用得tocloft相当频繁,而且我用它做的大部分事情都是用 来反转的babel

相关内容