我的博士论文有一个完整的框架,基于 classicthesis/arsclassica。各个章节位于这样的子文件夹中。
- 主文本
- 章节/项目1/项目1.tex
- 章节/project2/project2.tex
- ...
我习惯chapterbib
在每章后添加一个参考部分。章节文件通过 包含在主文档中\include
,这样我就可以.aux
在每个子文件夹中获得单独的文件。我需要.aux
对子文件夹中的文件运行 bibtex,以便.bbl
创建章节参考所需的文件。
我办公室和家里的所有机器都运行 Linux,我使用 Vim 作为编辑器,并编写了一个简单的 shell 脚本来执行此操作。
#!/bin/bash
pdflatex main.tex
for auxfile in $(find * -name "*.aux"); do bibtex $auxfile; done
pdflatex main.tex
pdflatex main.tex
现在,我把模板给了一个朋友,她同时使用 Windows 和 OS X。她的编辑器是 Texmaker。给定的编译配置文件都不适用于此,因为它们不能bibtex
在其他文件上运行。手动打开子章节并bibtex
在我的计算机上执行工作,奇怪的是,这对她来说也不起作用,但我需要再次检查。无论如何,最好使用自动例程。
如果我添加类似的东西
for auxfile in $(find * -name "*.aux"); do bibtex $auxfile; done
作为 Mac 上 Texmaker 中用户指定的命令,我收到了消息"Error: Could not start the command"
,即使我从命令行执行它时它可以工作。
因此,我正在寻找一个(或两个)解决方案来添加一个配置文件,该配置文件执行通常的编译例程,并且还在 \included 章节的 .aux 文件上运行 bibtex。需要在 OS X 和 Windows 中运行,因此解决方案可能会有所不同。如有必要,我可以上传我准备的一个最小工作示例。