在列表标题编号之前添加文本

在列表标题编号之前添加文本

如何在#数字之前(标签和数字之间,即)添加文本(即符号)Listing #1:列表标题

答案1

您可以重新定义\thelstlisting。请注意,这必须在之后完成,\begin{document}因为它在文档中的该点之前尚未定义。示例:

\documentclass{article}
\usepackage{listings}
\begin{document}
\renewcommand\thelstlisting{\#\arabic{lstlisting}}
\begin{lstlisting}[caption=Test]
Put your code here.
\end{lstlisting}
\end{document}

请注意,这也会改变对 lstlistings 的引用:

\documentclass{article}
\usepackage{listings}
\begin{document}
\renewcommand\thelstlisting{\#\arabic{lstlisting}}
\begin{lstlisting}[caption=Test,label=test]
Put your code here.
\end{lstlisting}
\ref{test}
\end{document}

将打印\ref{test}#1。如果这不是您想要的,您可以使用/mycaption包重新定义标题标签格式(使用\DeclareCaptionLabelFormat),即:

\documentclass{article}
\usepackage{listings,caption}
\DeclareCaptionLabelFormat{with-number-sign}{#1~\##2}
\captionsetup[lstlisting]{labelformat=with-number-sign}
\begin{document}
\begin{lstlisting}[caption=Test,label=test]
Put your code here.
\end{lstlisting}
\ref{test}
\end{document}

相关内容