正如解释的那样这里(或者也可以这里), 包multibbl
允许通过以下方式构建多个书目
\usepackage{multibbl}
\newbibliography{oneb}
\newbibliography{twob}
...
为了使其工作,必须先运行latex
主文件,然后bibtex oneb
再bibtex twob
运行latex
主文件。在 TexWorks 处理工具中,BibteX
参数$basename
适用于主 tex 文件,而不适用于名称newbibliography
。此外,它也是如此,因为它集成在pdfLaTeX+MakeIndex+BibTeX
工具中。因此,必须bibtex
手动运行命令。
是否有某种方法可以添加一个新的处理工具并指定bibtex
必须应用于newbibliography
名称的工具?
我从上面的第一个链接复制了一个 MWE(如评论中所要求的)。让主 TeX 文件为test.tex
:
\documentclass{article}
\usepackage{multibbl}
\newbibliography{oneb}
\newbibliography{twob}
\begin{document}
Text
\nocite{oneb}{*}
\nocite{twob}{*}
\bibliographystyle{oneb}{plain}
\bibliography{oneb}{one}{First bib}
\bibliographystyle{twob}{alpha}
\bibliography{twob}{two}{Second bib}
\end{document}
让 bib 文件为one.bib
:
@Article{oneart,
author = {Author, O.},
title = {Title One},
journal = {One J.},
year = 2010
}
和two.bib
@Book{twobook,
author = {Author, Two},
title = {Book Two},
publisher = {Multi-publish},
year = 2005
}
所有内容都在同一个文件夹中,并且暂时还包含其他 TeX 和.bib
文件。
谢谢你!
答案1
看起来 multibbl 和 latexmk 配合得很好。我不使用 TeXWorks,但其他人应该能够告诉你如何在 TeXWorks 下设置 latexmk 处理。另一种方法是设置 arara 处理并告诉 arara 你需要做什么(作为文件中的特殊注释)。