![有没有简单的方法可以将文本插入到目录的每一行中?](https://linux22.com/image/302700/%E6%9C%89%E6%B2%A1%E6%9C%89%E7%AE%80%E5%8D%95%E7%9A%84%E6%96%B9%E6%B3%95%E5%8F%AF%E4%BB%A5%E5%B0%86%E6%96%87%E6%9C%AC%E6%8F%92%E5%85%A5%E5%88%B0%E7%9B%AE%E5%BD%95%E7%9A%84%E6%AF%8F%E4%B8%80%E8%A1%8C%E4%B8%AD%EF%BC%9F.png)
我有一个 LaTeX 文档(回忆录类),分为未命名的编号章节,就像这样\chapter{}
。
我希望目录看起来大致如下:
Contents
Chapter 1 ............... 1
Chapter 2 ............... 5
但是,\tableofcontents
会产生以下内容:
Contents
1 ............... 1
2 ............... 5
有没有办法在目录的每一行中插入“章节”一词,最好不要命名章节并重新配置章节标题?
我进行了大量搜索,并研究了tocloft
、titletoc
和其他类似的软件包,但是我还没有找到解决这个特定问题的方法。
我希望我在这里错过了一些简单的事情。
答案1
其基本机制非常简单。如果您正在使用该类编写英语单语文档memoir
,只需添加:
\renewcommand{\cftchaptername}{Chapter\space}
如果您不是用英语写作,正如 daleif 所说,您可以使用宏\chaptername
。例如:
\usepackage[ngerman]{babel}
\renewcommand\cftchaptername{\chaptername\space}
一个完整的示例,可让您尝试两者:
\documentclass{memoir}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\newif\ifusebabel % <-- a conditional just for trying both
%\usebabeltrue % <-- uncomment if you want to see the change (but compile twice
% to get the change reflected in the ToC!)
\ifusebabel
\usepackage[ngerman]{babel}
\renewcommand\cftchaptername{\chaptername\space}
\else
\renewcommand\cftchaptername{Chapter\space}
\fi
\begin{document}
\tableofcontents
\chapter{}
\chapter{}
\end{document}