Parentheses around location and date biblatex

biblatex

I require a certain formatting for my referencing. Here is what I need:

Citations are footnotes, parentheses around location and date. Bibliography should not have the parentheses around location and date; and the publisher should be before the location, separated with a comma.

First occurrence:

John Doe, A Nice Book (London, 2022), p. 12.

Second occurence:

Doe, A Nice Book, pp. 13 – 15.

Bibliography:

John Doe, A Nice Book, Random House, London, 2022.

The footnotes could be easily done via autocite=footnote and \let\cite\autocite, and the commas could be done via \renewcommand*{\newunitpunct}{\addcomma\space}.

Removing the publisher from citations could be done via \AtEveryCitekey{\clearlist{publisher}}.

However, I have no idea how to do the parentheses. Whilst it is similar to the style produced by using biblatex-chicago, it is also different in many ways, such as the bibliography entry.

Any help?

MWE:

\documentclass{article}

\begin{filecontents}{hi.bib}
@book{eg,
  author = {John Doe},
  title = {A Nice Book},
  location = {London},
  date = {2022},
  publisher = {Random House}
}
\end{filecontents}

\usepackage[style = verbose, autocite = footnote]{biblatex}
\usepackage{csquotes}
\addbibresource{hi.bib}

\let\cite\autocite
\let\cites\autocite
\renewcommand*{\newunitpunct}{\addcomma\space}
\AtEveryCitekey{\clearlist{publisher}}

\begin{document}
First occurence \cite[12]{eg}, second occurence \cite[13-15]{eg}.
\printbibliography
\end{document}

Best Answer

verbose citations with styles that subtly differ between citations and the bibliography are tricky to pull off.

The "best approach" will depend on the number and "size" of differences between the desired output in the citation and the bibliography.

If there are only a few small-ish differences, I would probably try to redefine the relevant bibmacros in the <precode> argument of \usedriver. (\usedriver is the command that typesets the full bibliography entry in the first citation.) This approach gets more tricky if you have many or very large differences. In that case it might be more appropriate to define different bibliography drivers for the citation and the bibliography (I think this is what biblatex-chicago and biblatex-sbl do, see also Customize verbose citation style and Switching driver after first citation)

\documentclass[english]{article}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=verbose, autocite=footnote]{biblatex}

\renewcommand*{\newunitpunct}{\addcomma\space}

\newcommand*{\locdatedelim}{\newunitpunct}
\newcommand*{\publocdelim}{\newunitpunct}

\newbibmacro*{pubinstorg+location+date}[1]{%
  \printlist{#1}%
  \setunit{\publocdelim}%
  \printlist{location}%
  \setunit*{\locdatedelim}%
  \usebibmacro{date}%
  \newunit}

\renewbibmacro*{publisher+location+date}{%
  \usebibmacro{pubinstorg+location+date}{publisher}}

\renewbibmacro*{institution+location+date}{%
  \usebibmacro{pubinstorg+location+date}{institution}}

\renewbibmacro*{organization+location+date}{%
  \usebibmacro{pubinstorg+location+date}{organization}}

\renewbibmacro*{location+date}{%
  \printlist{location}%
  \setunit*{\locdatedelim}%
  \usebibmacro{date}%
  \newunit}

\newbibmacro*{cite:location+date}{%
  \ifboolexpr{
        test {\iflistundef{location}}
    and test {\iffieldundef{year}}}
    {}
    {\setunit{\addspace}%
     \printtext[parens]{%
       \printlist{location}%
       \setunit*{\locdatedelim}%
       \usebibmacro{date}%
       \newunit}}}

\renewbibmacro*{cite:full}{%
  \usebibmacro{cite:full:citepages}%
  \printtext[bibhypertarget]{%
    \usedriver
      {\DeclareNameAlias{sortname}{default}%
       \letbibmacro{location+date}{cite:location+date}%
       \letbibmacro{publisher+location+date}{cite:location+date}}
      {\thefield{entrytype}}}%
  \usebibmacro{shorthandintro}}


\begin{filecontents}{\jobname.bib}
@book{eg,
  author    = {John Doe},
  title     = {A Nice Book},
  location  = {London},
  date      = {2022},
  publisher = {Random House}
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
First occurence \autocite[12]{eg},
second occurence \autocite[13-15]{eg}.
\printbibliography
\end{document}

Citation

John Doe, A Nice Book (London, 2022), p. 12.

Bibliography

Doe, John, A Nice Book, Random House, London, 2022.

Related Question