生成BBL文件而没有其他中间文件?

生成BBL文件而没有其他中间文件?

我使用 Texpad,排版时隐藏中间文件。由于我使用 BibTeX 来引用参考文献,因此我需要定期访问 BBL 文件,例如创建一个包含参考文献且独立于主文档的文件。

我通常这样做的方式非常烦人:我选择显示中间文件,然后再次排版,然后复制 BBL 文件的内容,然后再次删除所有中间文件。

我的问题是,是否有更简单的方法可以做到这一点?例如,是否可以从终端生成只是BBL 文件,没有任何其他中间文件?

答案1

当您使用例如启动BibTeX时bibtex document,程序不会查找document.tex而是搜索document.aux并读取它:

  1. .bib文件列表
  2. .bst使用的样式
  3. 你的``\cite``。

因此.aux文件是必需的。除此之外,它还会生成预期的document.bbl且唯一的一个附加“中间”文件:BibTeX 日志文件document.blg

偏离主题Texpad,但对其他人可能有用: MiKTeXpdftex 有一个选项--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

相关内容