3

I'm using the acs-chem style in biblatex, writing in Spanish.

I'm trying to change the "y" that appears before the last author in the bibliography for a ";", like if it wasn't the last one.

I tried \renewcommand{\finalnamedelim}{;} and also this, but neither of them work.

\documentclass[12pt,a4paper,twoside,openright,notitlepage]{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[english,spanish]{babel}

\usepackage[
style=chem-acs,
maxnames=10,
minnames=10
]{biblatex}
\DefineBibliographyStrings{spanish}{%
andothers = {et\addabbrvspace al\adddot};
and = {;}
}
\renewcommand{\andothersdelim}{; }
\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem \autocite{aksin} ipsum \autocite{baez/article}

\printbibliography
\end{document}
3

For \finalnamedelim to work normally, you need to disable biblatex's smart and feature for Spanish by setting the value of smartand to 0. I think this will disable it in all lists though.

MWE

\documentclass{article}
\usepackage[english,spanish]{babel}
\usepackage[
  style=chem-acs,
  maxnames=10,
  minnames=10
]{biblatex}
\DefineBibliographyStrings{spanish}{%
  andothers = {et\addabbrvspace al\adddot}
}
\setcounter{smartand}{0}
\renewcommand*{\andothersdelim}{\addsemicolon\space}
\renewcommand*{\finalnamedelim}{\addsemicolon\space}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \autocite{aksin} ipsum \autocite{baez/article}
\printbibliography
\end{document}

MWE output

  • So it was a problem of the language. You also put the \andothersdelim the proper way. Thanks. – Daniel Álvarez Jun 3 at 9:24
  • @DanielÁlvarez, no worries. As an aside, you should separate bibliography string definitions with a comma not a semicolon in \DefineBibliographyStrings. – David Purton Jun 3 at 9:33

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.