I've heard of many different bibliography-related packages/platforms/?. What's the difference between the following, which is good for what tasks, advantages/disadvantages, which one is the most modern, etc.:
- BibTeX
biblatex
natbib
- Biber
- (If I missed anything important, please just add it here or answer about it)
Background
So far I've just typed in my citations (i.e. their sources) and lists of references manually (as regular footnotes/text) whichever way I needed them, but I'm considering switching to something more TeX-y. I usually use different literature for each paper, and I often have to switch between radically different styles for citations and the list of references, so flexibility is necessary. I'm trying to find out which platform would be the best for me, a hint at good introductory reading for whatever you recommend would be more than welcome.
Best Answer
(The following is an expansion of the biblatex tag entry, which I helped to write).
Some terminology
It's first off important to realize that the term BibTeX is often used to refer to various distinct things, and this can lead to some confusion. For example we typically tell new users to "use bibtex for your bibliography" which usually just means don't do it by hand, but instead store your references in a
.bib
file and use some automatic method of formatting citations and bibliography. Additionally, we also talk about a "bibtex file" (i.e. a.bib
file). Both of these uses are in reality quite vague, and part of the reason for this question is to distinguish among them more carefully.So in this question we will use the following terms:
bibtex
andbiber
are external programs that process bibliography information and act (roughly) as the interface between your.bib
file and your LaTeX document.natbib
andbiblatex
are LaTeX packages that format citations and bibliographies;natbib
works only withbibtex
, whilebiblatex
(at the moment) works with bothbibtex
andbiber
.)For those users who already use
natbib
, and are contemplating a switch, the following question will also be useful: What to do to switch to biblatex?.natbib
The
natbib
package has been around for quite a long time, and although still maintained, it is fair to say that it isn't being further developed. It is still widely used, and very reliable.Advantages
.bst
files which conform to many journals and publishers in the sciences.natbib
package has written a package calledcustom-bib
, which provides a utility calledmakebst
. This utility is menu-driven and allows you to interactively generate custom bibliography style files. Bibliography style files generated withmakebst
are very stable and (unsurprisingly, given the authorship) work very well withnatbib
's citation commands.Disadvantages
bibtex
, its interface requires.bst
files, which use a postfix language that is difficult to program in for most people. This means that making even minor modifications to an existing style to meet particular formatting requirements can be quite difficult.bibtex
as a backend, it inherits all of its disadvantages (see below).You might want to use
natbib
if:.bst
file already created for the specific journal you submitting a paper to;latex
submissions and requires or expectsnatbib
. Such journal may not acceptbiblatex
for the bibliography.biblatex
The
biblatex
package is being actively developed in conjunction with thebiber
backend.Advantages
Humanities style citations
biblatex
is almost required if you need any of the following:humanities style citations (author-title type schemes; citations using ibid etc.)
a much wider array of BibTeX database fields (again, especially suited for the humanities).
Unicode encoded
.bib
files (usable with thebiber
replacement forbibtex
).fine control over your own bibliography styles using regular
latex
methods.Author-year and numeric citations
biblatex
provides the same functionality asnatbib
for author-year and numeric citations common in the natural and social sciences. It can therefore be used as a replacement fornatbib
.General considerations
All formatting of citations and bibliography entries is done using regular LaTeX macros. As a consequence, regular LaTeX users are able to make modifications to existing styles quite easily.
biblatex
also has built in hooks for most kinds of modifications.Even though
biblatex
can usebibtex
as a backend, it does no formatting with.bst
files, but only usesbibtex
for sorting.Multiple bibliographies and categorized bibliographies are supported directly.
Available biblatex styles
In addition to the standard styles that are documented in the
biblatex
manual, CTAN currently lists the following extra style packages forbiblatex
:biblatex-abnt
ABNT (Brazilian Association of Technical Norms) style for biblatex.biblatex-apa
APA style for biblatex.biblatex-chem
Chemistry styles for biblatex.biblatex-chicago
Chicago style files for biblatex.biblatex-dw
Humanities styles for biblatex.biblatex-historian
A Biblatex style based on Turabian.biblatex-ieee
IEEE style files for biblatex.biblatex-jura
Biblatex stylefiles for German legal literature.biblatex-mla
MLA style files for biblatex.biblatex-nature
Biblatex support for the journal Nature.biblatex-philosophy
Styles for using biblatex for work in philosophy.biblatex-science
Biblatex support for the journal Science.Many new journal styles are being created for
biblatex
. Given the flexibility of adaptingbiblatex
styles, in many cases it may be quite easy to modify an existing style to accommodate a particular journal's style.Disadvantages
biblatex
if they have a house style with its ownnatbib
compatible.bst
file.biblatex
into a document (as many publishers require.) See Biblatex: submitting to a journal.bibtex vs. biber
Many of the disadvantages of
natbib
are a consequence of its reliance onbibtex
for formatting. This is the main (huge) distinction between thenatbib
andbiblatex
, as the latter, even when it usesbibtex
as the backend, doesn't use it for formatting, only for sorting. However,biblatex
is also designed to usebiber
, a new backend that adds further functionality tobiblatex
.bibtex
Advantages
Disadvantages
natbib
; not an issue if usingbiblatex
)biber
Advantages
.bib
file..bib
files.Disadvantages
biblatex
, not withnatbib
.bibtex
it is a lot slower. See Why is biber so slow? for discussion.Differences between
.bib
filesAs noted at the beginning of this answer, we tend to use the term
bibtex
file to refer to the.bib
file itself, which leads to the assumption that tools that manipulate.bib
files are only available tobibtex
users and notbiber
users. This is simply not the case: tools designed for manipulating.bib
files such as reference managers and various.bib
file generation/manipulation tools can be used.It is the case, however, that as you transition to using all the features of
biber
/biblatex
you may find certain differences in the.bib
files become more relevant.A separate question Compatibility of bibtex and biblatex bibliography files? explores some of the differences between traditional
bibtex
.bib
files and.bib
files that have been adapted for use withbiber
andbiblatex
.