如何避免逗号前换行?

如何避免逗号前换行?

我刚刚遇到了一个问题,即以连字符结尾的单词后面跟着一个逗号,然后出现了换行符。

此示例显示了该问题:
(这个例子是构建的,但这只是在真实文本中发生在我身上!)

    \documentclass[11pt, a4paper]{scrartcl}

\usepackage[ngerman]{babel}

\begin{document}

aaDas ist ein Absatz. Das ist ein Absatz. Das ist ein Absatz. Es gibt zeit-, temperatur-,  und weggesteuerte Verfahren ein Absatz. Das ist ein Absatz.Das ist ein Absatz. Das ist ein Absatz.Das ist ein Absatz. Das ist ein Absatz.Das ist ein Absatz. Das ist ein Absatz.Das ist ein Absatz. Das ist ein Absatz.

    \end{document}

示例图片

由于我无法想象在一行开头使用逗号是有意义的,所以我想知道如何告诉 LaTeX 绝对避免这种情况。

答案1

您应该使用"~它。请参阅 babel 的文档(texdoc babel)。

aaDas ist ein Absatz. Das ist ein Absatz. Das ist ein Absatz. Es gibt zeit"~, temperatur"~, und weggesteuerte Verfahren ein Absatz.
Das ist ein Absatz.Das ist ein Absatz. Das ist ein Absatz.Das ist ein Absatz. Das ist ein Absatz.Das ist ein Absatz. Das ist ein
Absatz.Das ist ein Absatz. Das ist ein Absatz.

答案2

将违规词语括在作品中\mbox

\mbox{temperatur-,}

我认为如果有很多连字符而你又不想让它们中断的话,有一个更简洁的方法......

答案3

使用我的宏\nobreakseq

\def \nobreakseq {\nobreak \hskip 0pt \hbox}

Es gibt zeit\nobreakseq{-,} temperatur\nobreakseq{-,}  und weggesteuerte Verfahren ein Absatz.

它比\hbox{temperatur-,}或更好,\mbox{temperatur-,}因为\hbox{temperatur-,}不允许任何连字符。

相关内容