standalone
我想使用带有选项的包包含位于名称中带有空格的子目录中的 TikZ 图形mode = buildnew
。但是,我遇到了一个错误,这似乎与使用的引号类型有关。如果这是解决此问题的唯一可能方法,请仅建议将文件树更改为没有空格(我的实际问题涉及不同位置的许多子目录和文件)。
设置
- 我的操作系统是 Windows 7 SP 1;
- 我使用 WinEdt 9.1 并使用 PDFTeXify 按钮进行编译;
- 在选项>执行模式>控制台应用程序>附件 PDFLaTeX 我添加了开关
--enable-write18
; - MiKTeX版本为2.9;
- 该
pgfplots
软件包是1.13版本; - 该
standalone
软件包的版本为 1.2。
平均能量损失
我有以下文件树
mwe.tex
spa ces/mwefig.tex
文件如下:
% mwe.tex
\documentclass{article}
\usepackage[mode = buildnew]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat = newest}
\begin{document}%
\includestandalone{"spa ces/mwefig"}%
\end{document}%
和
% spa ces/mwefig.tex
\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat = newest}
\begin{document}%
\begin{tikzpicture}%
\draw (0,0) -- (1,1);%
\end{tikzpicture}%
\end{document}%
我得到的错误是
Package standalone Warning: Graphic '"spa ces/mwefig".pdf' could not be build.
Shell escape activated? on input line 9.
编辑目前看来问题与空格无关。我将完全相同的文件添加mwefig.tex
到不同的子目录中以创建位置nospaces/mwefig.tex
,然后当我替换时,\includestandalone{"spa ces/mwefig"}%
我\includestandalone{nospaces/mwefig}%
得到了类似的错误
Package standalone Warning: Graphic 'nospace/mwefig.pdf' could not be build.
Shell escape activated? on input line 9.
所以,问题确实似乎出在 shell 转义上。我应该先解决这个问题,有什么想法吗?
编辑2现在,不带空格的情况 ( nospace/mwefig.tex
) 可以通过以下方式解决:在选项 > 执行模式 > 控制台应用程序 > 附件 PDFTeXify 中,我已将开关设置为--pdf --tex-option=-shell-escape
。问题和但空间仍然存在。
答案1
我认为这是一个独立的错误。它引用了作业名称,但没有引用文件名。您可以尝试以下方法:
\documentclass{article}
\usepackage[mode = buildnew]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat = newest}
\makeatletter
\begin{document}%
\includestandalone[build={quote={}}]{"test with space/mwefig"}%
\end{document}
但是,如果您只是避免在文件和文件夹名称中使用空格,则可以节省大量时间和麻烦。如果您将来将文件移动到其他操作系统或使用其他 texsystem,则解决方案很可能会失效,然后您将再次为空格而苦恼……