\newenvironment 后的多余空格

\newenvironment 后的多余空格

我有一个具有以下环境的文件

\newenvironment{system}{\begin{equation} \left \{ \begin{aligned} }{\end{aligned} \right . \end{equation}}

这产生了我想要的结果,除了在环境后的新行上添加一些额外的空间之外,例如,如果我写

\begin{system}
x + y &= 1\\
x - y &= 2
\end{system}
foo

foo 会在下一行之后的一个空格处打印。另一方面,如果我有

\begin{equation}
\left \{
\begin{aligned}
x + y &= 1\\
x - y &= -1
\end{aligned}
\rigth .
\end{equation}
foo

然后 foo 就会打印到它应该打印的位置。另一方面,如果我foo在后面直接写入\end{system},不带空格或换行符,我会得到正确的结果,但文本文件会变得有点难以阅读。

我在定义环境时做错了什么吗?或者有简单的方法可以解决它。

编辑:为了便于理解,这是我正在测试的序言

\documentclass{article}
\usepackage{amsmath}

答案1

使用

\newenvironment{system}
  {\begin{equation} \left \{ \begin{aligned} }
  {\end{aligned} \right . \end{equation}\ignorespacesafterend}

相关内容