Getting origyear to work in biblatex

I have just switched from natbib to biblatex, because I wanted to add translator entries to my bibliography. I am now trying to get origyear to work. Before my entry was like this:

@book{schaeffer1977traite,
AUTHOR      = "Schaeffer, Pierre",
TITLE       = {{Trait{\'e} des objets musicaux: essai interdisciplines}},
YEAR        = {1977 (1966)},
ADDRESS     = "Paris",
PUBLISHER   = {{Editions du Seuil}}
}


but this is nasty and produces glitches with the closing parenthesis. So I tried instead

    YEAR        = {1977},
ORIGYEAR    = {1966},


but the original year just doesn't show up. My import looks like this:

\usepackage[natbib=true,style=verbose-ibid]{biblatex}


I tried to simple create a biblatex.cfg file according to this article (biblatex says it's version 0.99d (TeX Live 2010).

But that creates an error, probably because I don't use the same bibliography style:

LaTeX error: \abx@macro@cite:labelyear+extrayear undefined.


Any help getting this work is appreciated.

-
You should change 'year' and 'origyear' to 'date' and 'origdate'. Note also that not all styles will make use of the 'origdate' field. Also the '0.99d' is /not/ the version of biblatex, but of bibtex, and the link you refer to is for an outdated version of biblatex anyway, so the advice there may not work with current versions. So: first update your biblatex (and related packages); then look here to get started on your own modifications. – jon May 15 '12 at 1:55

1 Answer

According to section 2.2.2 of the biblatex manual, the origdate field is "[n]ot used by the standard bibliography styles". In the following MWE, I have redefined the date bibmacro (as used by the verbose style family) so that it will also print the contents of the origdate field if this field is defined. Note that a more general solution (one that works, e.g., also for the authoryear style family) would involve additional modifications.

\documentclass{article}

\usepackage[style=verbose]{biblatex}

\renewbibmacro*{date}{%
\printdate
\iffieldundef{origyear}{%
}{%
\setunit*{\addspace}%
\printtext[parens]{\printorigdate}%
}%
}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@book{schaeffer1977traite,
author = "Schaeffer, Pierre",
title = {Trait{\'e} des objets musicaux: essai interdisciplines},
year = {1977},
origyear = {1966},
location = {Paris},
publisher = {Editions du Seuil},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\nocite{*}

\begin{document}

\printbibliography

\end{document}


-
 I still seem to have problems with an outdated biblatex version. I had to replace addbibresource with bibliography, but the original year is simply not printed :-( The machine is in mission-critical state, but I hope that I will be able at some point to update the biblatex and then hopefully all goes well... – Emit Taste Jul 5 '12 at 1:22