6

How to use italic text within a corporate author in biblatex v3.11?

The following MWE with italic text within a corporate author used to work with biblatex 3.10 from texlive2017:

\documentclass{book}

\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@online{cicerone,
    author = {{\textit{italic text} normal text}},
    title = {title},
    url = {www.example.com},
    urldate = {2016-05-12}
}
\end{filecontents*}

\usepackage{biblatex}
\addbibresource{\jobname.bib}

\begin{document}

    \cite{cicerone}
    \printbibliography

\end{document}

With the following package versions:

 *File List*
    book.cls    2014/09/29 v1.4h Standard LaTeX document class
    bk10.clo    2014/09/29 v1.4h Standard LaTeX file (size option)
filecontents.sty    2011/10/08 v1.3 Create an external file from within a LaTeX
 document
biblatex.sty    2017/12/19 v3.10 programmable bibliographies (PK/JW/AB)
pdftexcmds.sty    2018/01/21 v0.26 Utility functions of pdfTeX for LuaTeX (HO)
infwarerr.sty    2016/05/16 v1.4 Providing info/warning/error messages (HO)
ifluatex.sty    2016/05/16 v1.4 Provides the ifluatex switch (HO)
 ltxcmds.sty    2016/05/16 v1.23 LaTeX kernel commands for general use (HO)
   ifpdf.sty    2017/03/15 v3.2 Provides the ifpdf switch
etoolbox.sty    2018/02/11 v2.5e e-TeX tools for LaTeX (JAW)
  keyval.sty    2014/10/28 v1.15 key=value parser (DPC)
kvoptions.sty    2016/05/16 v3.12 Key value format for package options (HO)
kvsetkeys.sty    2016/05/16 v1.17 Key value parser (HO)
etexcmds.sty    2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO)
  logreq.sty    2010/08/04 v1.0 xml request logger
  logreq.def    2010/08/04 v1.0 logreq spec v1.0
  ifthen.sty    2014/09/29 v1.1c Standard LaTeX ifthen package (DPC)
     url.sty    2013/09/16  ver 3.4  Verb mode for urls, etc.
 xstring.sty    2013/10/13  v1.7c  String manipulations (C Tellechea)
  blx-dm.def
biblatex-dm.cfg
blx-compat.def    2017/12/19 v3.10 biblatex compatibility (PK/JW/AB)
biblatex.def    2017/12/19 v3.10 biblatex compatibility (PK/JW/AB)
standard.bbx    2017/12/19 v3.10 biblatex bibliography style (PK/JW/AB)
 numeric.bbx    2017/12/19 v3.10 biblatex bibliography style (PK/JW/AB)
 numeric.cbx    2017/12/19 v3.10 biblatex citation style (PK/JW/AB)
biblatex.cfg    
 english.lbx    2017/12/19 v3.10 biblatex localization (PK/JW/AB)

With biblatex v3.11 from texlive2018(pretest) and the following packages

 *File List*
    book.cls    2014/09/29 v1.4h Standard LaTeX document class
    bk10.clo    2014/09/29 v1.4h Standard LaTeX file (size option)
filecontents.sty    2011/10/08 v1.3 Create an external file from within a LaTeX
 document
biblatex.sty    2018/03/04 v3.11 programmable bibliographies (PK/MW)
pdftexcmds.sty    2018/01/30 v0.27 Utility functions of pdfTeX for LuaTeX (HO)
infwarerr.sty    2016/05/16 v1.4 Providing info/warning/error messages (HO)
ifluatex.sty    2016/05/16 v1.4 Provides the ifluatex switch (HO)
 ltxcmds.sty    2016/05/16 v1.23 LaTeX kernel commands for general use (HO)
   ifpdf.sty    2017/03/15 v3.2 Provides the ifpdf switch
etoolbox.sty    2018/02/11 v2.5e e-TeX tools for LaTeX (JAW)
  keyval.sty    2014/10/28 v1.15 key=value parser (DPC)
kvoptions.sty    2016/05/16 v3.12 Key value format for package options (HO)
kvsetkeys.sty    2016/05/16 v1.17 Key value parser (HO)
etexcmds.sty    2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO)
  logreq.sty    2010/08/04 v1.0 xml request logger
  logreq.def    2010/08/04 v1.0 logreq spec v1.0
  ifthen.sty    2014/09/29 v1.1c Standard LaTeX ifthen package (DPC)
     url.sty    2013/09/16  ver 3.4  Verb mode for urls, etc.
 xstring.sty    2013/10/13  v1.7c  String manipulations (C Tellechea)
  blx-dm.def    2018/03/04 v3.11 biblatex localization (PK/MW)
blx-compat.def    2018/03/04 v3.11 biblatex compatibility (PK/MW)
biblatex.def    2018/03/04 v3.11 biblatex compatibility (PK/MW)
standard.bbx    2018/03/04 v3.11 biblatex bibliography style (PK/MW)
 numeric.bbx    2018/03/04 v3.11 biblatex bibliography style (PK/MW)
 numeric.cbx    2018/03/04 v3.11 biblatex citation style (PK/MW)
biblatex.cfg    
 english.lbx    2018/03/04 v3.11 biblatex localization (PK/MW)

It fails with the following error message

! Extra }, or forgotten \endgroup.
l.27       }

? 
4

This was a bug in Biber 2.11 that was fixed in 2.12. See https://github.com/plk/biber/issues/216 (and to a lesser extent https://github.com/plk/biber/issues/215 and https://github.com/plk/biblatex/issues/727). It came about because of a fix to support unnecessary braces around last names: https://github.com/plk/biber/issues/210 and ! Paragraph ended before \name was complete.

The fix in 2.12 does not re-establish functionality for certain other constructions that used to work. In particular Two or three letter initials in bibliography with Biblatex, BibTeX: Abbreviate first name (aka given name) to 2 or 3 letters (not 1) will still not work - a different solution has to be found: Two or three letter initials in bibliography with Biblatex (again).

If at all possible, macros should be avoided in name fields because arbitrary macros can interfere with conversion of ASCII-macros to Unicode characters as well as the brace protection for casing. Macros can also seriously inhibit Biber's ability to extract name initials from fields. Biber is written in Perl and extensively uses RegEx to parse data: Braces and braced groups present a challenge there.


This workaround is only retained for historic interest. It should not be necessary in a current version of Biber.

If you must absolutely have these macros in your author field, a work-around using the extended name format is possible. With the extended name format you give each part of the name explicitly and do not rely on the btparse library to parse the name as usual. The particular error occurs because the name initial routine gets thrown off by toon many braces, if you provide the problematic initial yourself, the error is avoided. So the example in the question would compile fine as

@online{cicerone,
  author = {family={\textit{italic text} normal text}, family-i={\textit{i}}},
  title = {title},
  url = {www.example.com},
  urldate = {2016-05-12}
}
| improve this answer | |
  • Thanks again for you answer! You should get extra points for the record breaking speed! – samcarter_is_at_topanswers.xyz Apr 11 '18 at 11:22
  • Out of curiosity: Do you know if there is some list of all the available key words of the extended name format? I had a look at the biber documentation "3.8. Extended Name Format" but only found examples. – samcarter_is_at_topanswers.xyz May 20 '18 at 19:52
  • @samcarter Because the name format is extensible there is no definitive list. By default the name parts family, given, prefix and suffix are defined. So these four and their 'initial parts' family-i, given-i, prefix-i and suffix-i are normally accepted. If you define new name parts, they and their initial form also become valid. Additionally per-name and per-namelist options (as listed in Appendix E) are valid. – moewe May 20 '18 at 19:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.