如果包含的文件发生变化,latexmk -pvc 不会重新编译

如果包含的文件发生变化,latexmk -pvc 不会重新编译

我当前的项目布局如下:

Mainfile.tex包括\begin{document}

  • 序言(\documentclass、软件包、新命令等)和
  • 章节,分成单独的子文件。

我使用以下内容.latexmkrc进行编译latexmk -pvc -pdf Mainfile.tex

$pdflatex = "xelatex -src-specials -synctex=1 -interaction=nonstopmode %O %S";
$pdf_previewer = "evince %O %S";
$pdf_update_method = 0;
$sleep_time = 1;

push @cus_dep_list, "nlo nls 0 nlo2nls";
sub nlo2nls {
    system("makeindex $_[0].nlo -s nomencl.ist -o $_[0].nls -t $_[0].nlg");
}

该文档完美编译,没有错误,但latexmk无论我更改主文件或其中一个包含的子文件,都不会重新编译它。

有任何想法吗?

编辑:约翰·柯林斯是对的。没有使用“开始”是罪魁祸首。

答案1

设置的线$pdf_previewer需要

$pdf_previewer = "启动 evince %O %S";

'evince' 前面有 'start'。否则,latexmk运行时evince,它会等待evince终止,而不是运行evince分离

(我可能应该改变latexmk的行为,以便它在连续预览模式下自动分离预览器。)

相关内容