我确信这表明了一个更普遍的想法,但我注意到,如果我输入
$$\text hello$$
$$\text {hello}$$
$$\cal OU$$
$$\cal {OU}$$
到我的 tex 并编译我得到以下输出
显然,在第一种情况下,除非使用括号,否则 \text 命令只会影响第一个字符,而在另一种情况下,所有字符都会受到影响。
这些行为不同的原因是什么? 是否存在关于哪些命令将以哪种方式执行的一般规则?
提前感谢大家的帮助。另外,我不确定要使用哪个标签 - 请添加任何相关内容。
答案1
近二十年前,当 LaTeX2e(后来简称为 LaTeX)发布时,就已经考虑到了这种行为上的差异。
该命令\cal
自 1994 年 6 月起已弃用,\mathcal
应优先使用。与 一样\text
,\mathcal
是带有参数的命令,其效果仅对后面括号中的材料有效。
所以
$\text{hello}\ne\mathcal{O}$
是有效且受支持的输入。根据 TeX 规则,如果带参数的命令后面没有{
,则第一的token 用作参数。这就是为什么手册坚持参数应该总是用大括号括起来。
还要注意,$$
在 LaTeX 中不能使用。手册中没有提到它;人们使用它,但他们错了。