1

I have a question related to this one: biblatex-verbose: edition as superscript in front of year

I'm using biblatex-musuos and that solution works for it as well, but only for normal entries. Child entries using crossref do not get a superscript. What confuses me is that it works for both parent and child in biblatex-verbose. But musuos and verbose both require the authortitle style and I can't tell what musuos does differently that might prevent this from working. The incollection-bibliography driver in musuos looks essentially the same as the standard one and I don't know what else could influence this. What can I do to make it work in musuos? (My apologies if I'm missing something super obvious.)

This is the result I get using musuos. If you change the style in the MWE to verbose it looks like it's supposed to, with superscript before both years.

enter image description here

MWE (minor changes compared to linked question marked with comments):

\documentclass{article}
\usepackage{filecontents}

\begin{filecontents}{bibliography.bib} @mvcollection{parent, editor = {Editor, Edith}, title = {Collectiontitle}, location = {Somewhere}, date = {2000}, edition = {2}, volume = {1}, } @InCollection{child, author = {Author, Alf}, title = {Title}, crossref = {parent}, } \end{filecontents}

\usepackage[style=musuos,backend=biber]{biblatex} \usepackage{xpatch} \addbibresource{bibliography.bib}

\DeclareFieldFormat{edition}{% \ifinteger{#1} {\ifnumcomp{#1}={1}{}% Only use for integers >1 {\textsuperscript{#1}}} {#1\isdot\setunit{\addcomma\space}}}

\renewbibmacro{publisher+location+date}{% \printlist{location}% \iflistundef{publisher} {\setunit{\addspace}}% changed from \addcomma\space {\setunit{\addcomma\space}}% changed from \addcolon\space \printlist{publisher}% \setunit{\addspace}% changed from \addcomma\space \iffieldint{edition}{% \printfield{edition}}{}% \usebibmacro{date}% \newunit}

\newcommand{\editedition}[1]{% \xpatchbibdriver{#1} {\printfield{edition}% \newunit} {\iffieldint{edition}{}{% \printfield{edition}% \newunit}}% {} {\typeout{failed to patch driver #1}} } \editedition{book} \editedition{collection} \editedition{inbook} \editedition{incollection} \editedition{manual}

\begin{document}

\nocite{parent} \nocite{child}

\printbibliography

\end{document}

1 Answers1

1

For reasons not quite clear to me, biblatex-musuos does not use the bibmacro publisher+location+date in its driver for @incollection, it uses location+date.

We will have to redefine location+date analogous to publisher+location+date.

\documentclass{article}

\usepackage[style=musuos,backend=biber]{biblatex} \usepackage{xpatch}

\DeclareFieldFormat{edition}{% \ifinteger{#1} {\ifnumcomp{#1}={1}{}% Only use for integers >1 {\textsuperscript{#1}}} {#1\isdot\setunit{\addcomma\space}}}

\renewbibmacro{publisher+location+date}{% \printlist{location}% \iflistundef{publisher} {\setunit{\addspace}}% changed from \addcomma\space {\setunit{\addcomma\space}}% changed from \addcolon\space \printlist{publisher}% \setunit{\addspace}% changed from \addcomma\space \iffieldint{edition}{% \printfield{edition}}{}% \usebibmacro{date}% \newunit}

\renewbibmacro{location+date}{% \printlist{location}% \setunit{\addcomma\space}% \iffieldint{edition}{% \printfield{edition}}{}% \usebibmacro{cite:labelyear+extrayear}% \newunit}

\newcommand{\editedition}[1]{% \xpatchbibdriver{#1} {\printfield{edition}% \newunit} {\iffieldint{edition}{}{% \printfield{edition}% \newunit}}% {} {\typeout{failed to patch driver #1}} } \editedition{book} \editedition{collection} \editedition{inbook} \editedition{incollection} \editedition{manual}

\begin{filecontents}{\jobname.bib} @mvcollection{parent, editor = {Editor, Edith}, title = {Collectiontitle}, location = {Somewhere}, date = {2000}, edition = {2}, volume = {1}, } @InCollection{child, author = {Author, Alf}, title = {Title}, crossref = {parent}, } \end{filecontents} \addbibresource{\jobname.bib}

\begin{document}

\nocite{parent} \nocite{child}

\printbibliography

\end{document}

Author, Alf: Title. In: Collectiontitle. Vol. 1. Ed. by Edith Editor. Somewhere, 2 2000.

moewe
  • 175,683
  • Ah, thank you very much! I didn't think of that. Regarding the use of location+date: In some musicological styles, the publisher is omitted in any case, and only location and date are used. But in musuos this doesn't seem like an explanation, since collection still uses the publisher, but incollection does not. So I'm not sure either. Perhaps an inconsistency in the style? – MrBubbles May 05 '22 at 09:29
  • @MrBubbles Mhh, yeah. The style doesn't rewrite most other drivers, though, so they mostly still use publisher+location+date instead of location+date. If the publisher is not desired, I'd probably have redefined publisher+location+date to drop the publisher. The current situation is a bit inconsistent in any case. (As can be seen in the example if you add a publisher.) – moewe May 05 '22 at 15:26