
BibLaTeX で参考文献を作成したいのですが、参考文献を引用順に表示したいので、パッケージ オプションを使用しますsorting=none
。ただし、ドキュメントのある時点で、1 つのコマンドで一度に 10 個の参考文献を引用する必要があります\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
が 2 番目、つまりtest:a
との間に表示されますtest:b
。次のスクリーンショットを参照してください。
私には、参考文献を作成する過程のどこかの時点で、参考文献がコマンド内の位置によってソートされているように思われる\cite{}
。数値順ではなく辞書順その結果、参照番号 10 が参照番号 1 と参照番号 2 の間に表示されます。
興味深いことに、これはある種の Biber 問題のようです。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
ソートフィールド(1つの 内のエントリの順序\cite{}
)が導入され、それ以来 に使用されていますsorting=none
。しかし、ソートの はintciteorder
整数ではなく文字列として誤って扱われ、質問で説明されているような間違ったソート動作につながっていました。これは で修正されました。7942d2e
ビーバーのコミットこれは、Biber v2.19 に組み込まれました。
(そのため、[Debian 安定版を使用している間に] TeX Live 2023 にアップデートするか、他の回避策を見つける必要があります…)