噢,看,这是一个真正的问题!
在尝试真正完成某事,我发现这个 lambda 宏创建器存在以下限制:它显然无法在预期的用例中工作。这肯定是扩展控制的问题,但我不知道该从哪里开始。
\documentclass{article}
% (David Carlisle / @Manuel)'s much simpler version
\newcommand\LambdaFunction[2][0]{%
\let\tmp\relax
\newcommand\tmp[#1]{#2}\tmp}
\usepackage{empheq}
\begin{document}
\begin{empheq}[
box={\LambdaFunction{%
\colorbox
{myblue}%
{\hspace{1em}#1\hspace{1em}}%
}%
}
]{align*}
a &= b \\
a^2 &= b^2
\end{empheq}
\end{document}
答案1
你错过了颜色包:-) 而且我的版本默认为 [0] 而不是 [1],所以我不得不添加 [1]。然后你需要加倍#
。
\documentclass{article}
\usepackage{color}
% (David Carlisle / @Manuel)'s much simpler version
\newcommand\LambdaFunction[2][0]{%
\let\tmp\relax
\newcommand\tmp[#1]{#2}\tmp}
\usepackage{empheq}
\begin{document}
\begin{empheq}[
box={\LambdaFunction[1]{%
\colorbox
{blue}%
{\hspace{1em}##1\hspace{1em}}%
}%
}
]{align*}
a &= b \\
a^2 &= b^2
\end{empheq}
\end{document}