如果我想列出三个常数a, b, c
,那么似乎以下 MWE 中的两行都会产生相同的视觉结果,至少在 MWE 本身和我进行的所有实验中都是如此:
\documentclass{article}
\begin{document}
$a,\ b$, and $c$
$a$, $b$, and $c$
\end{document}
但是,其中一个是否比另一个更正确?使用第一个是否会导致问题?我知道 TeX 至少允许在 处断行\
,与我之前使用简单逗号的情况不同。
(我知道我应该在~
之前插入一个$c$
,但我发现这会分散对这里真正问题的注意力。)
答案1
是的,这很重要。在第一种情况下,逗号来自数学字体,并且根据您的数学设置,逗号可能与文本字体不同。因此,您应该确保所有逗号都来自文本或数学,而不是混合使用。哪一个更好取决于上下文,在正常句子中,我会使用文本逗号。
\documentclass{article}
\usepackage{newtxmath} %to change the math fonts
\usepackage{amsmath}
\begin{document}
$a,\ b$, and $c$
$a$, $b$, and $c$
$a, b, \text{ and } c$
\end{document}
答案2
TeX 不会在“控制空间”处断行,因为只有在二元运算符(例如+
或 )之后才允许在公式中断行=
。数学模式下的 Glue 不是允许的断点。
中的空格
$a,\ b$, and $c$
会有所不同,因为 TeX 在标点符号原子(逗号)和普通原子(“b”)之间添加了一个细空格,与任何显式插入的粘连(或惩罚)无关。
所以“正确”的方法应该是
$a$,~$b$, and~$c$
从语法的角度来看,这三个变量只是名称,因此这与
Moe, Larry, and~Curly
是否应该使用牛津逗号取决于您的个人喜好(我不会使用)。
Moe,
为什么和之间没有连接Larry
,而$a$,
和之间有一个$b$
连接?因为文本中的单个变量远不如多字母单词那么突出,所以最好不要让 TeX 在那里添加换行符。
我一般建议自由使用~
,所以也许
Moe,~Larry, and~Curly
会更好。如果TeX 无法正确地分段落,我们可以决定是否删除平局。
那“for i=1,2,...,n”呢(我在这里写得明显不对)?数字列表构成一个句法单位,因此应该是
for~$i=1,2,\dots,n$
这样的选择可能是有争议的,所以我就此打住。