tikz 外部化和词汇表给出了神秘的错误

tikz 外部化和词汇表给出了神秘的错误

根据标题,我正在尝试使用最新的 TexLive 编译以下内容:

\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}

编译失败。检查后test-figure.log我们发现:

! Too many }'s.
<argument> ...keys {glossaries-extra.sty}{docdef}}
                                                  {\PackageError {glossaries...
l.9 \makenoidxglossaries
                        {} 

我甚至不知道如何开始调查这样的错误。我发布的代码是从我的实际用例中提炼出来的最小重现示例。我非常感谢任何形式的帮助,并愿意提供任何可能对您有帮助的东西。提前谢谢大家。

替换glossaries-extraglossaries可以使 MWE 编译正常。

答案1

\tikzexternalize交换和的顺序\makenoidxglossaries{}似乎有效

\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}

奇怪的是,这似乎违背了 TikZ 手册中的建议,即\tikzexternalize可以\usepackage{glossary}通过放置\tikzexternalize \usepackage{glossary}

无论是什么导致了这个问题,似乎都是由最近的更改引起的,您的示例在 TL 2020 上编译得很好,但在最新版本上确实出错了。

相关内容