我正在处理一个定义列表 (LOD),本质上就是下面这段代码中显示的定义列表(编号除外)。我遇到的问题是,对于较大的数字,LOD 上的编号和标题有一些重叠。我想增加 LOD 所有定义(项目)的编号和标题之间的分离。我尝试使用\setlength{\cftdefnumwidth}{}
(我在类似问题中找到的)但不起作用(“未定义控制序列”)。如何增加 LOD 中每个项目的编号和标题之间的间隔?
接下来是我的 LOD 的 MWE,上面有五个项目,每个第 n 个项目的编号为 10^(n-1),以展示我遇到的问题。稍后会附上一张图,显示代码生成的 PDF。
\documentclass{report}
\usepackage{tocloft}
\newlistof{definitions}{def}{Definitions} %making of the list
\newcommand{\defil}[1] %creating the command for adding definitions to the list (and numbering them)
{%
\refstepcounter{definitions}
\addcontentsline{def}{definitions}
{\protect\numberline{\thedefinitions}#1}\par
}
\begin{document}
\listofdefinitions %including the list
\defil{lorem ipsum} %adding element "lorem ipsum" to the list of definitions
\addtocounter{definitions}{8} %adding one digit to the numbering
\defil{lorem ipsum} %adding element "lorem ipsum" to the list of definitions
\addtocounter{definitions}{89} %adding one digit to the numbering
\defil{lorem ipsum} %adding element "lorem ipsum" to the list of definitions
\addtocounter{definitions}{899} %adding one digit to the numbering
\defil{lorem ipsum} %adding element "lorem ipsum" to the list of definitions
\addtocounter{definitions}{8999} %adding one digit to the numbering
\defil{lorem ipsum} %adding element "lorem ipsum" to the list of definitions
\end{document}
答案1
我通过在序言中添加以下文字解决了这个问题:
\makeatletter
\renewcommand\l@definitions{\@dottedtocline{1}{5em}{3em}}
\makeatother
第三个参数(包含“3em”的参数)对应于 numwidth,即包含编号的框的大小。增加此参数的值将增加所需的间隔。这里您可以找到创建自己的 [blank] 列表问题的完整解决方案。通过在网站上搜索“numwidth”,您将找到一篇帖子,其中更详细地描述了此代码的作用。