[Tex/LaTex] biblatex punctuation issue when book titles end in quotation marks

biblatexcitingpunctuation

  1. The Chicago Manual of Style specifies American punctuation: periods and commas should precede closing quotation marks (§ 6.9).
  2. It also specifies that titles within book titles should be enclosed in double quotation marks (§ 14.102).
  3. Accordingly, some book titles will end in a closing double quotation mark.

Unfortunately, the biblatex-chicago package (and maybe biblatex) doesn't seem to have counted with the combination of rules 1 and 2 above. In the following minimal working example, the third citation results in a comma following the closing quotation mark, while the bibliography has a period following the closing quotation mark. Both should precede the closing quotation mark. How do I fix this?

\documentclass{book}
\usepackage{xltxtra}
\usepackage{etoolbox}
\usepackage{etex}
\usepackage{keyval}
\usepackage{ifthen}
\usepackage{url}
\usepackage[style=american]{csquotes}
\usepackage{polyglossia}
\usepackage{verbatim}
\usepackage[notes]{biblatex-chicago}

\setdefaultlanguage{english}
\begin{filecontents}{book.bib}
@book{key1,
   author = {Marty McFly},
   title = {This Book Title Ends in \enquote{Quotation Marks}},
   location = {Oxford},
   publisher = {Oxford University Press},
   year = {1976}
}

@book{key2,
   author = {John Updike},
   title = {Some Title},
   location = {Cambridge, MA},
   publisher = {Harvard University Press},
   year = {2002}
}
\end{filecontents}
\addbibresource{book.bib}

\begin{document}

Here I cite a book whose title ends in a closing quotation mark\autocite[55]{key1}.
I follow this up with an unrelated citation\autocite[xi]{key2}.
Here I cite the first work a second time, which results in a short reference\autocite[75]{key1}, which unfortunately misplaces the period.

\printbibliography

\end{document}

Footnote citation
(source: langeslag.org)

Bibliographical entry
(source: langeslag.org)

The problem also occurs where my postnote ends in a closing quotation mark:

\autocite[s.v. ``word'']{dictionary}

but there I can hack my way through by adding a period inside the postnote itself.

Best Answer

You can use the biblatex/csquotes quotation command \mkbibquote. So your example would look like this

title = {This Book Title Ends in \mkbibquote{Quotation Marks}}

This solution, unfortunately, comes at the cost of making the .bib file somewhat dependent on biblatex.

See also the advice in the biblatex-chicago documentation on pp. 49-50 about \mkbibquote, on p. 4 and actually quite a lot of other places (this is p. 4):

[I]f you currently have quoted material in your .bib file, and are using \enquote or the standard LaTeX mechanisms there, then the simplest procedure is always to use \mkbibquote instead in order to ensure that punctuation works out right.

MWE

\documentclass[american]{article}
\usepackage{xltxtra}
\usepackage{filecontents}
\usepackage{csquotes}
\usepackage{polyglossia}
\setdefaultlanguage[variant=american]{english}
\usepackage[notes]{biblatex-chicago}

\begin{filecontents*}{\jobname.bib}
@book{key1,
   author = {Marty McFly},
   title = {This Book Title Ends in \mkbibquote{Quotation Marks}},
   location = {Oxford},
   publisher = {Oxford University Press},
   year = {1976}
}
@book{key2,
   author = {John Updike},
   title = {Some Title},
   location = {Cambridge, MA},
   publisher = {Harvard University Press},
   year = {2002}
}
\end{filecontents*}
\addbibresource{\jobname.bib}

\begin{document}
Here I cite a book whose title ends in a closing quotation mark\autocite[55]{key1}.
I follow this up with an unrelated citation\autocite[xi]{key2}.
Here I cite the first work a second time, which results in a short reference\autocite[75]{key1}, which unfortunately misplaces the period.

\printbibliography
\end{document}

enter image description here

Related Question