我正在使用纽瓦尔格包来排版一些算法,我希望能够使用 algkey 宏来排版关键字。问题是我无法让它工作。以下是我想做的事情:
\begin{algorithm}{PromoteServer}{x}
servers \= \CALL{GetMeshServers}(x) \\
\begin{FOR}{\EACH M_n \IN servers}
\begin{IF}{n \eq \algkey{sizeof}(servers)}
\ELSE
\end{IF}
\CALL{AssignCachePartner}(M_{n+1})
\end{FOR}
\end{algorithm}
我哪里做错了?该软件包的文档没有提供任何示例……
答案1
该软件包的最新版本是 2005 年的,它没有附带 TeX Live,文档非常不完整,并承诺“未来的工作”......我认为这个软件包不再受支持。尝试使用 另一个包裹例如algpseudocode
或 Cormen 自己的clrscode
。
这就是说,你是什么意思“我无法让它工作”?你写的代码是正确的。我查看了包的源代码,\algkey
定义如下:
\def\algkey#1{\mbox{\bf #1\ }}
因此,该命令绝对没有什么特别之处(除了它总是会附加一个可能不需要的空格),并且它应该可以立即使用。或者,您可以使用\textbf{sizeof}
来获得相同的效果,但末尾没有烦人的空格。