有没有办法有条件地编译 LuaLaTeX?

有没有办法有条件地编译 LuaLaTeX?

我想创建一个命令,如果调用该命令,则将编译器设置为 LuaTeX,否则将编译器设置为 PDFTeX。类似于:

\newcommand{\mul}[2]{
% If used, set compiler to LuaTeX
\directlua{tex.sprint{#1*#2}}
}

提前致谢!

答案1

正如您在问题的评论中所写,pdf/xe/luatex 引擎不会解析文件来查找所需 TeX 引擎的任何提示。

但是你的编辑器可以做到这一点。好吧,如果你使用 Emacs,例如

Emacs 带有一个名为 AUCTeX 的“模式”。此模式检查局部变量。如果你在文件末尾写下此代码,AUCTeX 将使用 LuaTeX 进行编译:

%%% Local Variables: 
%%% TeX-engine: luatex
%%% TeX-master: t 
%%% End:

因此,当您编写类似的内容时\directlua{...},请将局部变量添加到您的文件中。

相关内容