Biblatex:使用不同的样式打印两次参考书目

Biblatex:使用不同的样式打印两次参考书目

正如标题所述,我需要打印两次参考书目。我已经完成了论文并使用 biblatex 引用了所有内容。

我基本上需要一个具有数字样式的参考书目,然后需要另一个按字母顺序列出所有条目的参考书目,没有数字,而是“详细”样式。

有什么办法吗?据我了解,当我包含 biblatex 包时,我需要指定 bibstyle。提前致谢。

答案1

一般情况下,在文档中途切换引用或参考书目样式是不可能的。但在许多情况下,有变通方法可以实现所需的效果。

抛开选项不谈,书目和样式书目(最终只是书目)dashed之间的代码差异并不大。最大的区别是书目环境和 的名称格式。我们只需从 复制相关部分即可。numericverboseauthortitlesortnameauthortitle.bbx

更有趣的问题是排序。排序通常由所谓的 s 处理refcontext。如果更改排序,则切换到不同的refcontext。排序不是 控制的唯一内容refcontext,因此切换也可能影响其他细节(特别是它可能会更改消歧义计算)。这在本设置中不应成为问题,但在不同的上下文中可能成为问题。对于我们来说,明确告知在引用中biblatex使用就足够了。(这是必要的,因为通常使用最后一个用于引用的条目。在我们的例子中,这将是第二个作者-标题书目,其排序顺序错误。)sorting=none,\assignrefcontextentries[sorting=none]{*}biblatexrefcontext

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[backend=biber, style=numeric, sorting=none]{biblatex}

\assignrefcontextentries[sorting=none]{*}

\newcommand*{\InitializeAuthorTitleBibliography}{%
  \setlength{\bibitemsep}{0pt}%
  \DeclareNameAlias{author}{sortname}%
  \DeclareNameAlias{editor}{sortname}%
  \DeclareNameAlias{translator}{sortname}%
  \DeclareNameWrapperAlias{author}{sortname}%
  \DeclareNameWrapperAlias{editor}{sortname}%
  \DeclareNameWrapperAlias{translator}{sortname}}

\defbibenvironment{authotitlebib}
  {\InitializeAuthorTitleBibliography
   \list
     {}
     {\setlength{\leftmargin}{\bibhang}%
      \setlength{\itemindent}{-\leftmargin}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}}
  {\endlist}
  {\item}

\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem \autocite{sigfridsson,worman}
dolor \autocite{nussbaum}
ipsum \autocite{geer}
amet \autocite{sigfridsson,aksin,herrmann}

\printbibliography

\newrefcontext[sorting=nty]
\printbibliography[env=authotitlebib, title={Author-Title \refname}]
\end{document}

数字引用、数字书目、作者标题书目。

相关内容