标题类型名称中的空格(算法)

标题类型名称中的空格(算法)

为了在我的文档中包含代码,我在序言中进行了如下说明:

 \usepackage[Code]{algorithm}
 \usepackage{listings}

并在文档主体中显示实际代码:

begin{algorithm}
\caption{Description}
\label{alg:num}
\lstset{language=custom}
\begin{lstlisting}
 my code
\end{lstlisting}
\end{algorithm}

这种方法在标题类型名称中没有空格之前都很好用,但 ie却\usepackage[Code]{algorithm}不行 \usepackage[Code Snippet]{algorithm}。我也尝试添加~符号,但还是失败了。如何添加空格?

答案1

你可以重新定义\ALG@name

\documentclass{article}
 \usepackage{algorithm}
 \usepackage{listings}
 \makeatletter
 \edef\ALG@name{Code snippets}
 \makeatother
 \begin{document}
   \begin{algorithm}
\caption{Description}
\label{alg:num}
%\lstset{language=custom}
\begin{lstlisting}
 my code
\end{lstlisting}
\end{algorithm}
 \end{document}

在此处输入图片描述

答案2

该方法在包手册的第 4.4 节(定制)中有说明(第 15-16 页):

\floatname{algorithm}{Code snippet}

完整示例

\documentclass{article}
\usepackage{algorithm}
\usepackage{listings}
\floatname{algorithm}{Code snippet}

\begin{document}
\begin{algorithm}
\caption{Description}
\label{alg:num}
%\lstset{language=custom}
\begin{lstlisting}
my code
\end{lstlisting}
\end{algorithm}
\end{document}

在此处输入图片描述

指定包选项的方法不起作用,因为 LaTeX 会删除选项中的所有空格,除非包使用某些键值接口。

相关内容