我使用 biblatex 和 biber 来编制参考书目,但我遇到的问题是,我需要将参考书目的子集采用详细格式(所有作者的 5 条参考文献),而在文档的另一个位置,我需要尽可能压缩所有条目(大约 200-300 条参考文献)。
因此我目前使用style=numeric-comp
和maxnames=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 个名称;在第二种情况下,它将执行相同的操作,但在第一个名称之后。