1

I have the following cite:

\citet{vonNeumann1947} introduced expected utility theory, the first fully formalized theory of choice under risk, in their \citetitle{vonNeumann1947}.

where vonNeumann1947 is defined as follows

@book{vonNeumann1947,
address = {Princeton},
author = {von Neumann, John and Morgenstern, Oskar},
booktitle = {The Theory of Games and Economic Behavior},
publisher = {Princeton University Press},
title = {{The Theory of Games and Economic Behavior}},
year = {1947}
}

This gets rendered by biblatex as

von Neumann and Morgenstern (1947) introduced expected utility theory, the first fully formalized theory of choice under risk, in their The Theory of Games and Economic Behavior.

Is there any way of dropping the The from the book's title in the \titlecite{} without having to mess with the title in the .bib file?

5
  • Do you also use Biber as backend?
    – moewe
    Commented Mar 26, 2016 at 14:58
  • in their book \citetitle{vonNeumann147}.
    – Johannes_B
    Commented Mar 26, 2016 at 15:33
  • @moewe Sorry, yes!
    – RoyalTS
    Commented Mar 26, 2016 at 16:44
  • May I ask why you have both the title and booktitle fields in your entry. As far as I can see, you can drop the booktitle field.
    – moewe
    Commented Mar 26, 2016 at 16:48
  • Is there any reason for double-bracing the title field here? It is usually better to use title case and protect only those words that must not be lower-cased under any circumstances. With biblatex it is quite easy to turn off sentence casing if the style enables it (as biblatex-apa does for example). Note that in your use case I would probably go for writing the title manually and not rely on biblatex's commands though I can see why it is appealing to do so.
    – moewe
    Commented Mar 26, 2016 at 17:04

1 Answer 1

1

With Biber that could be as easy as

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map[overwrite=false]{
      \step[fieldsource=title, match=\regexp{\AThe\s+(.*)}, final]
      \step[fieldset=shorttitle, fieldvalue={$1}]
    }
  }
}

But because you have another pair of braces around the title field we need to take care of that with the slightly longer

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map[overwrite=false]{
      \step[fieldsource=title, match=\regexp{\AThe\s+(.*)}, final]
      \step[fieldset=shorttitle, fieldvalue={$1}]
    }
    \map[overwrite=false]{
      \step[fieldsource=title, match=\regexp{\A\{The\s+(.*)\}}, final]
      \step[fieldset=shorttitle, fieldvalue=\regexp{{$1}}]
    }
  }
}
1
  • In biblatex-examples.bib many entries having titles starting with "The" have manual shorttitle fields.
    – moewe
    Commented Mar 26, 2016 at 17:01

You must log in to answer this question.

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