Cloze-Paket: Silbentrennung funktioniert nicht (mehr?)

Cloze-Paket: Silbentrennung funktioniert nicht (mehr?)

Ich verwende das clozePaket, um Lückentexte zu erstellen. In der Dokumentation heißt es dazu konkret (S. 4):

\clozeDas Verhalten der Silbentrennung wird durch den Befehl nicht verändert.

Aber wenn ich das angegebene Beispiel ausprobiere, sehe ich, dass Wörter nicht mehr richtig getrennt werden:

\documentclass{article}
\usepackage{cloze}
\begin{document}
Telekommunikationsüberwachung geht Unternehmenssteuerfortentwicklungsgesetz
\cloze{Telekommunikationsüberwachung} geht \cloze{Unternehmenssteuerfortentwicklungsgesetz}
\end{document}

Ergebnis der Kompilierung

Kann das jemand bestätigen? Ist das „reparierbar“? Was mir Sorgen macht, ist, dass ich mich irgendwie daran erinnere, dass die Silbentrennung funktionierte, als ich sie vor einiger Zeit getestet habe.

Antwort1

Wenn ich in der Quelle nach der Dokumentation (Datei cloze.dtx) suche, sehe ich

\begin{clozeexample}
es
\cloze{Te\-le\-kom\-mu\-ni\-ka\-tions\-ü\-ber\-wach\-ung}
geht
\cloze{Un\-ter\-neh\-mens\-steu\-er\-fort\-ent\-wick\-lungs\-ge\-setz}
\cloze{Ab\-teil\-ungs\-lei\-ter\-in}
\cloze{Ober\-kom\-mi\-sar\-in}
auch
\cloze{Fil\-lial\-lei\-ter\-in}
kurz
\cloze{Ober\-kom\-mi\-sar\-in}
\cloze{Un\-ter\-neh\-mens\-steu\-er\-fort\-ent\-wick\-lungs\-ge\-setz}
\cloze{Fil\-lial\-lei\-ter\-in}
\cloze{Metz\-ger\-mei\-ster\-in}
in
\cloze{Ab\-teil\-ungs\-lei\-ter\-in}
der
\cloze{Ober\-kom\-mi\-sar\-in}
\cloze{Hoch\-lei\-stungs\-flüs\-sig\-keits\-chro\-ma\-to\-gra\-phie}
\cloze{Fil\-lial\-lei\-ter\-in}
Kürze
\cloze{Un\-ter\-neh\-mens\-steu\-er\-fort\-ent\-wick\-lungs\-ge\-setz}
\cloze{Metz\-ger\-mei\-ster\-in}
liegt
\cloze{Ab\-teil\-ungs\-lei\-ter\-in}
die
\cloze{Metz\-ger\-mei\-ster\-in}
\cloze{Ab\-teil\-ungs\-lei\-ter\-in}
Würze
\cloze{Ober\-kom\-mi\-sar\-in}
\end{clozeexample}

und tatsächlich ist die Silbentrennung in Ordnung, wenn dies kompiliert wird.

Andererseits scheint dies Ihr Problem zu reproduzieren:

\documentclass{article}

\usepackage{cloze}

\begin{document}

\parbox{2cm}{
  \cloze{supercalifragilisticexpialidocious}
}

\bigskip

\parbox{2cm}{
  supercalifragilisticexpialidocious
  \cloze{supercalifragilisticexpialidocious}
}

\bigskip

\parbox{2cm}{
 x
 \cloze{supercalifragilisticexpialidocious}
}

\end{document}

Bildbeschreibung hier eingeben

Es scheint, dass, wenn \clozees nach einem Leerzeichen kommt, keine Silbentrennung möglich ist. Wenn ich das zweite Beispiel ändere in

\parbox{2cm}{
  supercalifragilisticexpialidocious
  \cloze{\hspace{0pt}supercalifragilisticexpialidocious}
}

dann ist das Ergebnis wie erwartet:

Bildbeschreibung hier eingeben

Ein möglicher Fix, der aber nur mit TeX Live 2017 funktioniert (Vortest, LuaTeX 1.0.4)

\documentclass{article}

\usepackage{cloze}
\usepackage{xpatch}

\xpatchcmd{\cloze}{#2}{\hspace{0pt}#2}{}{}

\begin{document}

\parbox{2cm}{
  \cloze{supercalifragilisticexpialidocious}
}

\bigskip

\parbox{2cm}{
  supercalifragilisticexpialidocious
  \cloze{supercalifragilisticexpialidocious}
}

\bigskip

\parbox{2cm}{
 x
 \cloze{supercalifragilisticexpialidocious}
}

\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen