[Tex/LaTex] Suppressing em-dashs for recurrent authors and letter suffixes for years when using biblatex-chicago

biblatexchicago-style

I am trying to generate a bibliography to summarize research in a certain field. The bibliography is required to be formatted Chicago style. Since this bibliography is not accompanying an actual document I'd like to suppress certain behaviours.

  • biblatex-chicago replaces recurrent authors names with 3 em-dashes. This isn't desirable since this bibliography must be sorted nyt rather then ynt. Using the dashed=false option do not work (biblatex-chicago doesn't seem to support this option)
  • To differentiate multiple bibliography entries by the same author in the same year biblatex-chicago adds a letter suffix to the year in the bib entry. This is not desirable since without in-text citations they don't serve any purpose.

Here is a simple example:

\documentclass{article}

\usepackage{filecontents}
\begin{filecontents}{bibtest.bib}
@book{book1,
    Author = {Author B},
    Title = {Book 1},
    Year = {2008}}

@book{book2,
    Author = {Author B},
    Title = {Book 2},
    Year = {2009}}

@book{book3,
    Author = {Author A},
    Title = {Book 3},
    Year = {2010}}

@book{book4,
    Author = {Author A},
    Title = {Book 4},
    Year = {2010}}
\end{filecontents}

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


\begin{document}

\nocite{*}
\printbibliography

\end{document}

Which produces the following:

B, Author. 2008. Book 1.

———, Author. 2009. Book 2.

A, Author. 2010a. Book 3.

———, Author. 2010b. Book 4.

I'd like it to look like this:

B, Author. 2008. Book 1.

B, Author. 2009. Book 2.

A, Author. 2010. Book 3.

A, Author. 2010. Book 4.

Best Answer

biblatex-chicago unfortunately doesn't have a dashed option like the standard styles. To avoid printing the dash, you can clear \bbx@lasthash before printing each entry using the \AtEveryBibitem hook. \bbx@lasthash normally expands to the name hash of the last entry. It is used by the drivers for dash checks.

The alphabetic year suffix used for disambiguation corresponds to the extrayear field. It can be cleared with \AtEveryBibitem as well.

Just add the following to your preamble:

\makeatletter
\AtEveryBibitem{%
  \global\undef\bbx@lasthash%
  \clearfield{extrayear}}
\makeatother