Estou testando o Asymptote com latexmk e gostaria de automatizar a interação.
Considere o seguinte documento de látex 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}
No meu latexmkrc
eu tenho oseguintes linhaspara integração assíntota:
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");
A execução latexmk -pdf test.tex
gera test.pdf
na pasta atual e test-1.asy
na test-1.pdf
pasta asymptote
- mas somente se
- Criei manualmente a
asymptote
pasta antes de executar olatexmk
. - A especificação da pasta no documento latex (
\def\asydir{asymptote}
) elatexmkrc
(-o asymptote/
) são idênticas.
Gostaria latexmk
de ler asydir
o arquivo tex principal, criar o diretório se ele não existir e executar asy
com a pasta de saída de leitura.
Isso é possível?
Responder1
Basta mudar a sub asy
linha latexmrc
para
sub asy {return system("asy -o \"$_[0]\" \"$_[0]\"");}