![高效/智能地输入乳胶](https://linux22.com/image/313194/%E9%AB%98%E6%95%88%2F%E6%99%BA%E8%83%BD%E5%9C%B0%E8%BE%93%E5%85%A5%E4%B9%B3%E8%83%B6.png)
我长期以来一直想知道为什么没有一款软件能够排版 ASCII 数学符号,就像人们在 tex 出现之前所写的那样。
在我看来,tex 很棒,但例如 $ 符号应该是可选的。甚至许多方程式也应该由文字处理器自然显示。我想写:“让 (x,y)\in R^2 成为 x^2+bxy+x=0 y^4-yx=0 的解”,并以合理的方式排版,就像我在 latex 中放置了美元符号、\mathbb 和方程式显示一样。我不需要完全控制我的输出,我只是希望它看起来像合理书写的数学。
更一般地说,输入数学运算以获得类似 tex 的输出的最快/最短方法是什么?
多谢。
答案1
您可以更改所有想要为数学保留的符号的 catcode,\active
然后让字符根据您的选择自行替换。
我希望你能亲自明白为什么这是一个糟糕的想法……
\documentclass{article}
\usepackage{amssymb}
\makeatletter
\let\@in\in
\def\in{\ensuremath{\@in}}
\def\minus{$-$}
\def\reals{$\mathbb{R}$}
\begingroup
\catcode`\^=\active
\catcode`\R=\active
\catcode`\-=\active
\gdef^{\textsuperscript}%
\gdef R{\reals}%
\gdef-{\minus}%
\gdef\textmath{%
\catcode`\^=\active
\catcode`\R=\active
\catcode`\-=\active
}
\endgroup
\begin{document}
\textmath
Let (x,y)\in R^2 be a solution of x^2+bxy+x=0 y^4-yx=0
Right now, this is a really bad idea---for sure!
\end{document}
答案2
目前尚不清楚删除$
和显式更改字体是否真的可以挽救任何东西,它增加了出错的机会,并且当与本地宏的可能性相结合时,只会节省很少的击键。
然而,数学标记有很多不同的实现,它们较少使用\
和{}
特别数学和用于数学的 Unicode 近纯文本编码这本质上是Microsoft Word 中使用的线性输入语法。