我使用 Texpad,排版时隐藏中间文件。由于我使用 BibTeX 来引用参考文献,因此我需要定期访问 BBL 文件,例如创建一个包含参考文献且独立于主文档的文件。
我通常这样做的方式非常烦人:我选择显示中间文件,然后再次排版,然后复制 BBL 文件的内容,然后再次删除所有中间文件。
我的问题是,是否有更简单的方法可以做到这一点?例如,是否可以从终端生成只是BBL 文件,没有任何其他中间文件?
答案1
当您使用例如启动BibTeX时bibtex document
,程序不会查找document.tex
而是搜索document.aux
并读取它:
.bib
文件列表.bst
使用的样式- 你的``\cite``。
因此.aux
文件是必需的。除此之外,它还会生成预期的document.bbl
且唯一的一个附加“中间”文件:BibTeX 日志文件document.blg
。
偏离主题Texpad
,但对其他人可能有用:
MiKTeX
pdftex 有一个选项--aux-directory
(例如使用--aux-directory=.\build
),其中中间文件(包括.aux
文件)存储在build
文件夹中,这更通用。但是,常规的 BibTeX 运行不再可能:必须使用批处理(或 shell)脚本将文件复制.aux
到工作目录或将.bib
文件复制到 build
目录。这是bibtex-build
我在 Windows 下使用的批处理文件(由其他人转换为 Mac OS X 用户的 Apple 脚本)
@echo off
SETLOCAL ENABLEEXTENSIONS
copy *.bib build
cd build
for %%f in (*.aux) do (
bibtex %%~nf
)
echo error level is %ERRORLEVEL%
if %ERRORLEVEL% EQU 0 (
goto fin
) ELSE (
pause
)
:fin
cd ..
循环*.aux
可能看起来是多余的,但如果使用为单个文档multibib
生成多个循环的包或类似包,则需要循环。.aux