3

The Chicago Manual of Style recommends for its author-date style that only the page number be cited in parenthesis when references to the same work are repeated in the same paragraph. biblatex-chicago follows this to an extent. As mentioned in the manual (p. 122), it resets the tracker at page breaks and recommends using biblatex's \citereset command to manually achieve the desired behavior. Is there a way to automate this so that the tracker resets after every section break and at environment boundaries (such as blockquotes for example), or even, as it would be more compliant with CMoS, after every paragraph break?

BTW, the manual does state that the package "offers automatic resetting on part, chapter, section, and subsection boundaries" (p. 122) however I do not get that behavior with the following MWE:

% !TEX TS-program = xelatexmk
\documentclass{report}

\usepackage{filecontents}
\begin{filecontents}{bib.bib}
@article{citethis,
    Author = {Author, Anton},
    Journal = {Journal},
    Title = {The Article},
    Year = 2019}}
\end{filecontents}

\usepackage[authordate, backend=biber]{biblatex-chicago}
\addbibresource{bib.bib}

\begin{document}
This is some text with a citation \autocite[54]{citethis} and some more text and another citation of the same reference \autocite[56]{citethis}. 

\section{A section title}
After a section break the same reference is cited again % \citereset 
\autocite[57]{citethis}.

\begin{quote}
And this is a block quote, yet again from the same author.  A very popular author indeed. % \citereset 
\autocite[58]{citethis}
\end{quote}

More text to add.  And after the block quote the same reference is cited again %\citereset 
\autocite[59]{citethis}. And again \autocite[60]{citethis}.

And after a paragraph break again \autocite[61]{citethis}.

\end{document}

So essentially, the citations with postnote 57, 58, and 59, should be printed in full (after environment boundary and after section break).

Ideally, citation with postnote 61 should be printed in full too, to be completely in line with CMoS, however, it seems that that is likely more complex to achieve, so I'd already be happy with a solution to the former. (This then of course would obviate a separate solution for the previous cases, since environment and section boundaries always also include a paragraph break.)

1 Answer 1

4

biblatex has the option citereset that automatically issues \citereset at a sectioning command. I guess that is what the biblatex-chicago manual refers to in the quoted passage. The following values are supported

  • none – the feature is turned off
  • partbiblatex executes \citereset at every \part command
  • chapter/chapter+ (only if the document class supports \chapters) – biblatex executes \citereset at every \chapter command
  • section/section+biblatex executes \citereset at every \section command
  • subsection/subsection+biblatex executes \citereset at every \subsection command

The + versions were introduced in biblatex 3.12 (https://github.com/plk/biblatex/issues/773, https://github.com/plk/biblatex/pull/809) and reset the trackers on all higher levels as well. (The documentation hadn't been updated all the way to reflect that properly, this has been fixed for biblatex 3.13 in https://github.com/plk/biblatex/commit/1d35a968c61a6459b00cda73d5db7ff4a3bb29b6.)

So

citereset=subsection+,

might be worth a try. A per-paragraph reset would be nice, but to this day no suitable LaTeX hook could be found for that, cf. https://github.com/plk/biblatex/issues/715. Suggestions are welcome.

biblatex does not automatically patch all environments to issue a \citereset and I don't think that would be a good idea, so you will have to do that manually for example with etoolbox's \AtBeginEnvironment and \AtEndEnvironment.

\documentclass{report}
\usepackage[authordate, backend=biber, citereset=subsection+]{biblatex-chicago}

\AtBeginEnvironment{quote}{\citereset}
\AtEndEnvironment{quote}{\citereset}

\addbibresource{biblatex-examples.bib}

\begin{document}
This is some text with a citation \autocite[54]{sigfridsson}
and some more text and another citation of the same reference
\autocite[56]{sigfridsson}.

\section{A section title}
After a section break the same reference is cited again
\autocite[57]{sigfridsson}.

\begin{quote}
And this is a block quote, yet again from the same author.
A very popular author indeed.
\autocite[58]{sigfridsson}
\end{quote}

More text to add.  And after the block quote the same reference is cited again
\autocite[59]{sigfridsson}. And again \autocite[60]{sigfridsson}.

And after a paragraph break again \autocite[61]{sigfridsson}.
\end{document}

This is some text with a citation (Sigfridsson and Ryde 1998, 54) and some more text and another citation of the same reference (56).//0.1 A section title//After a section break the same reference is cited again (Sigfridsson and Ryde 1998, 57).//And this is a block quote, yet again from the same author. A very popular author indeed. (Sigfridsson and Ryde 1998, 58)//More text to add. And after the block quote the same reference is cited again (Sigfridsson and Ryde 1998, 59). And again (60). And after a paragraph break again (61).

3
  • This is perfect! BTW, just FYI, the solution you've linked to on github patching \everypar works well for me (even for a highly complex document with numerous extra packages, including hyperref). Any particular reason why it would be dangerous to use?
    – jan
    Feb 24, 2019 at 20:14
  • 1
    @jan The issue is mainly that (1) I don't know enough about \everypar to decide if it is safe, (2) \everypar gets triggered a lot (you could probably live with most of its triggers, but that is not clear for all uses) and is used a lot in the kernel and presumably in other packages so that you have to take additional precautions to avoid that it gets overwritten (that should be done in the linked code), and (3) it is usually recommended against messing with \everypar (e.g. tex.stackexchange.com/q/33849/35864).
    – moewe
    Feb 24, 2019 at 21:11
  • 1
    If somebody can show or convincingly argue that it is safe, the situation might be different.
    – moewe
    Feb 24, 2019 at 21:12

You must log in to answer this question.

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