# biblatex punctuation issue when book titles end in quotation marks

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}

\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}


(source: langeslag.org)

(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.

• Maybe rule #1 doesn't apply to bibliography entries, but just to ordinary sentences. Maybe the whole title, quotation marks included, should be seen as block or unit, in which case biblatex-chicago output would be right. – n.r. Aug 8 '14 at 16:44
• Have you tried using csquotes syntax for the quotation marks? – cfr Aug 9 '14 at 3:02
• I hadn't! That sounds as though it ought to be the solution, but there's no difference yet. I'll add this to my original question--thanks! – Paul Langeslag Aug 9 '14 at 9:51
• Try title = {This Book Title Ends in \mkbibquote{Quotation Marks}} this will make your .bib file somewhat dependent on biblatex though. – moewe Aug 9 '14 at 9:58
• – moewe Aug 9 '14 at 10:13

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*}

• As far as I can see, the only way to get this to work in a bibliography/citation context is to use \mkbibquote, as the "normal" csquotes commands do not work together with biblatex's punctuation facilities. In order to improve portability, one might add \providecommand{\mkbibquote}[1]{\textquote{#1}} to the preamble if biblatex is not loaded. – moewe Aug 9 '14 at 12:30