Das ist ein Bug in
glossaries, von dem ich dachte, dass er schon vor längerer Zeit gemeldet wurde. Das Paket arbeitet intern (leider) mit
\write18. Das funktioniert zwar mit PDFLaTeX, aber nicht mit LuaLaTeX, weil bei LuaLaTeX
\write18 keine spezielle Behandlung hat. Besser wäre, wenn es das vom LaTeX-Team extra für diese Zwecke bereitgestellte Paket
shellesc aus den Standard-Tools und dessen Anweisung
\DelayedShellEscape verwenden würde. Das alleinige Laden von
shellesc genügt nicht, obwohl damit
\write18 wieder eine Sonderfunktion erhält. Wie die Anleitung zum Paket erklärt, funktioniert das aber wie
\immediate\write18, was in diesem Fall aber falsch ist.
Man kann die korrekte Anweisung nachträglich in
glossaries hineinpatchen:
%!TeX lualatex
\documentclass{article}
\usepackage[automake]{glossaries}% Option hinzugefügt.
\usepackage{shellesc}
\usepackage{xpatch}
\makeatletter
\xpatchcmd{\@gls@automake}{\write18}{\DelayedShellEscape}{%
\typeout{glossaries delayed shell escape patch done.}%
}{%
\typeout{glossaries delayed shell escape patch failed. Maybe not needed.}%
}
\makeatother
\makeglossaries
\newglossaryentry{latex}
{
name=latex,
description={Is a markup language specially suited
for scientific documents}
}
\newglossaryentry{maths}
{
name=mathematics,
description={Mathematics is what mathematicians do}
}
\begin{document}
\title{How to create a glossary}
\author{ }
\date{ }
\maketitle
The \Gls{latex} typesetting markup language is specially suitable
for documents that include \gls{maths}.
\clearpage
\printglossaries
\end{document}
Das sollte nicht nur mit LuaLaTeX, sondern auch mit XeLaTeX oder PDFLaTeX funktionieren.
Ich möchte Dich bitten, (nochmals) einen entsprechenden Bug zu melden. Kontaktmöglichkeit findet sich mit Sicherheit in der
glossaries-Anleitung. (Normalerweise mache ich soetwas ja selbst, aber ich habe gerade sehr wenig Zeit.)