![bibtex 与 biber 以及 biblatex 与 natbib 的比较](https://linux22.com/image/239740/bibtex%20%E4%B8%8E%20biber%20%E4%BB%A5%E5%8F%8A%20biblatex%20%E4%B8%8E%20natbib%20%E7%9A%84%E6%AF%94%E8%BE%83.png)
答案1
(以下是比布拉特克斯标签条目(由我帮忙编写)。
一些术语
首先,重要的是要意识到 BibTeX 一词通常用于指代各种不同的东西,这可能会导致一些混淆。例如,我们通常告诉新用户“使用 bibtex 来编写参考书目”,这通常只是意味着不要手动执行,而是将参考文献存储在文件中.bib
,并使用某种自动方法来格式化引文和参考书目。此外,我们还讨论了“bibtex 文件”(即文件.bib
)。这两种用法实际上都很模糊,提出这个问题的部分原因是为了更仔细地区分它们。
因此在这个问题中我们将使用以下术语:
bibtex
是处理参考书目信息的外部程序,并(大致)充当文件和 LaTeX 文档biber
之间的接口。.bib
natbib
是biblatex
格式化引文和参考书目的 LaTeX 包;natbib
作品仅有的使用bibtex
,而biblatex
(目前)可以与bibtex
和一起使用biber
。)
对于已经在使用并正在考虑更换的用户natbib
,以下问题也将很有用:要切换到 biblatex 该怎么做?。
纳特比布
这个natbib
软件包已经存在了很长一段时间,虽然仍在维护,但可以说它没有得到进一步开发。它仍然被广泛使用,而且非常可靠。
优点
- 它拥有广泛的已开发
.bst
文件,符合许多科学期刊和出版商的要求。 - 该软件包的作者
natbib
编写了一个名为 的软件包custom-bib
,它提供了一个名为 的实用程序makebst
。此实用程序是菜单驱动的,允许您以交互方式生成自定义书目样式文件。用 生成的书目样式文件非常稳定,并且(考虑到作者身份,这并不奇怪)与的引用命令makebst
配合得很好。natbib
- 生成的参考书目代码可以直接粘贴到文档中(期刊投稿通常需要)。请参阅Biblatex:向期刊投稿。
缺点
- 由于它依赖于
bibtex
,因此其界面需要使用.bst
后缀语言的文件,而后缀语言对于大多数人来说都很难编程。这意味着,即使对现有样式进行微小的修改以满足特定的格式要求也可能非常困难。 - 它是专门为自然科学和社会科学中常见的作者-年份和(在较小程度上)数字引用样式而设计的。它是不是能够使用传统的人文风格引用格式,如作者/标题或脚注风格的引用和参考书目(包括各种同上追踪)。
- 单个文档中的多个书目或分类的书目需要额外的包。
- 通过依赖
bibtex
作为后端,它继承了其所有缺点(见下文)。
您可能想要使用natbib
if:
.bst
已经为您提交论文的特定期刊创建了一个 文件;- 期刊接受
latex
投稿并要求或期望natbib
。此类期刊可能不接受biblatex
参考书目。
比布拉特克斯
该biblatex
软件包正在与biber
后端一起积极开发。
优点
人文风格引文
biblatex
如果您有以下任何需要,则几乎是必需的:人文风格引用(作者-标题类型方案;使用同上ETC。)
更广泛的 BibTeX 数据库字段(同样特别适合人文学科)。
Unicode 编码
.bib
文件(可替换使用biber
)bibtex
。使用常规方法精细控制您自己的书目风格
latex
。
作者年份和数字引用
biblatex
natbib
提供与自然科学和社会科学中常见的作者年份和数字引文相同的功能。因此,它可以用作 的替代品natbib
。
一般注意事项
所有引文和参考书目条目的格式都是使用常规 LaTeX 宏完成的。因此,常规 LaTeX 用户能够非常轻松地修改现有样式。
biblatex
还为大多数类型的修改提供了内置挂钩。虽然
biblatex
可以用作bibtex
后端,但它不对.bst
文件进行格式化,而仅用于bibtex
排序。直接支持多种书目和分类书目。
可用的 biblatex 样式
除了手册中记录的标准样式外biblatex
,氯化三乙胺目前列出了以下额外的样式包biblatex
:
biblatex-abnt
ABNT(巴西技术规范协会)biblatex 风格。biblatex-apa
biblatex 的 APA 样式。biblatex-chem
biblatex 的化学风格。biblatex-chicago
biblatex 的芝加哥风格文件。biblatex-dw
biblatex 的人文风格。biblatex-historian
基于 Turabian 的 Biblatex 风格。biblatex-ieee
biblatex 的 IEEE 样式文件。biblatex-jura
Biblatex 德国法律文献样式文件。biblatex-mla
biblatex 的 MLA 样式文件。biblatex-nature
Biblatex 支持《Nature》杂志。biblatex-philosophy
使用 biblatex 进行哲学工作的风格。biblatex-science
Biblatex 支持《Science》期刊。
正在为 创造许多新的期刊样式biblatex
。鉴于调整样式的灵活性biblatex
,在许多情况下,修改现有样式以适应特定期刊的样式可能相当容易。
缺点
biblatex
如果期刊和出版商有自己natbib
兼容文件的版本风格,那么他们可能不会接受使用这些版本的文档.bst
。- 将作者创建的参考书目纳入文档并非易事
biblatex
(许多出版商都要求这样做)。请参阅Biblatex:向期刊投稿。
bibtex 与 biber
的许多缺点natbib
都是由于它依赖于 进行格式化而造成的。这是和bibtex
之间的主要(巨大)区别,因为后者即使用作后端,也不会使用它进行格式化,而只用于排序。但是,也设计为使用,这是一种新的后端,可为 增加更多功能。natbib
biblatex
bibtex
biblatex
biber
biblatex
比博特
优点
- 非常稳定并且被广泛使用
缺点
- 如果不学习其他语言,就很难修改参考书目样式(如果使用
natbib
; 如果使用 则不是问题biblatex
) - 跨语言支持和非欧洲脚本支持非常差。最好避免使用非 ASCII 字符。请参阅如何在参考书目中书写“ä”及其他变音符号和重音字母以获得有关如何书写带重音和变音符号的字符的指导。
比伯
优点
- 能够处理
.bib
文件中更多条目和字段类型。 - 能够处理UTF-8编码的
.bib
文件。 - 更好的分类控制。
缺点
- 仅适用于
biblatex
,不适用于natbib
。 - 因为它能做的事情比
bibtex
它慢得多。参见为什么 biber 这么慢?以供讨论。
.bib
文件之间的差异
正如本回答开头所述,我们倾向于使用术语“bibtex
文件”来指代.bib
文件本身,这导致人们认为操作.bib
文件的工具仅供bibtex
用户使用,而不是biber
用户使用。事实并非如此:可以使用专为操作.bib
文件而设计的工具,例如参考管理器和各种.bib
文件生成/操作工具。
然而,当您开始使用biber
/的所有功能时biblatex
,您可能会发现文件中的某些差异.bib
变得更加重要。
另一个问题bibtex 和 biblatex 书目文件兼容性?bibtex
.bib
探讨了传统文件与.bib
已改编为biber
和使用的文件之间的一些差异biblatex
。
答案2
以下是基于以下更直观的方法艾伦的回答很棒。这可能会以更直观(且“针对傻瓜”)的方式完善他的解释。
要在 LaTeX 文档中使用数据库(即文件.bib
),您需要一个外部程序来处理它 - 即将.bib
文件转换为.tex
可理解的文件。
因此,您可以使用biber
或BibTeX
。它们都使用您的.bib
文件作为输入,即使它的某些功能/字段可能biber
仅适用于(例如utf8
编码、字段crossref
、,urldate
...)。
要显示参考书目并使用引用命令,您需要使用 LaTeX 包。您可以使用biblatex
或natbib
。对于后者,您的.bib
文件需要用 进行处理BibTeX
。但是如果您使用biblatex
,您可以使用或者使用来处理您的.bib
文件。biber
BibTeX
请注意,正如 PLK 在bibtex 和 biblatex 书目文件兼容性?,biber
支持其他数据库文件格式.bib
(例如 Zotero、Mendeley 等的原生集成)。
答案3
答案4
BibLatex (Biber) 与 Bibtex 相比的其他缺点
我最近转向使用 biblatex,因为 bibtex 与 crossref 相比存在一些缺陷。不幸的是,BibLatex 也有自己的缺陷。
只有年份才会有链接(为什么 \cite 参考中只有年份作为链接(biblatex-apa 和 hyperref:右括号不是 \textcite 链接的一部分;为什么 \cite 参考文献中只有年份作为链接)
一些最受欢迎的风格,例如哈佛风格,在 BibLatex 中并不原生可用(使用 Biblatex 的哈佛参考文献。如果你想获得类似这样的格式,你需要做大量的手动工作艾格森。
Biber,biblatex 的后端处理器速度要慢得多(为什么 biber 这么慢?)
许多期刊不支持 Biblatex。
我必须使用更多扩展文本,例如\文本代替\citet。其他默认命令也进行了相同的扩展。文本越短越好。此外,拼写检查器(即使是支持 latex 的拼写检查器)也会将这些额外的命令选为拼写错误。这是另一个烦恼。
我的最终结论是,如果你对 bibtex (natbib) 的问题不大,那就坚持使用它。它速度更快;而且提交标准。
我现在回到了bibtex。