Difference between revisions of "Question marks in bibliography entries"

From Wiki
Jump to navigation Jump to search
(Stated the problem.)
 
(Added working example)
Line 6: Line 6:
  
 
Note the ugly ‘?.’ conjunction at the end of the title.
 
Note the ugly ‘?.’ conjunction at the end of the title.
 +
 +
A solution was suggested [http://www.tug.org/pipermail/texhax/2009-November/013714.html on the texhax mailing list]; only one of the suggested hacks appears to work with ConTeXt. It requires the modification of the bibliography entries, and the definition of a new command. Below is a working example.
 +
 +
The BibTeX file:
 +
 +
<texcode>
 +
@article{art1,
 +
  title = {{Is this a question?\killstop}},
 +
  author = {Author, A.},
 +
  pages = {1--2},
 +
  journal = {Journal of Something},
 +
  volume = {1},
 +
  number = {2},
 +
  year = {2000}
 +
}
 +
</texcode>
 +
 +
The document itself:
 +
 +
<texcode>
 +
\def\gobblestop#1#2{#1}
 +
\def\killstop{%
 +
  \aftergroup\gobblestop
 +
  }
 +
 +
\setupbibtex[database={test},sort=author]
 +
\setuppublications[sorttype=bbl,refcommand=authoryear]
 +
\starttext
 +
\cite[art1]
 +
\placepublications[criterium=text]
 +
\stoptext
 +
</texcode>

Revision as of 04:36, 5 February 2012

Some publications have a title which ends in a question mark (a.k.a. interrogation mark or interrogation point). This becomes a problem when typesetting a bibliography, since a full stop is added after the title, resulting in something like:

Livermore, R., Hillenbrand, C.-D., Meredith, M. and Eagles, G. (2007). Drake Passage and Cenozoic climate: An open and shut case?. Geochemistry, Geophysics, Geosystems, 8(1), Q01005.

Note the ugly ‘?.’ conjunction at the end of the title.

A solution was suggested on the texhax mailing list; only one of the suggested hacks appears to work with ConTeXt. It requires the modification of the bibliography entries, and the definition of a new command. Below is a working example.

The BibTeX file:

@article{art1,
  title = {{Is this a question?\killstop}},
  author = {Author, A.},
  pages = {1--2},
  journal = {Journal of Something},
  volume = {1},
  number = {2},
  year = {2000}
}

The document itself:

\def\gobblestop#1#2{#1}
\def\killstop{%
  \aftergroup\gobblestop
  }

\setupbibtex[database={test},sort=author]
\setuppublications[sorttype=bbl,refcommand=authoryear]
\starttext
\cite[art1]
\placepublications[criterium=text]
\stoptext