如何在一个文档中呈现参考书目的普通版本和压缩版本?

如何在一个文档中呈现参考书目的普通版本和压缩版本?

我使用 biblatex 和 biber 来编制参考书目,但我遇到的问题是,我需要将参考书目的子集采用详细格式(所有作者的 5 条参考文献),而在文档的另一个位置,我需要尽可能压缩所有条目(大约 200-300 条参考文献)。

因此我目前使用style=numeric-compmaxnames=1。缺点是maxnames自 biblatex 1.6 以来这些选项都是全局选项。(目前我使用 biblatex 1.7)

那么,如何以详细样式呈现子集并以压缩样式呈现其余部分?

答案1

您可以使用

\makeatletter
\numdef\blx@maxbibnames{99}
\makeatother

\printbibliography

\makeatletter
\numdef\blx@maxbibnames{1}
\makeatother

\printbibliography

该行\numdef\blx@maxbibnames{x}是选项执行的命令maxnames=x。因此,在第一种情况下,它将在切换到 et al 之前打印 99 个名称;在第二种情况下,它将执行相同的操作,但在第一个名称之后。

相关内容