如何在 MiKTeX-TeXworks 中自动使用 biber

如何在 MiKTeX-TeXworks 中自动使用 biber

我有 MikTeX 2.9,32 位,Windows 7,所有最新更新都在那里。我正在使用 TeXworks ( ++ pdflatex) 。makeindexbibtex

当我使用biblatex带有选项的包时[backend=biber],我根本没有打印任何参考书目。如果我biber.exe手动运行我的文件,那么一切都会正常。

我的问题是:如何设置 TeXworks,以便biber.exe在需要时使用(即我希望有pdflatex++排版)?我没有找到有关此情况的任何手册。如果有这样的手册,有人可以指出我吗makeindexbiber

答案1

让我建议另一个工具。

每份文件都有自己的编译要求。正如您所写,您需要pdflatexmakeindexbiber。我推荐的工具允许在文件外设置编译tex。该工具名为阿拉拉

除了简短的在线介绍之外,作者 Paulo Cereda 还提供了完整的手册,可以在此处下载:github 上的 arara (下载部分)

arara提供并安装了一些预定义规则。根据您的要求,您可以按如下方式设置主 tex 文件头:

% arara: pdflatex: { draft: true }
% arara: makeindex: {  style: stylefile.ist }
% arara: biber
% arara: pdflatex: { synctex: true }
% arara: pdflatex: { synctex: true }

如果您只需要一个编译,例如 pdflatex,您可以使用先前的命令来评论其他作业!

% !arara: pdflatex: { draft: true }
% !arara: makeindex: {  style: stylefile.ist }
% !arara: biber
% !arara: pdflatex: { synctex: true }
% arara: pdflatex: { synctex: true }

不同的编译规则有更多的选项,可以轻松根据您的规范进行修改。

该工具在 TeXworks 中的集成和使用arara在手册的 4.1 节中进行了描述。

答案2

有点晚了,这个帖子之前已经提到过解决方案,但我遇到了同样的问题。在biberTeXworks 中使用 pdfLaTeX 的一个快速解决方案是使用批处理文件。

pdflatex+biber.bat在 MiKTeX 目录的子文件夹中创建文件/miktex/bin/,内容如下:

miktex-pdftex.exe -synctex=1 -undump=pdflatex “%1”
biber.exe“%2”
miktex-pdftex.exe -synctex=1 -undump=pdflatex “%1”

现在打开 TeXworks 的排版编辑器并添加一个新设置。为其命名(例如“pdfLatex+Biber”)并提供批处理文件的路径(.../miktex/bin/pdflatex+biber.bat)。添加两个参数:$fullname$basename

就是这样,对我来说效果很好,而且我认为该解决方案可以适用于其他情况,在这些情况下需要更多/其他程序参与排版过程。

答案3

pdflatex + makeindex + bibtex您描述的 -typesetting-configuration 中,TeXworks 依赖于texify。您可以告诉 texify 运行,biber而不是bibtex通过环境变量BIBTEX(texify 文档)。

通常,您可以在此处设置变量: Control Panel --> System --> Advanced system settings --> Advanced --> Environment Variables --> New。但是,我不建议这样做,因为它会破坏您可能与 bibtex 一起使用的任何旧项目。

相反,我建议设置一个批处理文件:

@set BIBTEX=biber
@texify %*

然后在 TeXworks 中设置新的排版。它应该获得与 -Typesettingpdflatex + makeindex + bibtex和 Batch-File 命令相同的参数。

但还有另一个警告:使用 texify 可能无法可靠地检测到 biber 更改内容后需要重新运行。如有疑问,您可以手动重新运行整个过程。还有这个解决方法这依赖于在你的主 TeX 文件中插入一些代码。

正如您所见,这似乎是相当实验性的,使用不同工具或编辑器的其他解决方案可能会更容易。

答案4

@benne08 解决方案在 texmf-local 中运行良好,正如 @speravir 所指示的那样,并且是我在所有来源中发现的最容易使用的选项。以下方法更明显,并且更易于设置一次性测试。

添加Biber使用|TeXworks|Edit>Preferences…>|[Typesetting]|查找.../miktex/bin/biber.exe

添加$basename为参数。如果您希望它以 utf8 编码输入和输出,您可以添加–U和(这些 utf8 参数我还没有亲自检查过)。–u

然后从排版栏运行各个步骤例如:PdfLaTex-> Biber-> 。PdfLaTex

相关内容