这段简短的代码可以用 pdflatex 编译,但不能用 lualatex 编译。我不能使用\maketitle
% !TEX TS-program = lualatex
\documentclass[justified]{tufte-book}
\title{Functional Analysis
\thanks{Thanks to Edward R.~Tufte for his inspiration.}}
\author{Andrew Tulloch}
\publisher{School of Mathematics and Statistics\\
The University of Sydney}
\begin{document}
\frontmatter
\maketitle
\end{document}
答案1
问题是该类tufte-book
还不能与 LuaTeX > 0.85 一起使用,这有点荒谬,因为距离该版本发布已经过去了相当长一段时间。
该类通过查询 的值来tufte-book
检查是否可以使用该包。如果该值未设置,则返回。现代 LuaTeX 不再具有内置功能(因为多年来它与 pdfTeX 有很大不同),因此测试失败并加载不兼容的内容。letterspace
\pdftexversion
soul
\pdftexversion
soul
幸运的是,有一个兼容包,它可以模拟旧接口并允许旧包与新 LuaTeX 一起使用。只需在之前包含它即可\documentclass
。
\RequirePackage{luatex85}
\documentclass{tufte-book}
\begin{document}
\makeatletter
\meaning\@tufte@pdftexversion
\meaning\if@tufte@letterspace@pkg@prereqs
\makeatother
\end{document}
没有\RequirePackage{luatex85}
和\RequirePackage{luatex85}