![灵魂从单词末尾删除一些重音字母](https://linux22.com/image/244697/%E7%81%B5%E9%AD%82%E4%BB%8E%E5%8D%95%E8%AF%8D%E6%9C%AB%E5%B0%BE%E5%88%A0%E9%99%A4%E4%B8%80%E4%BA%9B%E9%87%8D%E9%9F%B3%E5%AD%97%E6%AF%8D.png)
我正在soul
匈牙利语文档中使用字母空格标题并用 进行编译lualatex
。
由于某种原因,soul
单词末尾的一些重音字母会被删除,但不会全部删除。在下面的例子中,只有ő
和ű
受到影响:
\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}
答案1
问题出在用于测试连字的字体上。如果您添加
\makeatletter
\let\SOUL@tt\relax
\newfontface{\SOUL@tt}{FreeMono}
\makeatother
加载后soul
问题似乎消失了。它可能不会再显示\SOUL@tt
字体中没有的字符。
完整代码:
\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}