是否可以重新定义\[ ... \]
为等同于\begin{align} ... \end{align}
?
(除了环境之外,我很少使用任何东西align
,而且\[ ... \]
更快,看起来更干净。)
答案1
环境align
的特殊之处在于它需要结束标记\end{align}
存在,而不是隐藏在宏中。环境在内部捕获环境的内容。然后它可以在设置方程之前测量宽度。因此,以下重新定义仅重新定义\[
和使用\]
内容来限制参数并将其传递给\begin{align}
和\end{align}
:
\def\[#1\]{%
\begin{align}#1\end{align}%
}
\long\def
当参数中可能存在空行时,需要( #1
。但是,环境align
不喜欢长参数,因此这里没有的定义\long
更好,请参阅用户 66081 的评论。
示例文件:
\documentclass{article}
\usepackage{amsmath}
\def\[#1\]{\begin{align}#1\end{align}}
\begin{document}
\[
a &= b\\
c &= d
\]
\end{document}