![需要排版两次才能正确编译吗?](https://linux22.com/image/266215/%E9%9C%80%E8%A6%81%E6%8E%92%E7%89%88%E4%B8%A4%E6%AC%A1%E6%89%8D%E8%83%BD%E6%AD%A3%E7%A1%AE%E7%BC%96%E8%AF%91%E5%90%97%EF%BC%9F.png)
每当我按下 CMD+T 时TexShop
,创建的 PDF 并不总是正确更新。我通常必须重新编译它才能更新目录和我所做的其他更改。我该如何解决这个问题?
使用 MACOSX 10.8 - TEXSHOP 3.11
答案1
不能。LaTeX 必须构建文件.aux
来存储目录 (ToC) 等,因为在排版目录时,它无法预先知道将出现哪些部分。LaTeX 按顺序工作。
- 第一次运行:收集所有部分等并将其存储在
.aux
文件中。 - 第二次运行:使用
.aux
文件排版目录。
实际上它同时做两件事:使用已经存在的 .aux 文件(可以为空或不存在)进行排版,并为下一次运行创建一个更新的文件。
存在一些可以“模拟”一次编译全部获取行为的工具,例如Texify
Windows 版 MiKTeX。但通常它们所做的只是连续运行编译器两次(bibtex
如果您使用它,可能在两次运行之间运行)。
感谢 Torbjørn T.,以下是他评论的链接:
答案2
对于任何 TeX 引擎来说,这种行为都是正常的(正如Foo 酒吧的答案),但是自动文档编译工具可能会在需要时自动多次运行创建 LaTeX 文档。
我建议使用用户友好的自动化工具arara
:手动的对新手来说写得非常好!特别是,我想指出的是,它可以arara
与 TeXShop 集成,参见链接手册第 4.4 节第 41 页。
Ben Lu 对“在 TeXShop 中运行多个命令”的回答
PS:此软件包由作者维护,保罗,他也是 TeX.SX 社区的杰出成员。