预编译前言不尊重字体规范 Tex Ligatures 字体规范

预编译前言不尊重字体规范 Tex Ligatures 字体规范

我已经成功设置了预编译的前言,如下所述Tex-Stackexchange 帖子

但是,仍然存在一个问题:如果我将 fontspec 移至序言,连字就会停止工作。

目前我的预编译前言的 tex 文件如下所示:

%lualatex.exe -interaction=nonstopmode -ini -jobname="preambleprecompiled" "&lualatex" mylatexformat.ltx "preambleprecompiled.tex"
\documentclass{article}

\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\setmainfont[Ligatures=TeX]{Minion Pro}

\csname
endofdump\endcsname

我的主文件如下:

%&preambleprecompiled
\endofdump
\begin{document}
    Test Text   \newline
    --          \newline    
    ---         \newline
    `           \newline    
    ´           \newline
    `'          \newline
    ´'          \newline
    '           \newline
    \textemdash \newline
    \textendash \newline    
\end{document}

在该设置中,破折号不会被转换 - 它们只是保留下来,如下图所示:

在此设置中,破折号不会被转换

一旦我将 fontspec 部分移到主文件,它就可以工作了,但是,这违背了目的。

为了完整起见——它看起来是这样的:

%&preambleprecompiled
\endofdump
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\setmainfont[Ligatures=TeX]{Minion Pro}
\begin{document}
    Test Text   \newline
    --          \newline    
    ---         \newline
    `           \newline    
    ´           \newline
    `'          \newline
    ´'          \newline
    '           \newline
    \textemdash \newline
    \textendash \newline    
\end{document}

fontspec 现在不再是预编译前言的一部分

我该如何修复这个问题?

相关内容