抑制 baskervaldx 中的“ae”和“oe”连字

抑制 baskervaldx 中的“ae”和“oe”连字

我正在使用Baskervaldx带有 LuaLaTeX 的字体fontspec,但我无法使用其中任何一个来抑制“ae”和“oe”连字

\defaultfontfeatures{Ligatures={NoCommon,NoContextual,NoHistoric,NoDiscretionary}}

microtype\DisableLigatures[a]{encoding = *, family = * }

(实际上,我不知道这是否是正确的方法。)

\usepackage{Baskervaldx}有效,\usepackage{selnolig} \nolig{ae}{a|e} \nolig{oe}{o|e}

有没有办法使用fontspec或抑制这些连字符microtype

不起作用的 MWE:

\documentclass{article}

\usepackage{fontspec}
\defaultfontfeatures{Ligatures={NoCommon,NoContextual, NoHistoric,NoDiscretionary},
    Numbers={OldStyle,Proportional}}
\setmainfont{baskervaldx}

\usepackage{polyglossia}
\setdefaultlanguage[variant=american]{english}

\begin{document}  
Michael doesn’t finalize.    
\end{document}

这个也不起作用:

\documentclass{article}

\usepackage{fontspec}
\setmainfont{baskervaldx}

\usepackage{microtype}
\DisableLigatures[a]{encoding = *, family = * }

\usepackage{polyglossia}
\setdefaultlanguage[variant=american]{english}

\begin{document}
Michael doesn’t finalize.   
\end{document}

接下来的两个 MWE 确实有效:

\documentclass{article}    
\usepackage{fontspec}
\setmainfont{baskervaldx}

\usepackage{selnolig}
\nolig{ae}{a|e}
\nolig{oe}{o|e}

\usepackage{polyglossia}
\setdefaultlanguage[variant=american]{english}

\begin{document} 
Michael doesn’t finalize.  
\end{document}

\documentclass{article}
\usepackage{Baskervaldx}

\usepackage{polyglossia}
\setdefaultlanguage[variant=american]{english}

\begin{document}  
Michael doesn’t finalize.   
\end{document}

答案1

正如预期的那样,Baskervaldx 在功能中定义了它的 f 连字liga,在中定义了它的 'ct'、'sp' 和 'st' 连字dlig;奇怪的是,它将 'ae' 和 'oe' 连字(包括大写和小写)放在中rlig,即必需连字,默认情况下处于启用状态。这几乎总是一个问题,即使在这些连字有时是强制性的语言中也是如此。

除了找到更好的 Baskerville 之外,解决方案是关闭必需的连字。这将保留您的 f 连字,当您需要“æ”或“œ”时,您仍然可以通过键入它(使用您的文本编辑器或操作系统允许的任何方法)或使用\ae\oe等来获得它:

\documentclass{article}
\usepackage{fontspec,polyglossia}
\setmainfont{baskervaldx}[
  Ligatures=NoRequired,
  Numbers={OldStyle,Proportional}]
\setdefaultlanguage[variant=american]{english}
\begin{document}
Michael hasn’t finalized his translation of the \textit{De cælo.}
\end{document}

输出

相关内容