![如何在 algorithm2e 标题中使用 algorithm2e 函数宏?](https://linux22.com/image/327806/%E5%A6%82%E4%BD%95%E5%9C%A8%20algorithm2e%20%E6%A0%87%E9%A2%98%E4%B8%AD%E4%BD%BF%E7%94%A8%20algorithm2e%20%E5%87%BD%E6%95%B0%E5%AE%8F%EF%BC%9F.png)
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}
有关为什么需要这样做的更多信息,请查看以下问题: