严格排版公式中的连字符点

严格排版公式中的连字符点

因为我不喜欢数学公式的跟踪(“拉伸”)的外观,所以我通常使用${...}$而不是 来$...$表示数学公式。(请尊重我的这种审美偏好。)然而,这往往会导致超出线条。以下是导致此问题的一些工作示例代码:

\documentclass{article}

\begin{document}

Consider the following claim: ${a \in S \cap T}$ or
maybe ${a^2 + b^2 = c^2}$ and ${e^{\pi i} + 1 = 0}$, but
not ${xy = abc = uvw}$ or ${a/b = c/d = \frac{e}{f}}$
are interesting formulas. The preceding text was meant
to cause overshoot mathematical formulas.

\end{document}

具体来说,此处“preceding”一词在第 2 行和第 3 行之间被拆分为 pre-ceding,但第 1 行的公式${e^{\pi i} + 1 = 0}$超出了页边距。等号的末尾(大致)与“pre-ceding”中连字符的末尾对齐,“0”被放置在页边距中。

我想在等号前指示可选的数学公式换行符。有没有办法为数学公式指定可选的换行点(就像\-可以用来指示单词的连字符点一样),同时保持数学公式永远不会被跟踪的约束

答案1

如果你真的从来没有想要拉伸或缩小数学公式中的间距,你可以使用答案来如何改变二元关系间距的默认值?即将灵活空间\thickmuskip和设置\medmuskip为一些常量值:

\thickmuskip=5mu
\medmuskip=4mu

这些是默认值,但是无拉伸和收缩。因此,您将获得与您的方法相同的间距${...}$,但公式可能会在行尾被打破。

如果你将上述内容添加到示例代码的序言中({}当然,删除多余的),你会看到$e^{\pi i} + 1 = 0$发现等号,这是设计使然——Knuth 专门编写了 TeX不是中断关系符号。如果您仍想在等号前打断,可以\break在那里放置一个命令,但我不建议这样做。对于可选的打断,您可以使用\allowbreak,或者,如果这还不够,可以使用类似\penalty-100.

相关内容