
Gemäß dem Titel versuche ich, Folgendes mit dem neuesten TexLive zu kompilieren:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{external}
\tikzexternalize
\tikzexternalenable
\usepackage{glossaries-extra}
\makenoidxglossaries{}
\begin{document}
\begin{figure}[htbp]\tikzsetnextfilename{test-figure}
\begin{tikzpicture}
\node at (0, 0) {hi, mom};
\end{tikzpicture}
\end{figure}
\printnoidxglossary{}
\end{document}
Die Kompilierung schlägt fehl. Bei der Überprüfung test-figure.log
stellen wir fest:
! Too many }'s.
<argument> ...keys {glossaries-extra.sty}{docdef}}
{\PackageError {glossaries...
l.9 \makenoidxglossaries
{}
Ich habe keine Ahnung, wie ich überhaupt anfangen soll, einen solchen Fehler zu untersuchen. Der Code, den ich gepostet habe, ist ein minimales Beispiel zur Reproduktion, das aus meinem tatsächlichen Anwendungsfall destilliert wurde. Ich würde mich über jede Art von Hilfe freuen und bin bereit, alles bereitzustellen, was Ihnen helfen könnte, mir zu helfen. Vielen Dank an alle im Voraus.
Das Ersetzen glossaries-extra
durch glossaries
führt dazu, dass die MWE-Kompilierung reibungslos verläuft.
Antwort1
Das Vertauschen der Reihenfolge von \tikzexternalize
und \makenoidxglossaries{}
scheint zu funktionieren
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{external}
\usepackage{glossaries-extra}
\makenoidxglossaries{}
\tikzexternalize
\tikzexternalenable
\begin{document}
\begin{figure}[htbp]\tikzsetnextfilename{test-figure}
\begin{tikzpicture}
\node at (0, 0) {hi, mom};
\end{tikzpicture}
\end{figure}
\printnoidxglossary{}
\end{document}
Seltsamerweise scheint dies dem Vorschlag im TikZ-Handbuch zu widersprechen, dass Probleme mit \tikzexternalize
und \usepackage{glossary}
gelöst werden können, indem\tikzexternalize
Vor \usepackage{glossary}
.
Was auch immer das Problem verursacht, es scheint auf die jüngsten Änderungen zurückzuführen zu sein. Ihr Beispiel wird bei mir unter TL 2020 problemlos kompiliert, bei den neuesten Versionen tritt jedoch ein Fehler auf.