使用 LuaLaTeX 和 XeLaTex 编译此 MWE
\documentclass{article}
\usepackage[defaultfeatures={Kerning=On,Ligatures={TeX,Common,Rare}}]{libertinus}
\begin{document}
\begin{tabular}{ccccccccccccc}
ff & fi & fj & fl & ft & ffi & ffj & ffl & fft & Th & ts & tt & Qu
\end{tabular}
\end{document}
XeLaTeX 的结果(注意 Qu-连字符):
LuaLaTeX 的结果(请注意缺少的 Qu 连字符):
预期结果:Qu-ligature 应该存在。我做错了什么?这是一个错误吗?如果是,在上游修复之前,是否有解决方法?
答案1
问题是您明确启用了“连字”,但 Qu 在此处未实现为连字,“Q”具有“上下文替代”(根据上下文插入另一个版本的“Q”)。如果您启用这些上下文替代,Qu 即可工作:
\documentclass{article}
\usepackage[defaultfeatures={Script=Latin,Kerning=On,Ligatures={TeX,Common,Rare},Contextuals = Alternate}]{libertinus}
\begin{document}
\begin{tabular}{ccccccccccccc}
ff & fi & fj & fl & ft & ffi & ffj & ffl & fft & Th & ts & tt & Qu
\end{tabular}
\end{document}
除了启用后面跟着“u”或“v”的这种较长形式的“Q”之外,启用它Contextuals = Alternate
还有另外一个效果:如果 a f
(或ff
连字符)后面跟着一个相对较高的字符,但是不与该字符形成连字符,则“f”将被更短的形式替换。
例如,fi
如果连字被禁用,则会显示以下内容:以下首先显示fi
启用了常用连字的情况,然后fi
显示既没有常用连字也没有上下文替代的情况,然后显示没有连字但有替代的情况。