我正在尝试使用 latexmk 实现 Asymptote,并且想实现交互的自动化。
考虑以下乳胶文档test.tex
:
\documentclass{minimal}
\usepackage{asymptote}
\def\asydir{asymptote}
\begin{document}
Testing Asymptote:
\begin{asy}
settings.outformat = "pdf";
unitsize(2cm);
draw((0,0) -- (1,0));
\end{asy}
\end{document}
在我的latexmkrc
我有以下行对于渐近线积分:
sub asy {return system("asy -o asymptote/ \"$_[0]\"");}
add_cus_dep("asy","eps",0,"asy");
add_cus_dep("asy","pdf",0,"asy");
add_cus_dep("asy","tex",0,"asy");
运行会在当前文件夹中latexmk -pdf test.tex
生成,并在文件夹中生成- 但前提是test.pdf
test-1.asy
test-1.pdf
asymptote
asymptote
我在运行之前手动创建了该文件夹latexmk
。- latex 文档 (
\def\asydir{asymptote}
) 和latexmkrc
(-o asymptote/
) 中的文件夹规范相同。
我想从主 tex 文件中latexmk
读取asydir
,如果不存在则创建目录并asy
使用读取的输出文件夹运行。
这可能吗?
答案1
只需将sub asy
行改为latexmrc
sub asy {return system("asy -o \"$_[0]\" \"$_[0]\"");}