我正在为自己编写一本 C++ 参考手册,我想要好看的列表。
Stack Overflow 上的问题标题为像专业书籍一样列出 LaTeX 源代码非常有帮助,但是,就我而言,我在互联网上找不到如何删除列表标题中的“列表编号”部分。
下面是我目前所拥有的屏幕截图。我想删除列表标题的前部;但我不想完全删除标题,因为我想用它来显示源文件的名称。有什么想法吗?
答案1
在环境的可选参数中使用title
代替。有关详细信息,请参阅清单文档第 32 页。caption
lstlisting
\documentclass{article}
\usepackage{listings}
\begin{document}
\begin{lstlisting}[caption=foo]
#include <iostream>
\end{lstlisting}
\begin{lstlisting}[title=foo]
#include <iostream>
\end{lstlisting}
\end{document}
答案2
lockstep 提出的方法很简单,但如果您按照该方法操作,您的列表将不会出现在列表列表中。如果您想使用\lstlistoflistings
,则需要使用caption
密钥,而不是 密钥title
。
为了不在标题中打印“Listing #: ”,只需从代码中#1#2
的第三个参数中删除\DeclareCaptionFormat
接受的答案针对 SO 问题像专业书籍一样列出 LaTeX 源代码。
\documentclass{report}
\usepackage{color}
\usepackage{xcolor}
\usepackage{listings}
\usepackage{caption}
\DeclareCaptionFont{white}{\color{white}}
\DeclareCaptionFormat{listing}{\colorbox{gray}{\parbox{\textwidth}{#3}}}
\captionsetup[lstlisting]{format=listing,labelfont=white,textfont=white}
\begin{document}
\lstlistoflistings
\begin{lstlisting}[label=some-code,caption=Some Code]
public void here() {
goes().the().code()
}
\end{lstlisting}
\end{document}