我尝试定义以下自定义环境,但出现错误:
\begin{gather} 由 \end{solution} 结束等等...
下面是显示我的问题的 MWE:
\documentclass{article}
\usepackage[fleqn]{mathtools}
\newenvironment{solution}{% <-Solution
\par\addvspace{1em}
\itshape{Solution:}\par\begin{gather}}
{\end{gather}\par\normalfont\hfill\qed\par\addvspace{\medskipamount}}%
\begin{document}
\begin{gather}
testing
\end{gather}
%% This does not work:
\begin{solution}
testing
\end{solution}
\end{document}
答案1
使用环境的命令形式gather
。也就是说,使用\gather
...\endgather
而不是\begin{gather}
... \end{gather}
。
\documentclass{article}
\usepackage[fleqn]{mathtools}% http://ctan.org/pkg/mathtools
\newenvironment{solution}{% <-Solution
\par\addvspace{1em}
\textit{Solution:}\par\gather}
{\endgather\par\normalfont\hfill\qed\par\addvspace{\medskipamount}}%
\begin{document}
Some text
\begin{gather}
f(x)=ax^2+bx+c
\end{gather}
Some text
\begin{solution}
f(x)=ax^2+bx+c
\end{solution}
Some text
\end{document}
OP 补充:
最终我改用了gather
,但效果一样……使用\gather
和\endgather
。但我还想找到一种方法来摆脱方程式数字。经过一番搜索,我发现\align*
和\endalign*
不能按预期工作,所以你必须使用\csname align*\endcsname
和\csname endalign*\endcsname