0

TL;DR: How do I DeclareFieldFormat on an @article's title?

Having a .bib entry like this

@article{x,
    title={Article Title},
    author={Author},
    journal={Journal Name},
    year={2019}
}

And using [style=alphabetic,sorting=nyt,backend=biber,maxbibnames=999,useprefix=true]{biblatex}, the bibliography entry gets

[Aut19] Author. “Article Title”. In: Journal Name (2019).

However, I would like to make the Article Title italics instead of in quotes:

[Aut19] Author. Article Title. In: Journal Name (2019).

I tried \DeclareFieldFormat{title}{\emph{#1}}, which works fine with (for example) @misc, but not with an @article. How do I do that?

Marian
  • 311
  • 3
  • 9
  • 1
    \DeclareFieldFormat[article]{title}{\emph{#1}}. See also https://tex.stackexchange.com/q/462133/35864. biblatex allows you to specify type-specific field formats. \DeclareFieldFormat{title} redefines the generic format that is used if there are no type-specific definitions. @articles have a type-specific default and that has to be overwritten with a type-specific declaration: \DeclareFieldFormat[article]{title}. If you want to overwrite all declarations at once, use the starred form \DeclareFieldFormat*{title} – moewe Mar 01 '19 at 16:40
  • I knew it must be easy ;) Thanks. Would you post this as a reply so I can accept it? – Marian Mar 01 '19 at 17:01

1 Answers1

3

As explained in Remove Quotation Marks from Style biblatex's field formats allow for generic and type-specific formatting. @articles have a type-specific field format and so the definition has to happen with the type argument.

Use

\DeclareFieldFormat[article]{title}{\mkbibemph{#1}}

to turn only titles of @article entries into italics and leave everything else as is.

Use

\DeclareFieldFormat*{title}{\mkbibemph{#1}}

to remove all type-specific formatting and make all titles into italics.

See the already linked Remove Quotation Marks from Style for more extensive examples and explanations.

moewe
  • 175,683