令我惊讶的是,最近一个问题中的Latex代码没有引发任何错误,对于进一步的调查,甚至更惊讶的是Crowley's explanation似乎是正确的。我对\begin{equation} ... \end{equation}代码的直觉显然已经过时,实际上是什么情况?

考虑一下这个经过稍微修改的代码:

\begin{equation}
1: e^{i\pi}+1=0
$$  2: B\"ob $$
3: e=mc^2
\end{equation}


这似乎证明了克劳利对这种代码的解释,即“该代码对LaTeX所说的是开始方程式,结束它,再次开始它,对tangens进行排版定义并结束方程式”是正确的:第1和第3行只能在数学模式,仅文本模式下的第2行。

Latex是否不应该看到\end{equation}正在结束不是由\begin{equation}开始的显示数学运算?

最佳答案

可能是因为环境mathdisplaymath

我刚试过那些代码

\[\alpha$$-正常工作

\begin{displaymath}\alpha$$-错误(\begin{displaymath} ended by \end{document})*

\displaymath\alpha$$-正常工作

\displaymath\alpha\displaymath-错误(Bad math environment delimiter

\displaymath\alpha\enddisplaymath-正常工作。

对称选项产生相同的结果,所以我认为在LaTeX命令定义中

\newcommand{\[}{\displaymath}
\newcommand{\]}{\enddisplaymath }
\newenvironment{displaymath}{\displaymath}{enddisplaymath}


在TeX中,类似

"if(displaymath)
 {$$ := \displaymath}
 else
 {$$ := \displaymath}"


也许我错了,但这对我来说似乎合乎逻辑。




注意:证明我was wrong。更好的词是:“开始方程式,切换到文本模式,切换回displaymath,排版切线定义,最后结束方程式”。

关于latex - 将$$置于“等式”环境的中间:为什么Latex不提示?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2897126/

10-10 13:27