Seite 1 von 1

Falsche Reihenfolge bei sorting=none und Quelle in figure

Verfasst: Mo 11. Dez 2017, 11:26
von markusv
Hallo. Bei meinem Dokument verwende ich biblatex mit sorting=none, um die Literatureinträge in der Reihenfolge auszugeben, wie sie im Text erscheinen.

Bei einer Gleitumgebung, in deren Caption ich eine Quelle verwende, habe ich nun das Problem, dass die Sortierung fehlschlägt, da die Gleitumgebung erst später herausgegeben wird, als sie im Code angeordnet ist (im MB mit erzwungen). Natürlich könnte ich die Gleitumgebung nichtgleitend machen, aber gibt es eine andere Möglichkeit? Würde es gerne mit Code sauber lösen.
\documentclass[ngerman]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{graphicx}
\usepackage[style=numeric,maxbibnames=99,sorting=none]{biblatex}
\addbibresource{biblatex-examples.bib}
\usepackage{csquotes}

\usepackage{blindtext}
\begin{document}
\begin{figure}[b]%\nocite{knuth:ct} %möglicher Workaround (siehe EDIT)
    \centering
    \includegraphics[width=.75\textwidth]{example-image}
    \caption{\cites{baez/article}}%erster Aufruf der Quelle, daher 1
    \label{fig:my_label}
\end{figure}
\blindtext\cite{knuth:ct}%[2], aber zuerst erwähnt
\clearpage
\printbibliography
\end{document}
EDIT: ein erster Workaround wäre es, mit \nocite in der Gleitumgebung die vorhergehende Quelle einzupflegen. Gibt es noch eine schönere Lösung?

Verfasst: Mo 11. Dez 2017, 15:29
von u_fischer
Nun, ich würde nie freiwillig sorting=none in einem Dokument mit Gleitumgebungen benutzen (wenn in den Gleitumgebungen Zitate erscheinen).

Du hast hier das gleiche Problem wie mit Fußnoten: Die Lesereihenfolge ist nicht bekannt. Es gibt überhaupt keinen Grund anzunehmen, dass der Leser sich dem Bild erst am Ende der Seite zuwendet.

Abgesehen davon kannst du in der figure \boolfalse{citerequest} verwenden und ein \nocite{baez/article} woanders einfügen. Aber auch das verlangt manuelle Kontrolle.