跳转到内容

TeX/relax

来自维基教科书,自由的教学读物
< TeX

\relax

唐纳德·克努特将其描述为告诉 TeX "什么也不做"。乍一看,这似乎是一个毫无意义的控制序列。然而,一些控制序列会作用于其后的标记,而 \relax 会告诉 TeX 停止接受此控制序列的新标记。有时需要这样做来解决其他情况下可能出现歧义的表达式。

以下代码看起来没什么问题,但是...

 \begin{tabular}{ll}
 Number & Text \\
 [a] & lorem ipsum \\
 [b] & lorem ipsum \\
 \end{tabular}

... TeX 会抛出一个错误 "! Missing number, treated as zero. <to be read again> a"。TeX 只是忽略了行尾,并将标记 "\\[a]" 读取为 \\[length]。为了阻止 TeX 读取这些东西,只需告诉它 \relax

 \begin{tabular}{ll}
 Number & Text \\ \relax
 [a] & lorem ipsum \\ \relax
 [b] & lorem ipsum \\
 \end{tabular}

这样 TeX(以及你)就能保持冷静。

华夏公益教科书