我使用 biber/biblatex 已经有一段时间了,我习惯用 defbibentryset 和 biblatex 的 subentry 选项来定义多个引用。这种方法效果很好,但自从上次更新以来,我对参考文献的排序方式产生了疑问。例如,如果我定义了 3 个,那么\defbibenetryset
无论它们之间是否有其他单个引用,它们在参考书目中的编号都是从 1 到 3。为了检查这个问题,我再次编译了一个可以正常工作的旧文件,但它现在不再正常工作了:
\documentclass[a4paper, 10pt]{article} %environnement du document
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc} %prise en charge des caractères spéciaux
\usepackage[frenchb]{babel} %langue
\usepackage{epstopdf}
\usepackage{csquotes} %pour la biblio
\usepackage[backend=biber,style=chem-acs,subentry,maxnames=20]{biblatex} %style acs
\bibliography{library}
\uchyph=0
%pour réussir à faire des notes de bas de page
\makeatletter
\ExecuteBibliographyOptions{citetracker,sorting=none}
\DeclareCiteCommand{\notefullcite}[\mkbibbrackets]
{\usebibmacro{cite:init}%
\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{notefullcite}%
\usebibmacro{cite:comp}}
{}
{\usebibmacro{cite:dump}%
\usebibmacro{postnote}}
\newbibmacro*{notefullcite}{%
\ifciteseen
{}
{\footnotetext[\thefield{labelnumber}]{%
\usedriver{}{\thefield{entrytype}}.}}}
\DeclareCiteCommand{\superfullcite}[\cbx@superscript]%
{\usebibmacro{cite:init}%
\let\multicitedelim=\supercitedelim
\iffieldundef{prenote}
{}
{\BibliographyWarning{Ignoring prenote argument}}%
\iffieldundef{postnote}
{}
{\BibliographyWarning{Ignoring postnote argument}}}
{\usebibmacro{citeindex}%
\usebibmacro{superfullcite}%
\usebibmacro{cite:comp}}
{}
{\usebibmacro{cite:dump}}
\newbibmacro*{superfullcite}{%
\ifciteseen
{}
{\xappto\cbx@citehook{%
\noexpand\footnotetext[\thefield{labelnumber}]{%
\fullcite{\thefield{entrykey}}.}}}}
\newrobustcmd{\cbx@superscript}[1]{%
\mkbibsuperscript{#1}%
\cbx@citehook
\global\let\cbx@citehook=\empty}
\let\cbx@citehook=\empty
\makeatother
\DefineBibliographyExtras{french}{\restorecommand\mkbibnamelast}
\begin{document}
\defbibentryset{metarev}{Furstner2000,Roy2000}
a\superfullcite{metarev}\\
a\superfullcite{Schwab1995}\\
a\superfullcite{Scholl1999}\\
\defbibentryset{hov}{Kingsbury1999,Garber2000}
a\superfullcite{hov} \\
a\superfullcite{Grela2002} \\
\end{document}
输出应该是参考书目中的 ref1、ref2、ref3、ref4、ref5,但它给出的是 ref1、ref3、ref4、ref2、ref5。set=hov 编号为 2!!!
干杯
答案1
我想这应该是一个答案......这是 biber 1.0 中的一个错误,应该在 SourceForge 上的测试版 1.1 中修复。