13

I'm using soul to letterspace headings in a Hungarian document and compiling it with lualatex.

For some reason soul drops some of the accented letters at the end of a word, but not all. In the example below, only ő and ű are affected:

\documentclass{minimal}
\usepackage{fontspec}
\setmainfont[Ligatures = TeX]{TeX Gyre Pagella}
\usepackage{soul}
\begin{document}
\noindent
\so{áll llá ÁLL LLÁ}\\
\so{íll llí ÍLL LLÍ}\\
\so{űll llű ŰLL LLŰ}\\
\so{őll llő ŐLL LLŐ}\\
\so{üll llü ÜLL LLÜ}\\
\so{öll llö ÖLL LLÖ}\\
\so{úll llú ÚLL LLÚ}\\
\so{óll lló ÓLL LLÓ}\\
\so{éll llé ÉLL LLÉ}
\end{document}

sample letters

  • The question is not about ő/Ő, but rather depends on the fact that they are at the word border. Try with a final Ű, for example. Other accented letters seem to be unaffected. – egreg Jan 14 '12 at 10:41
  • Indeed! I restated the question. – Gambhiro Jan 14 '12 at 12:03
  • 4
    I've tracked down the problem to this: characters with Unicode > 255 don't appear. Indeed U+00FF is ÿ that is treated correctly, while U+0100, that is Ā, disappears. – egreg Jan 14 '12 at 13:57
11

The problem is in the font used for testing hyphenation. If you add

\makeatletter
\let\SOUL@tt\relax
\newfontface{\SOUL@tt}{FreeMono}
\makeatother

after loading soul the problem seems to disappear. It probably won't show again characters that are not in the \SOUL@tt font.

Full code:

\documentclass{article}
\usepackage{fontspec}
\setmainfont[Ligatures = TeX]{TeX Gyre Pagella}
\usepackage{soul}
\makeatletter
\let\SOUL@tt\relax
\newfontface{\SOUL@tt}{TeX Gyre Cursor}
\makeatother

\begin{document}
\noindent
\so{áll llá ÁLL LLÁ}\\
\so{íll llí ÍLL LLÍ}\\
\so{űll llű ŰLL LLŰ}\\
\so{őll llő ŐLL LLŐ}\\
\so{üll llü ÜLL LLÜ}\\
\so{öll llö ÖLL LLÖ}\\
\so{úll llú ÚLL LLÚ}\\
\so{óll lló ÓLL LLÓ}\\
\so{éll llé ÉLL LLÉ}
\end{document}

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.