
Я хочу создать библиографию с помощью BibLaTeX, и поскольку я хочу, чтобы ссылки отображались в порядке цитирования, я использую опцию пакета sorting=none
. Однако в одном месте моего документа мне нужно процитировать десять ссылок одновременно, т. е. одной \cite{}
командой. В этом случае (отсутствие) сортировки в библиографии идет не так.
Минимальный рабочий пример выглядит следующим образом:
\begin{filecontents}[overwrite]{test.bib}
@article{test:a, title = {Test a}}
@article{test:b, title = {Test b}}
@article{test:c, title = {Test c}}
@article{test:d, title = {Test d}}
@article{test:e, title = {Test e}}
@article{test:f, title = {Test f}}
@article{test:g, title = {Test g}}
@article{test:h, title = {Test h}}
@article{test:i, title = {Test i}}
@article{test:j, title = {Test j}}
\end{filecontents}
\documentclass{article}
\usepackage[sorting=none]{biblatex}
\addbibresource{test.bib}
\begin{document}
Tests are great \cite{test:a,test:b,test:c,test:d,test:e,test:f,test:g,test:h,test:i,test:j}.
\printbibliography
\end{document}
Составление этого (с pdflatex
, biber
, pdflatex
, pdflatex
) приводит к библиографии, в которой ссылки появляются в неправильном порядке: 10-я запись test:j
появляется второй, между test:a
и test:b
; см. следующий снимок экрана.
Мне кажется, что на каком-то этапе процесса создания библиографии ссылки сортируются по их положению в \cite{}
командене численно, а лексикографически, в результате чего ссылка № 10 появляется между № 1 и № 2.
Интересно, что это, похоже, какая-то проблема Бибера: использование BibLaTeX с backend=bibtex
и компиляция с bibtex
вместо biber
сортирует библиографию правильно.
Я что-то упустил или нашел ошибку в Biber?
(Я использую TeX Live 2022 с Biber версии 2.18 и BibLaTeX версии 3.18b.)
решение1
Это вызвано ошибкой в Biber v2.18, которая была исправлена в v2.19.
Biber 2.18 ввел intciteorder
поле сортировки (порядок записей в одном \cite{}
), которое с тех пор использовалось для sorting=none
. Однако для сортировки intciteorder
ошибочно рассматривалось как строка, а не целое число, что привело к как раз неправильному поведению сортировки, описанному в вопросе. Это было исправлено всовершение 7942d2e
Бибера, который был включен в Biber v2.19.
(Поэтому мне нужно либо обновиться до TeX Live 2023 [пока я использую Debian Stable], либо найти другой обходной путь…)