Algorithm2e 允许您定义函数,\SetKwFunction{Fn}{Function}
然后您可以使用该函数在文档中的任何位置(而不仅仅是在环境中algorithm
)引用该函数,例如\Fn
(它将Function
以正确的字体输出所有内容)。但是,这在标题中不起作用。例如,以下文档:
\documentclass{article}
\usepackage{algorithm2e}
\SetKwFunction{Fn}{Function}
\begin{document}
\begin{algorithm}
\caption{\Fn, my function}
\KwRet{0}\;
\end{algorithm}
\end{document}
死于
Argument of \@caption has an extra }.
<inserted text>
\par
l.6 \caption{\Fn, my function}
有人知道发生了什么事,以及如何解决吗?
答案1
宏必须受到保护以便可以在内部使用caption
:
\caption{\protect\Fn my function}
有关为什么需要这样做的更多信息,请查看以下问题: