\left、\right 等的变体,在 inlinemath 中被忽略

\left、\right 等的变体,在 inlinemath 中被忽略

我正在尝试构建在 inlinemath 中被忽略的 \left、\right 和 \middle 的变体。

预期行为:

\[ \lft( 2^{2^2} \rgt) \]-> 表现为\[ \left( 2^{2^2} \right) \]

\( \lft( 2^{2^2} \rgt) \)-> 表现为\( ( 2^{2^2} ) \)

非常感谢您的帮助。

免责声明:

  • 尝试使用 获得此行为mathchoice未成功。问题似乎是诸如的内容\mathchoice{\left}{}{}{}无效,因为 TeX 期望分隔符(和相应的\right)位于同一组中。
  • 通过影响扩展顺序(例如noexpand)来获得所需行为的尝试没有成功,但我并不是这方面的专家。
  • 我知道有些人认为不应该自动使用\left\right。无论如何我都想要这个(-:
  • 我知道我可以简单地定义类似的东西\newcommand{\paren}[1]{\mathchoice{\left(#1\right)}{(#1)}{(#1)}{(#1)}}。但是,如果参数包含,我的问题仍然会出现\middle

答案1

不确定这有多大用处。

\documentclass{article}
\usepackage{amsmath}

\makeatletter
\newcommand{\lft}{\if@display\expandafter\left\fi}
\newcommand{\mdl}{\if@display\expandafter\middle\fi}
\newcommand{\rgt}{\if@display\expandafter\right\fi}
\makeatother

\begin{document}

\begin{center}% just to make a smaller picture
\( \lft( 2^{2^2} \rgt) \)
\end{center}
\[
\lft( 2^{2^2} \rgt)
\]

\end{document}

在此处输入图片描述

解释:amsmath\everydisplay{\@displaytrue}

相关内容