Paquete Cloze: la separación de sílabas no funciona (¿ya?)

Paquete Cloze: la separación de sílabas no funciona (¿ya?)

Utilizo el clozepaquete para crear textos cerrados. La documentación dice específicamente (p. 4):

El comando \clozeno cambia el comportamiento de la separación de palabras.

Pero cuando pruebo el ejemplo dado, veo que las palabras ya no están separadas con guiones correctamente:

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

Resultado de la compilación

Puede alguien confirmar esto? ¿Es esto "reparable"? Lo que me preocupa es que recuerdo que la separación de palabras funcionó cuando la probé hace un tiempo.

Respuesta1

Si busco en la fuente la documentación (archivo cloze.dtx), veo

\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}

y de hecho, cuando se compila, la separación de palabras está bien.

Por otro lado, esto parece reproducir tu problema:

\documentclass{article}

\usepackage{cloze}

\begin{document}

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

\bigskip

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

\bigskip

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

\end{document}

ingrese la descripción de la imagen aquí

Parece que si \clozeva después de un espacio, no permite la separación de palabras. Si cambio el segundo ejemplo a

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

entonces el resultado es el esperado:

ingrese la descripción de la imagen aquí

Una posible solución, pero solo funciona con TeX Live 2017 (prueba preliminar, 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}

ingrese la descripción de la imagen aquí

información relacionada