
Этот короткий код компилируется с 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
проверяет, может ли он использовать letterspace
пакет, запрашивая значение \pdftexversion
. Если это значение не установлено, он возвращается к soul
. Современный LuaTeX больше не имеет встроенной функции \pdftexversion
(потому что он значительно отклонился от pdfTeX за эти годы), поэтому тест не проходит и 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}