Biblatex-apa-Problem mit mhchem

Biblatex-apa-Problem mit mhchem

Ich habe ein Problem entdeckt, wenn ich BibLaTeX' cite-style apazusammen mit mhchemder Bib-Datei verwende, die chemische Formeln mit tiefgestellten/hochgestellten Ziffern enthält. Der MWE ist

\documentclass{article}
\usepackage[version=4]{mhchem}
\usepackage[style=apa, backend=biber]{biblatex}
%\usepackage[style=authoryear, backend=biber]{biblatex}
\addbibresource{Bib.bib}

\begin{document}

This is a citation with only simple chemistry: \parencite{Cite1}.

This is a citation with superscript: \parencite{Cite2}.

\printbibliography
\end{document}

Cite1 enthält nur eine einfache chemische Formel und funktioniert einwandfrei:

@Article{Cite1,
  author       = {Author, A.},
  date         = {2020},
  journaltitle = {A Journal},
  title        = {A title with just some \ce{Mg/Ca} chemistry},
  issue        = {2},
  pages        = {1--4},
  volume       = {1},
  timestamp    = {2020-03-27},
}

Zitat 2 enthält hochgestellte Zeichen und führt zu 14 Fehlern:

@Article{Cite2,
  author       = {Author, B.},
  date         = {2020},
  journaltitle = {Another Journal},
  title        = {A title with some more complicated \ce{\delta^{18}O} chemistry and a longer title},
  issue        = {1},
  pages        = {2--6},
  volume       = {8},
  timestamp    = {2020-03-27},
}

Das Problem scheint zu sein, dass BibLaTeXin den Mathmode gewechselt wird, obwohl \cedas verhindert werden sollte:

Bildbeschreibung hier eingeben

Ein einfaches \protect, wie in {\protect\ce{\delta^{18}O}}, löst dieses Problem, schafft aber ein neues, da das „O“ jetzt klein geschrieben wird.

Bildbeschreibung hier eingeben

Ich bräuchte die etwas umständliche Variante, {\protect\ce{\delta^{18}\MakeUppercase{O}}}um endlich das richtige Ergebnis zu bekommen:

Bildbeschreibung hier eingeben

Da die eigentliche Bib-Datei viele Einträge enthält, möchte ich diese verständlicherweise nicht alle manuell ändern. Kurioserweise funktioniert es mit dem authoryear-Stil einwandfrei, das Problem ist anscheinend apa-spezifisch. Ich wäre für alle Vorschläge, wie ich dieses Problem lösen kann, sehr dankbar.

Antwort1

biblatex-apawendet die Groß- und Kleinschreibung von Sätzen mit an \MakeSentenceCase*. Dieses Makro ist recht komplex und kann grundsätzlich nur einfachen Text verarbeiten, ohne unterbrochen zu werden.

Wenn Ihre Titel komplexe Makros enthalten, müssen Sie diese mit Klammern verbergen/schützen.

Die komplexen Regeln des Zahnspangenschutzes erfordernzweiKlammernpaare, wenn der Inhalt in den Klammern mit einem Makro beginnt und Sie die Großschreibung beibehalten möchten.

\documentclass{article}
\usepackage[version=4]{mhchem}
\usepackage[style=apa, backend=biber]{biblatex}


\begin{filecontents}{\jobname.bib}
@Article{Cite1,
  author       = {Author, A.},
  date         = {2020},
  journaltitle = {A Journal},
  title        = {A Title with Just Some {{\ce{Mg/Ca}}} Chemistry},
  issue        = {2},
  pages        = {1--4},
  volume       = {1},
}
@Article{Cite2,
  author       = {Author, B.},
  date         = {2020},
  journaltitle = {Another Journal},
  title        = {A Title with Some More Complicated {{\ce{\delta^{18}O}}}
                  Chemistry and a Longer Title},
  issue        = {1},
  pages        = {2--6},
  volume       = {8},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
This is a citation with only simple chemistry: \parencite{Cite1}.

This is a citation with superscript: \parencite{Cite2}.

\printbibliography
\end{document}

Autor, A. (2020). Ein Titel mit nur etwas Mg/Ca-Chemie. Ein Journal, 1, 1–4.//Autor, B. (2020). Ein Titel mit etwas komplizierterer δ 18 O-Chemie und einem längeren Titel. Ein weiteres Journal, 8, 2–6.

verwandte Informationen