3

I'm using biblatex to reference a reprint. I need to change the following in my MWE: i) the backref showing the page number should be at the very end (after the period) ii) the year of the reprinted book (test2) should go after the title and between parenthesis. So I would like to achieve the following:

Foo, John (2012), Test 1. Helsinki:Blah Press. Rpt. as Test 2 (2013). Chicago: Baz Press. (cit. on p. 1)

Here is the MWE:

\documentclass{article}

\usepackage[style=authoryear-comp,backend=biber,backref=true]{biblatex}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@Book{foo12,
  author      = {John Foo},
  title       = {Test 1},
  year        = {2012},
  publisher   = {Blah Press},
  address     = {Helsinki},
  related     = {foo13},
  relatedtype = {reprintas}
 }
@Book{foo13,
  author    = {John Foo},
  title     = {Test 2},
  year      = {2013},
  publisher = {Baz Press},
  address   = {Chicago},
 }
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}
\textcite{foo12}
\printbibliography
\end{document}

1 Answer 1

3

Here is a solution were first we create a copy of pageref bib macro and we call it mypageref (copied from biblatex.def)

\newbibmacro*{mypageref}{%
  \iflistundef{pageref}
    {}
    {\printtext[parens]{%
       \ifnumgreater{\value{pageref}}{1}
         {\bibstring{backrefpages}\ppspace}
         {\bibstring{backrefpage}\ppspace}%
       \printlist[pageref][-\value{listtotal}]{pageref}}}}

then we empty the definition of pageref

\renewbibmacro{pageref}{}

and finally, we instruct to use the new definition at the end of a reference using the finentry hook.

\renewbibmacro{finentry}{\setunit{\bibpagerefpunct}\newblock\usebibmacro{mypageref}\finentry}

To change the appearance of the reprint one has to provides a definition of related:reprints macro. Here is a simplified version of it (it does not check if the authors are the same, it does not include information about eventual editors, ...)

\newbibmacro{related:reprintas}[1]{
  \entrydata{#1}{
    \printfield{title}
    \mkbibparens{\printdate}
    \setunit{\adddot\addspace}
    \clearfield{date}
    \usebibmacro{publisher+location+date}
  }
}

enter image description here

PS Moving the back ref after the reprint makes ambiguous whether the original work or the reprint is cited at the pages given the backref.

2
  • Thank you! Can you place the year of the reprinted book between parenthesis and after the title. Like this: "Test 2 (2013)"?
    – petobens
    Commented Nov 18, 2013 at 22:09
  • Thanks again! I changed the question following your suggestion.
    – petobens
    Commented Nov 18, 2013 at 23:56

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .