使用“list and make”进行 pgfplots 外部化选项以显示完整错误

使用“list and make”进行 pgfplots 外部化选项以显示完整错误

我一直在使用 LuaLatex 和外部化库,并在序言中使用了这些选项

   \usepgfplotslibrary{external}
   \tikzsetexternalprefix{figurescache/}
   \tikzexternalize[mode=list and make]

编译完主 latex 文档后,我必须对主文件执行“make”才能生成pgfplots/tikz图形。此步骤很好。但是,当我的tikz代码出现错误时,我无法看到详细的错误消息。我希望能够看到类似于

"line 110, undefined control sequence"

在命令提示符中。 有选项吗?

根据要求,MWE 应该类似于

  \documentclass{article}
   \usepackage{pgfplots}
   \usepackage{tikz}
  \usepgfplotslibrary{external}
  \tikzsetexternalprefix{figurescache/}
  \tikzexternalize[mode=list and make]
   \begin{document}
    Random Text here.
    \begin{figure}
    \centering{
    \begin{tikzpicture}
    \begin{axis}[xmin=0, xmax=5,ymin=0,ymax=5, axis lines=none]
    \addplot[only marks, mark size=2pt] table[x=xs, y=ys]{
        xs  ys
         1     1
         1     2
         1     3
    };
    \draw (axis cs: 2, 1) node[left]{{\footnotesize $i-1$}};
    \draw (axis cs: 2, 2) node[left]{{\footnotesize$i$}};
    \draw (axis cs: 2, 3) node[left]{{\footnotesize$i+1$}};
    \end{axis}
    \end{tikzpicture}
     }
    \end{figure}
  \end{document}

编译上述代码后,必须使用make终端中的命令来创建图形。现在,如果包含的块中恰好出现拼写错误tikzpicture,则 make 命令将中止,并且终端中不会显示任何有意义的错误。如果您删除

       \usepgfplotslibrary{external}
       \tikzsetexternalprefix{figurescache/}
       \tikzexternalize[mode=list and make]

并执行简单的编译,如果出现错误,则会显示更有意义的错误消息。我想要的是能够在执行命令时看到有意义的错误make。谢谢

答案1

所以我找到了我自己的问题的答案。我需要做的是禁用交互模式。这可以通过在序言中添加以下选项来实现:

\tikzset{external/system call={lualatex -shell-escape -synctex=1 -halt-on-error -jobname "\image" "\texsource"}}

有了这个选项,我现在能够在命令行中读取有关 pgfplots 的错误。

相关内容