一般来说,在大多数地方,使用 TeX 默认设置是最好的。然而,TeX 确实提供了诸如\,
和\quad
等功能。当应该如何使用它们?一般情况下和数学模式下都是如此。
答案1
经典数学类型,作者:Ellen Swanson(AMS 已提供 PDF 版本)here
),给出了很好的解释(第3.1 数学符号之间的间距) 何时在数学模式下使用无空格、细空格、粗空格、em quad 和 two-em quad。简要总结:
没有空间
两个符号之间以及一个数字和它所乘的符号之间。
下标、上标、圆括号、大括号、方括号和垂直线之前和之后。
在表达式中的下标或上标。
薄弱空间
用作动词的符号之前和之后。
用作连词的前后符号。
在 , , 之后,但不在
+
,-
,之前\pm
,\mp
用作形容词。符号集、分数序列和点坐标中的逗号后面。
积分、求和、乘积、并集符号的前后。
罗马字体函数之前和之后。例外:如果这些函数的前面或后面有圆括号、花括号、方括号或竖线,则空格会被消除。
垂直线之前和之后单独出现而不是成对出现;对于用作数学符号而不是标点符号的冒号,适用同样的规则。
后下标之前。
之前和之后
ds
,,dx
以及d
和另一个符号的类似组合。
厚空间
文中一致性的括号前。
文本中的数学条件之前。
埃姆四边形
在显示的表达式中,符号语句和言语表达之间。
围绕连词。
双四边形
同一行中的两个独立方程或不等式之间。
符号语句和该语句的条件之间。
TeX 具有内置间距,并且大多数时候它都能出色地完成工作,因此(大多数时候)您不需要手动添加间距。
以下文档包含 Swanson 给出的规则摘要和一些示例;这些示例还包含一些非内置且需要人工关注的情况。
\documentclass{article}
\usepackage{amsmath}
\setlength\parindent{0pt}
\begin{document}
\textbf{No space}\\
Between two symbols and between a number and the symbol it multiplies:
\[
ab\qquad xy\qquad 2a\qquad 2xz\qquad 4aC
\]
Before and after subscripts, superscripts, parentheses, braces, brackets,
and vertical rules:
\[
2x^2y_3z (x)y\qquad a\{b\}\qquad y[a]\qquad a\lvert x\rvert\qquad b\lVert y\rVert
\]
In expressions in the subscript or superscript:
\[
\lim_{0\to a}\qquad a^{n-1}
\]
\textbf{Thin space}\\
Before and after symbols used as verbs:
\[
a \subseteq 2
\]
Before and after symbols used as conjunctions:
\[
a +2
\]
After, but not before $+$, $-$, $\pm$, $\mp$ used as an adjective
\[
a= -2
\]
After the commas in sets of symbols, sequences of fractions, and
coordinates of points:
\[ (a,b,c) \]
Before and after the symbols of integration, summation, product, and
union:
\[
a\int x\,\mathrm{d}y
\]
The thin space between $x$ and $\mathrm{d}y$ in the expression above is \emph{not} built
into \TeX.
Before and after functions set in roman type:
\[
a \sin x \qquad \log 2.
\]
Exceptions: If any of these functions are preceded or followed by parentheses, braces, brackets, or bars, then the space is eliminated:
\[
a \sin \lvert x \rvert.
\]
Before and after vertical rules appearing singly rather than in pairs; the
same rule holds for a colon that is used as a mathematical symbol rather
than as punctuation:
\[
a \mid b
\]
Before back subscripts:
\[
a\,_2T_3
\]
The thin space between $a$ and the following back subscript on $T$ in this example is not built into \TeX.
Before and after $\mathrm{d}s$, $\mathrm{d}x$, and similar combinations of $d$ and another
symbol following:
\[
\int f(x)\,\mathrm{d}x\qquad \iiint f(x)\,\mathrm{d}r\,\mathrm{d}\theta\,\mathrm{d}\phi
\]
\textbf{Thick space}\\
Before the parenthesis in congruences in text: $z= a\pmod x$
Before a mathematical condition in text: $t_n\ (n=1,2,\ldots, p)$
\textbf{Em quad}\\
Between a symbolic statement and a verbal expression in displayed expressions
\[
E_n(t) \to e^{-t}\quad\text{as }t\to\infty.
\]
Around conjunctions:
\[
x(a+b)\quad\text{or}\quad y(a-b).
\]
\textbf{Two-em quad}\\
Between two separate equations or inequalities in the same line
\[
x^2 + y^2 = a^2,\qquad x-y=b.
\]
Between a symbolic statement and a condition on the statement
\[
x^n + y^n = a^n\qquad (n = 1,2,\ldots p).
\]
\end{document}
编译后的代码如下:
答案2
解决原因,AMS 中的表格LaTeX 数学简明指南,在数学模式下讨论间距,提供了一种有用的方法。如果我们按预期使用元素,那么 TeX 将提供良好(可以说是最佳)的间距。但是,如果将元素用作另一个类的成员,则可能需要调整间距:
Class Mnemonic Description Examples
number (Parts of speech)
0 Ord simple / ordinary ("noun") A 0 Φ ∞
1 Op prefix operator \sum
2 Bin binary operator (conjunction) + ∪ ∧
3 Rel relation/comparison (verb) = < ⊂
4 Open left/opening delimiter ( [ {
5 Close right/closing delimiter ) ] }
6 Pun postfix/punctuation . , ; !
其中一些调整是由 TeX 自动完成的,例如
Bin 类的符号,特别是减号 −,如果没有合适的左操作数,则会自动强制为类 0(无空格)。
一些符号的间距遵循传统而不是一般规则:尽管
/
(从语义上讲)属于第 2 类,但我们k/2
在斜线周围不留空格,而不是k / 2
。并将p|q p|q
(无空格)与p\mid q p | q
(第 3 类间距)进行比较。
正如其他人指出的那样,对于间距的哪些变化可以改善文档的外观或易于理解性,存在不同的看法。通常,作者必须遵循内部风格,但当符号按 TeX 预期使用时,应仔细考虑对默认样式的更改。还应注意,最佳排版实践因语言和时间而异。
答案3
一个常见的情况(在数学模式中)是积分:
\int f(x)\,dx
更好(顺便说一下,\,
甚至更好)。\int f(x)\,\textup{d}x
另一个常见情况是阶乘:2!3!4!
与进行比较2!\,3!\,4!
。
此外,有些人可能会认为\sqrt{\,\log 2}
看起来比没有要好\,
。
另一个有趣的情况是使用:
- \{x:x^2-1>0\}
,但是f\colon X\to Y
。正式地,您不使用\,
或类似的宏,但\colon
类似:它是手动调整间距。
另一方面,有时\!
(消极的我也需要使用“薄空间”(thin space),尽管我不记得具体的例子了。
(这些例子是我记得的TeXbook,我家里没有;据我记得那里还有更多。)
一般来说,由于数学的语义和排版都非常复杂,因此实际上经常需要进行这样的微调。
而和\quad
则\qquad
是另一个故事——例如,二显示模式下的公式。
答案4
- 在数学模式中永远不会,除非非常特殊的情况。对于微分算子,
dx
最好先定义\newcommand*\diff{\mathop{}\!\mathrm{d}}
然后\diff x
在数学中使用 - 在文本模式下
e.\,g.
或以德语z.\,B.
或类似的标题Dr.\,med.
\quad
可以在文本模式下需要一些空间时使用,同样适用于\qquad