当相关的 m4 电路宏文件发生变化时,使用 latexmk 重新编译主 LaTeX 文档?

当相关的 m4 电路宏文件发生变化时,使用 latexmk 重新编译主 LaTeX 文档?

我有一个主 LaTeX 文档,其中关联了。此文件由 m4 宏处理器和( )\input{file}组合生成,以便获取 .m4 文件并输出我需要的。现在,如果我更改文件,我必须重新进行所有“中间”编译。如果我运行 ,是否有自动执行此编译的方法?dpicm4 file.m4 | dpic > file.texfile.tex.m4latexmk

答案1

我终于明白了,所以基本的想法是在 中设置自定义依赖项。以下是要添加到文件latexmk中的行:~/.latexmkrc

add_cus_dep('m4','tex',0,'mtotex');

sub mtotex{
system( "m4 '$_[0]'.m4 | dpic -g > '$_[0]'.tex" );
}

在主 LaTeX 文件中,您可以添加\input{name_file}命令,而不必担心编译 m4 电路宏文件name_file.m4

相关内容