自动确定哪些命令是必要的

自动确定哪些命令是必要的

实际上我需要几个命令来编译我的 Latex 文档:

lualatex -synctex=1 -interaction=nonstopmode -halt-on-error main
biber main
makeindex main
makeindex -s main.ist -t main.alg -o main.acr main.acn
makeindex -s main.ist -t main.glg -o main.gls main.glo
lualatex -synctex=1 -interaction=nonstopmode -halt-on-error main
lualatex -synctex=1 -interaction=nonstopmode -halt-on-error main #not sure if this is really needed

但我注意到背页只需一次运行即可编译文档...好吧,我看不到 Overleaf 在后台做了什么,但我假设它做了。

有没有办法用一个命令来编译所有内容?

当然我可以使用 Bash 脚本或 Makefile。但我正在考虑一种也可以加快速度的方法。编译文档三次非常慢。也许有一个步骤可以一步构建所有内容。

答案1

自动化工具有很多,可以分为两类:

自动确定哪些命令是必要的

  • latexmk
  • ltx2any
  • 橡皮
  • ...

用户提供命令列表

  • 阿拉拉
  • 从 texstudio 快速编译(用户可以在首选项中配置运行哪些命令)
  • ...

答案2

你需要的是 arara。查看文档:

https://ctan.org/pkg/arara

您始终可以将编译命令放入“options”指令中。我不太确定 makeindex,但有一个使用它进行“编译”的规则,而且我非常确定您使用的那些选项将在 arara 自动范围内。

相关内容