为什么我的图表列表都在一行上?

为什么我的图表列表都在一行上?

今天我突然想到,我需要在文档中添加“内容”列表。我没有任何图片,所以我计划使用图片列表功能。以下是 MWE:

\documentclass[letterpaper,11pt,pagesize=pdftex,openright,headings=twolinechapter,chapterprefix=true]{scrbook}

\renewcommand\listfigurename{List of API Addresses}

\begin{document}

\frontmatter

\mainmatter

\addcontentsline{lof}{lof}{/api/SystemProperties}
\addcontentsline{lof}{lof}{/api/Foo}
\addcontentsline{lof}{lof}{/api/XXX}

\backmatter


\listoffigures

\end{document}

当我处理该文档时,我得到了如下的数字列表:

制作的文件

没有返回行。我不知道我做错了什么。我从各种来源看到的所有示例都有一个很好的编号列表,页码在右侧有标签……这几乎就是我想要的。

我还有另一个问题,在我的真实文档中某物正在添加 addvspace,但由于没有段落结尾,因此当 addvspace 不在段落之间时,LaTeX 会抱怨 addvspace。我认为如果我能修复上述问题,那么 addvspace 的问题就会消失。

答案1

宏的第二个参数\addcontentsline应该是figure。例如,此代码

% My standard header for TeX.SX answers:
\documentclass[a4paper]{article} % To avoid confusion, let us explicitly 
                                 % declare the paper format.

\usepackage[T1]{fontenc}         % Not always necessary, but recommended.
% End of standard header.  What follows pertains to the problem at hand.

\renewcommand*{\listfigurename}{List of API Addresses}



\begin{document}

\addcontentsline{lof}{figure}{/api/SystemProperties}
\addcontentsline{lof}{figure}{/api/Foo}
\addcontentsline{lof}{figure}{/api/XXX}

\listoffigures

\end{document}

产生以下输出:

代码输出

答案2

tocloft是一个允许决定list of ...方面的包,但也允许轻松声明 new table of whatever。 按照其文档,我设法做了以下示例:

\documentclass[letterpaper, 11pt, pagesize=pdftex, openright, headings=twolinechapter, chapterprefix=true]{scrbook}

\usepackage{tocloft}

\newcommand{\listapiadd}{List of API addresses}
\newlistof{apiadd}{api}{\listapiadd}

\newcommand{\apiadd}[1]{%
    \refstepcounter{apiadd}
    \texttt{#1}%
    \addcontentsline{api}{apiadd}{\protect\numberline{\theapiadd}\texttt{#1}}}

\begin{document}
\frontmatter
\mainmatter

This is an \apiadd{/api/SystemProperties}, and these are two more \apiadd{/api/Foo}, \apiadd{/api/XXX}.

\backmatter
\listofapiadd
\end{document}

![在此处输入图片描述

相关内容