Windows 上 Lualatex 中的预编译头?

Windows 上 Lualatex 中的预编译头?

我正在尝试排版一个包含大量软件包的较长文档。现在看来,预编译头文件可以大大加快编辑-编译-修订周期。我尝试遵循如何加快 MacOS X 上非常大的文档的 pdflatex 速度?但它在我的系统上不起作用,我不确定我做错了什么。

我的 preamble.tex 如下所示:

\documentclass[a4paper]{scrbook}
\usepackage{scrpage2}
\def\preambleloaded{Precompiled preamble loaded.}

和 main.tex 文件:

\def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax} \ifundefined{preambleloaded}
\typeout{PRECOMILED PREAMBLE NOT LOADED}\input{preamble} \else
\typeout{\preambleloaded}
\fi

\begin{document}
test test test
\end{document}

现在,在编译序言之后

lualatex -ini -job-name="main" "&lualatex preamble.tex\dump"

创建了 main.fmt 文件,lualatex 运行无误。使用以下方法编译主文件

lualatex -shell-escape main.tex

一开始就给出了未包含序言的信息:

LaTeX2e <2011/06/27>
LuaTeX adaptation of babel <v3.8l-luatex-1.4> and hyphenation patterns for engl
ish, loaded.
PRECOMILED PREAMBLE NOT LOADED
(C:/Users/User/Documents/LaTeX/precompile/preamble.tex
(C:/Users/User/AppData/Roaming/MiKTeX/2.9/tex/latex/koma-script/scrbook.cls 
...

目前我能想到的唯一区别是,我在 Windows 7 上使用 LuaLaTeX,而不是像链接问题中那样在 Mac OS X 上使用 pdftex。任何关于如何修复此问题的提示都非常感谢。

答案1

你需要:

lualatex -shell-escape "&main main.tex"

否则新生成的main.fmt文件根本不会被使用。

相关内容