Unterdrücken der Silbentrennung von Wörtern, die bereits einen Bindestrich enthalten

Unterdrücken der Silbentrennung von Wörtern, die bereits einen Bindestrich enthalten

Nach der akzeptierten Antwort vondiese FrageTeX trennt Wörter, die bereits einen Bindestrich enthalten, nie voneinander. Trotzdem stelle ich in einem Dokument hier fest, dass das Wort „Modula-2“ getrennt ist, wie das folgende Bild zeigt (erstellt mitDiese Dateimit XeLaTeX, Version 3.1415926-2.4-0.9998 (MiKTeX 2.9 64-Bit)).

\documentclass[10pt]{article}
\begin{document}
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum Modula-2
  nisi urna, congue sed congue id, iaculis et lacus.
\end{document}

Unerwünschte Silbentrennung

Offensichtlich kann ich das nicht \hyphenationverhindern, aber das Wort kommt mehrmals vor, also möchte ich keines von \mboxbeiden verwenden. Gibt es eine bessere Lösung?

Antwort1

Mit dem Nichttrennen von Wörtern mit Bindestrich ist gemeint, dass keinemehrBindestriche. Was Sie verhindern möchten, ist ein Zeilenumbruch an einem vorhandenen Bindestrich, für den Sie nur

   \exhyphenpenalty=10000

in der Präambel, um eine unendliche Strafe für das Trennen an einem expliziten Bindestrich zu verhängen

Bildbeschreibung hier eingeben

Antwort2

Davids Antwort zeigt Ihnen, wie Sie die Trennung nach einem expliziten Bindestrich global unterdrücken (also für jedes Wort mit einem expliziten Bindestrich).

Oftmals möchte man das Brechen nur in bestimmten Fällen unterdrücken. Dafür gibt es zwei Ansätze:

\mbox{Modula-2}

funktioniert ohne Paket.

ngerman.sty oder die ngerman-Option für das Babel-Paket enthalten eine praktische Abkürzung für den untrennbaren Bindestrich:

Modula"~2

wobei "~ definiert ist als

\leavevmode\hbox{-}

verwandte Informationen