25

I am making the switch to biblatex and I was wondering whether there are any disadvantages to using the natbib=true compatibility option.

I am sure we can all sympathise that journals will probably never make the switch to biblatex, so I think it would be wise to write my documents using the traditional natbib syntax which will allow me to transfer text directly from, say, my thesis to a paper I am writing up for Journal X.

But I would also like to know whether there are any disadvantages to using the compatibility option for the write up of my thesis. Will I end up sacrificing some super biblatex tricks that I am unaware of, or is natbib=true simply a series of macros that replace natbib commands with biblatex commands?

In case anyone needs to demonstrate something, here's a MWE:

\documentclass{article}

\begin{filecontents*}{bib.bib}
@article{citation,
  title     = {How To Live Underwater},
  author    = {Squarepants, SpongeBob},
  journal   = {Journal of Marine Biology},
  pages     = {1--8},
  year      = 2006,
  month     = jan,
}
\end{filecontents*}

\usepackage[style=authoryear,natbib=true]{biblatex}
\addbibresource{bib.bib}

\begin{document}
\noindent``How is babby formed?'' \parencite{citation} \\
``How is babby formed?'' \citep{citation}
\printbibliography
\end{document}
  • 1
    as far as I know, the natbib option with biblatex only provides the commands from natbib, the actual processing is done by biblatex and is not influenced by the option. – ArTourter Dec 10 '13 at 11:31
  • Yes, the processing is definitely done by the backend the user provides. But I was just wondering whether there are any disadvantages (e.g., reduced functionality) to just using the natbib commands. – sudosensei Dec 10 '13 at 11:38
  • 1
    Does section 3.7.9 natbib Compatibility Commands of the biblatex manual answer your question? – Torbjørn T. Dec 10 '13 at 12:17
  • @TorbjørnT. It does, but I wasn't entirely sure what was meant by this: "However, the compatibility style will adapt \nameyeardelim to match the default style of the natbib package.". Hence the question. It seems like there should be no issues. – sudosensei Dec 10 '13 at 12:58
  • 1
    \nameyeardelim is just whatever separates the author and the year in a citation, e.g. in (Author, 2014), \nameyeardelim is a comma followed by a space. Hence, it will change it to whatever is the natbib default. – Torbjørn T. Dec 10 '13 at 13:15
15

The natbib option for biblatex causes the blx-natbib.def file to be loaded and not much else. There may be some styles that do different things depending on if the natbib option has been used, but the authoryear style does not seem to care. The blx-natbib.def file defines a handful of macros to recreate natbib citation commands, but it does not disable any biblatex functionality.

In regards to the comment about \nameyeardelim, one of the first things blx-natbib.def does is

\renewcommand*{\nameyeardelim}{\addcomma\space}

You can undo this after loading biblatex with

\renewcommand*{\nameyeardelim}{\addspace}

In newer versions of biblatex (>= 3.4) you could use

\DeclareDelimFormat{nameyeardelim}{\addspace}

although you will get a different typeset result if you then switch to bibtex and natbib.

  • It may be worthy of note that the handling of the starred form of the citation commands differ between the biblatex-name and the natbib-name. The natbib names also try to reproduce the natbib behaviour for the star. Compare \citep{aksin} \citep*{aksin} \parencite{aksin} \parencite*{aksin} when you cite aksin from biblatex-examples.bib. That is just to say that contrary to what one might be inclined to think \citep is not exactly just a short name for \parencite. – moewe Feb 16 at 7:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.