![为 tikz-cd 环境定义宏](https://linux22.com/image/371970/%E4%B8%BA%20tikz-cd%20%E7%8E%AF%E5%A2%83%E5%AE%9A%E4%B9%89%E5%AE%8F.png)
我想要一个简写
\begin{center}
\begin{tikzcd}
% ..diagram code...
\end{tikzcd}
\end{center}
我尝试过
\tikzset{ampersand replacement=\&}
\def\bcd#1\ecd{\begin{center}\begin{tikzcd}#1\end{tikzcd}\end{center}}
第一个命令应该修复与 & 符号有关的问题。没有它,我会得到关于它们的错误,但即使有了它,pdflatex
似乎也无法产生正确的输出(我得到了错误Package tikz: Sorry, the system call 'pdflatex -shell-escape -halt-on-error -interaction=batchmode -jobname "figures/cache/main-figure1" "\def\tikzexternalrealjob{main}\input{main}"' did NOT result in a usable output file 'figures/cache/main-figure1' (expected one of .pdf:.jpg:.jpeg:.png:)...
)
该错误似乎发生在常规图像上,所以也许是与\tikzset
命令的互操作性问题?如果我禁用tikz-external
,剩下的唯一错误就是Float(s) lost
。
答案1
显然,该错误是由在错误的地方使用另一个不相关的 tikz 环境引起的。
因此,问题中的简写实际上是可行的。