在 algorithm2e 中定义一个新关键字

在 algorithm2e 中定义一个新关键字

我正在尝试为我的算法定义一个新关键字:

\documentclass{article}
\usepackage[]{algorithm2e}
\begin{document}
\SetKw{kwInit}{Init:}
\begin{algorithm}
\kwInit{$\alpha_n=1$ for all $n$}
\While{not at end of this document}{
do this and that
}
\end{algorithm}
\end{document}       

问题是 Init 后面的冒号不会自动生成,我必须像这样定义它 {Init:},这样会生成一个粗体冒号而不是普通冒号。如何解决这个问题?此外,参数“for all n”将变成斜体,紧接着下一行的“while”。我该如何解决这个问题?

谢谢。

答案1

听起来你正在寻找\SetKwInput语法

\SetKwInput{<name>}{<keymord>}

\<name>{<arg>}它定义了要以关键字排版打印的宏,<keyword>后跟:,然后是参数<arg>

完整示例:

\documentclass{article}
\usepackage[]{algorithm2e}

\SetKwInput{kwInit}{Init}

\begin{document}
\begin{algorithm}
\kwInit{$\alpha_n=1$ for all $n$}
\While{not at end of this document}{
do this and that
}
\end{algorithm}
\end{document}  

结果:

在此处输入图片描述

相关内容