Cite original year using biblatex

Just a brief note for those who want to include the original year of publication in a citation when using biblatex (e.g. “Weber (1922/1978)” instead of “Weber (1978)”) .

If you are using one of the author-year styles (or author-year-icomp-tt) and biblatex version 0.8 you could easliy do this by including the following in your biblatex.cfg file:

\renewbibmacro*{cite:year+labelyear}{%
\printtext[bibhyperref]{%
\iffieldundef{origyear}{}{\printfield{origyear}\addslash}%   <--- added
\printfield{year}%
\printfield{labelyear}}}

\renewbibmacro*{year+labelyear}{%
\iffieldundef{year}
{}
{\printtext[parens]{%
\iffieldundef{origyear}{}{\printfield{origyear}\addslash}%   <--- added
\printfield{year}%
\printfield{labelyear}}}}

But things have changed with biblatex 0.9 so that this no longer works. It took me a while to figure out why and so I publish my solution here since I could not find it anywhere on the net.

The reason is that the macros which print the year (in the citation and in the bibliography) have changed. So the additional line that inserts the original year (see above) has to be inserted into two different macros:


\renewbibmacro*{cite:labelyear+extrayear}{%
\iffieldundef{labelyear}
{}
{\printtext[bibhyperref]{%
\iffieldundef{origyear}{}{\printfield{origyear}\addslash}%   <--- added
\printfield{labelyear}%
\printfield{extrayear}}}}

\renewbibmacro*{date+extrayear}{%
\iffieldundef{year}
{}
{\printtext[parens]{%
\iffieldundef{origyear}{}{\printfield{origyear}\addslash}%  <--- added
\printdateextra}}}

Just add this into your biblatex.cfg file and look at the results. – If the original year still doesn’t show up, then you probably have to update your bib-file: the field origyear is no longer supported by biblatex (though it is still used internally). It is now called origdate (see release notes).  So what you have to do is simply replace all instances of “origyear” by “origdate”. Now it should work fine!

P.S. If you want to sort the titles in the bibliography according to the original year rather than the year of the used edition, just add sortyear = {1922} to each entry in your bib-file which has an origdate entry (of course “1922″ stands for whatever the original year is).

About these ads

One Response to Cite original year using biblatex

  1. [...] Der folgende Artikel bei software for scholars war mir für meine Hausarbeit eine große Hilfe, auch wenn ich allgemeine Konfiguratonsdateien wie die biblatex.cfg ungern ändere: Just a brief note for those who want to include the original year of publication in a citation when using biblatex (e.g. „Weber (1922/1978)“ instead of „Weber (1978)“) . If you are using one of the author-year styles (or author-year-icomp-tt) and biblatex version 0.8 you could easliy do this by including the following in your biblatex.cfg file: … Read More [...]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: