在后台运行 latexmk - 仅在完成后替换 pdf

在后台运行 latexmk - 仅在完成后替换 pdf

我有一个很长的 latex 文档,编译需要几秒钟的时间。当latexmk -pvc我使用并开始滚动文档时,只要文档仍在编译,整个页面就会变成空白。

有没有办法在 latexmk 完成后才替换主 pdf 文件?我想象 latexmk 编译help.pdf后将完整文件复制到其中的行为main.pdf

答案1

一种解决方法(Linux 语法,但 Windows 非常相似):

编写一个自定义latexmkrc文件,例如名为refreshmc,定义$success_cmd变量。此变量用于在运行latexmk完成时调用命令。使用此命令将文件复制到另一个文件,然后在 PDF 查看器中打开另一个文件。这可确保在编译结束之前不会修改正在查看的文件。

latexmk 可以在没有查看器的情况下连续运行view=none

refreshmc文件:

$success_cmd = 'cp %A.pdf tmpview.pdf';

latexmk 调用:

latexmk -r refreshmc -pvc -view=none yourfile.tex

相关内容