我一直在尝试使用 latex 的 embedall 包,但在 overleaf 中我得到了......
包嵌入文件错误:未找到文件“output.tex”。
这个的 MWE 是...
\documentclass{article}
\usepackage{embedall}
\begin{document}
hello
\end{document}
在我的本地机器上,我正在使用 emacs org 模式并使用......
\usepackage[main,include]{embedall}
\IfFileExists{./\jobname.org}{\embedfile[desc=The original file]{\jobname.org}}{}
在我的文档序言中,在编译时
LC_ALL=en_US.UTF-8 latexmk -%latex -pdf -f %f -shell-escape -interaction=nonstopmode -emulate-aux-dir -aux-directory='/tmp/latexmk' -output-directory='.'
但我收到了错误...
包嵌入文件错误:未找到文件“7acc1fb581a8a02455fd651925e667d405d48d8a.tex”。
如果我使用 latexmkrc 在本地机器上编译 tex……
$pdf_mode = 1;
$pdflatex = 'pdflatex --shell-escape -interaction=nonstopmode';
$emulate_aux = 1;
$out_dir = '.';
$aux_dir = '/tmp/latexmk';
我没有收到错误。
我怎样才能将我的 tex 源嵌入到 overleaf 和 org 模式下的 pdf 文件中?
更新
对于 overleaf,我尝试重新定义 jobname......
\documentclass{article}
\begingroup\escapechar=-1
\xdef\jobname{\expandafter\string\csname main\endcsname}
\endgroup
\usepackage[main,include]{embedall}
\begin{document}
hello
\end{document}
成功了。对于 Org 模式,我认为这意味着我只需要将作业名称设置为当前文件的名称(不带扩展名)。