使用 empheq 创建新的数学环境

使用 empheq 创建新的数学环境

我定义了一个名为的新环境boxew。当我使用代码

\begin{empheq}[box=\fbox]{align}
  \bar{\nabla}^{\mu} \bar{h}_{\mu\nu} & = 0 \\
  \bar{\nabla}^{\mu} \bar{h}_{\mu\nu} & = 0
\end{empheq}

我得到了我想要的方框方程。当我使用预定义的环境时boxeq

 \newenvironment{boxeq}
    {\begin{empheq}[box=\fbox]{align} }
    {\end{empheq}}

它不会编译。请参见下面的示例:

\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{mathtools}
\usepackage{empheq}

\newenvironment{boxeq}
{\begin{empheq}[box=\fbox]{align} }
{\end{empheq}}

\begin{document}

Multiline:

\begin{empheq}[box=\fbox]{align}
  \bar{\nabla}^{\mu} \bar{h}_{\mu\nu} & = 0 \\
  \bar{\nabla}^{\mu} \bar{h}_{\mu\nu} & = 0
\end{empheq}

Multiline \texttt{boxeq}:
\begin{boxeq}
\bar{\nabla}^{\mu} \bar{h}_{\mu\nu} & = 0 \\
\bar{\nabla}^{\mu} \bar{h}_{\mu\nu} & = 0
\end{boxeq}

\end{document}

可能存在一个小语法错误,但我找不到。你能帮忙吗?

答案1

这里empheq依赖于能够明确地看到\end{empheq}。使用现代工具来定义 会容易得多boxeq。如果您的 LaTeX 格式不是在 2020 年 10 月之后,请记住加载xparse

\NewDocumentEnvironment{boxeq}{b}{}{
  \begin{empheq}[box=\fbox]{align}
    #1
  \end{empheq}
}

这个特殊的 env 将获取 env 的内容(b说明符),然后我们可以将其传递给empheqvia #1

相关内容