[Tex/LaTex] Upright subtitle in BibLaTeX

biblatex

I am using BibLaTeX with backend biber and philosopy-modern as style. What I am looking for: I want the subtitles of books, collections etc. in the bibliography to appear in upright font, i.e. not in italics as the maintitle.

Some months ago I found a solution (if I am right I redefined the title in the main document via \renewbibmacro*{title ...}), but inadvertently I now changed some characters and I can't remember how to reestablish my definition. What I had not done was to copy \newbibmacro*{title ...}, redefine it between \makeatletter and \makeatother simly by removing [titlecase] in front of {subtitle} (at least it doesn't work any longer).

Does anybody have any idea?
(I don't attach an example, because the problem remains the same with other biblatex-styles, different biber-options, redefinitions of various parts of the biblatex.def …)

Best Answer

In the following example, I modified the title bibmacro as desired. Note that similar changes should be applied to the booktitle, maintitle, journal, periodical, and issue bibmacros (all located in biblatex.def).

Addendum: The modification is not obvious - it's only a closing brace removed from one code line and added to another. The effect is that \printfield[titlecase]{subtitle} isn't (anymore) part of the argument of \printtext[title].

\documentclass{article}

\usepackage{biblatex}

\renewbibmacro*{title}{%
  \ifboolexpr{
    test {\iffieldundef{title}}
    and
    test {\iffieldundef{subtitle}}
  }
    {}
    {\printtext[title]{%
       \printfield[titlecase]{title}%
%       \setunit{\subtitlepunct}% DELETED
%       \printfield[titlecase]{subtitle}}% DELETED
       \setunit{\subtitlepunct}}% NEW
     \printfield[titlecase]{subtitle}% NEW
     \newunit}%
  \printfield{titleaddon}}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{A01,
  author = {Author, A.},
  year = {2001},
  title = {Alpha},
  subtitle = {An introduction},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\nocite{*}

\begin{document}

\printbibliography

\end{document}

enter image description here

Related Question