0

For a research I have to use a precise bibliographic style, which forces me to write after the last and current year of publication of the book the first year of publication in square brackets and the number of editions as superscript. So, as an example,

A. Gomme, An Historical Commentary on Thucydides, London: OUP Oxford, 1972 [19564]

That means that the last edition of the book is from 1972, the first edition has been published in 1956 and, since then, 4 more editions have been published.
My original idea was to simply write in the .bib file year={{1972 [1956^4]}}. The problem is, that when i cite the book I want that just the current year is printed (so, in this example, the result should just be Gomme 1972, and NOT Gomme 1972 [1956⁴]
So that does not work. Any ideas?


MWEB:

\documentclass{article}

\usepackage[
    citestyle=authoryear-ibid,
    bibstyle=authortitle,
]{biblatex}
\addbibresource{bibliography.bib}

\begin{filecontents}{bibliography.bib}
@book{Gomme1956,
  title={An Historical Commentary on Thucydides},
  author={Gomme, A.},
  year={1972},
  publisher={OUP Oxford},
  address={London},
  edition={2},
  origdate={1956}
}
\end{filecontents}
  
\begin{document}

\cite{Gomme1956}

\printbibliography
         
\end{document}

EDIT: As Seamus suggests, I should work with origdate and edition fields. However, I don't know how to stylize them in the proper way, so that the result is 1972 [1956⁴].

11
  • biblatex defines origdate and bibtex has an edition field. So I would recommend using them, and then defining the citation style using those elements.
    – Seamus
    May 15, 2021 at 10:59
  • Well, the problem is that there is no style/package that formats them as I wish, and I don't know how to stylizing them.
    – Urel
    May 15, 2021 at 11:02
  • Semantically, origdate and edition are definitely the correct fields here. But it is very possible that biblatex-chicago does not immediately produce the output you hope for. The thing with biblatex-chicago is that it is a specialised style that tries to implement CMoS recommendations as closely as possible in LaTeX. That means it has to use some very complex code and is sometimes a pain to modify. (I suspect this is the case here, as the date code in biblatex-chicago is quite complex.)
    – moewe
    May 15, 2021 at 11:34
  • However, I am using the biblatex package with style=chicago-authordate, and not the biblatex-chicago package
    – Urel
    May 15, 2021 at 11:39
  • A MWEB (minimal working example with Bibliography) would be helpful: tex.meta.stackexchange.com/a/4408/231952. I have tried with \usepackage[style=chicago-authordate]{biblatex} but \textcite does not print the date field. Another thing: you have shown an authortitle-style entry while the citation (Gomme 1972) is in authoryear format. Is that what you want? Are you mixing two different styles?
    – Ivan
    May 15, 2021 at 11:48

1 Answer 1

3

Here is a MWE to start with. I have defined the new field totaleditions which is mapped to usera to be used inside the new macro totaleditions. This macro is used at the end of the publisher+location+date macro if the origdate field is not empty.

\documentclass{article}

\usepackage[
    bibstyle=authortitle,
    citestyle=authoryear-ibid,
]{biblatex}
\addbibresource{bibliography.bib}

\begin{filecontents}[overwrite]{bibliography.bib}
@book{Gomme1956,
  title={An Historical Commentary on Thucydides},
  author={Gomme, A.},
  date={1972},
  publisher={OUP Oxford},
  location={London},
  totaleditions={4},
  origdate={1956}
}
\end{filecontents}
   
\DeclareSourcemap{
  \maps[datatype=bibtex]{
   \map{
     \step[fieldsource=totaleditions, fieldtarget=usera]
    }  
  }
}

\newbibmacro*{totaleditions}{%
\iffieldundef{origyear}{}{%
  \printtext[brackets]{\printfield{origyear}%
  \textsuperscript{\printfield{usera}}}
 }
}

\renewbibmacro*{publisher+location+date}{%
  \printlist{location}%
  \iflistundef{publisher}
    {\setunit*{\addcomma\space}}
    {\setunit*{\addcolon\space}}%
  \printlist{publisher}%
  \setunit*{\addcomma\space}%
  \usebibmacro{date}%
  \setunit*{\addspace}%
  \usebibmacro{totaleditions}%
  \newunit}
  
\begin{document}

\cite{Gomme1956}

\printbibliography
         
\end{document}

enter image description here

You must log in to answer this question.

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