如何检查最后显示的内容是否是 displaymath / minipage 是否在 displaymath 上结束?

如何检查最后显示的内容是否是 displaymath / minipage 是否在 displaymath 上结束?

有没有办法检查小页面是否以 display math 结尾?或者更一般地,上面的行是否是 displaymath?

背景:我为 minipage 环境定义了一个命令,该命令可修复大量间距并调整到当前位置(如果它是定理中的第一个 minipage,则调整定理中的标识等)。一切正常,但当 Minipage 以 \[ ... \] 结尾时除外,
然后它会添加错误的间距,而 minipage 中则不会有相同的间距。我编写了一个命令来修复间距,但我希望当 minipage 以其中一个 mathenvironments 结尾时自动添加它(displaymath 和 align* 是我最常用的)。

因此,我希望我的 minipagedefinition 在最后执行一些操作,例如

\newcommand{\Mp}[1]{
  % Do various Dimension calculations
  \begin{minipage}[t]{\calculatedlength}\strut#1\strut\end{minipage}
  % Adjust spacing only if the last thing in the minipage was
  %   \[ ... \]
  \if@aftermathenv
    \spacecommand %this is just \vspace*{-1em}
  \fi
}

有没有办法定义这样的 \if@aftermathenv

\Mp{Text text text}

不执行 \spacecommand

\Mp{Here is an equation
    \[ x = 3 \]
}

确实执行 \space 命令并调整间距。

相关内容