Biblatex + biber - 根据报告问题对引文进行排序

Biblatex + biber - 根据报告问题对引文进行排序

我正在尝试按报告发行号对参考书目中同一年的一些技术报告引用进行排序,但到目前为止还没有机会,我甚至尝试添加月份以便使它们按时间顺序排序,但没有任何效果。

我的参考文献.bib

@techreport{VanBuskirk2014a,
address = {Sydney},
author = {{Van Buskirk}, Joe and Roxburgh, Amanda and Bruno, Raimondo and Burns, Lucinda},
institution = {National Drug and Alcohol Research Centre},
month = {mar},
number = {2},
pages = {1--14},
title = {{Drugs and The Internet}},
year = {2014}
}

@techreport{VanBuskirk2014b,
address = {Sydney},
author = {{Van Buskirk}, Joe and Roxburgh, Amanda and Bruno, Raimondo and Burns, Lucinda},
institution = {National Drug and Alcohol Research Centre},
month = {sep},
number = {3},
pages = {1--5},
title = {{Drugs and The Internet}},
year = {2014}
}

由于我在 VanBuskirk2014a 之前引用了 VanBuskirk2014b,所以它的排序和编号方式都是错误的,九月份的报告得到了“a”键并且位于参考书目之前,而三月份的报告得到了“b”键并且位于参考书目之后。

这里有一个简化版本来说明该问题:

测试.tex

\documentclass[12pt,a4paper,twoside]{report}
\usepackage[bindingoffset=0.5cm, left=3cm, right=3cm, top=2.5cm, bottom=2.5cm]{geometry}
\usepackage[french]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage{csquotes}
\usepackage[backend=biber, style=apa, sortcites=true]{biblatex}
\DeclareLanguageMapping{french}{french-apa}
\setlength\bibitemsep{1.5\itemsep}

\addbibresource{myreferences.bib}

\begin{document}

    \autocite{VanBuskirk2014b}\\

    \autocite{VanBuskirk2014a}

    \printbibliography

\end{document}

答案1

您可以使用该sortyear字段手动控制排序,将其用作sortyear = {<year>-<number>}

@techreport{VanBuskirk2014a,
  address = {Sydney},
  author = {{Van Buskirk}, Joe and Roxburgh, Amanda and Bruno, Raimondo and Burns, Lucinda},
  institution = {National Drug and Alcohol Research Centre},
  month = {mar},
  number = {2},
  pages = {1--14},
  title = {{Drugs and The Internet}},
  year = {2014},
  sortyear = {2014-2},
}

@techreport{VanBuskirk2014b,
  address = {Sydney},
  author = {{Van Buskirk}, Joe and Roxburgh, Amanda and Bruno, Raimondo and Burns, Lucinda},
  institution = {National Drug and Alcohol Research Centre},
  month = {sep},
  number = {3},
  pages = {1--5},
  title = {{Drugs and The Internet}},
  year = {2014},
  sortyear = {2014-3},
}

从技术上讲,我们也可以按以下方式排序number,但由于没有办法将排序限制为一种类型(请参阅最近的针对不同的条目类型采用不同的排序方案?@standard如何使用 biblatex/biber调整自定义类型的排序) 可能会扰乱使用 的其他类型的排序number

这是标准nyvt排序的一个版本,其中volume也考虑到了。

\DeclareSortingScheme{nynot}{
  \sort{
    \field{presort}
  }
  \sort[final]{
    \field{sortkey}
  }
  \sort{
    \field{sortname}
    \field{author}
    \field{editor}
    \field{translator}
    \field{sorttitle}
    \field{title}
  }
  \sort{
    \field{sortyear}
    \field{year}
  }
  \sort{
    \field[padside=left,padwidth=4,padchar=0]{number}
    \literal{0000}
  }
  \sort{
    \field{sorttitle}
    \field{title}
  }
}

相关内容