引用 BibLaTeX 条目集作为单独的参考文献

引用 BibLaTeX 条目集作为单独的参考文献

BibLaTeX 允许创建条目集它由一系列引用组成,例如

@set{set1,
    entryset = {member1, member2}
}

但是,当使用 引用这些内容时\cite{set1},所有参考文献在最终参考书目中都显示为单个项目。是否有选项可以将集合中的每个成员显示为单独的项目?本质上,我想实现与 相同的效果\cite{member1,member2},但引用集合名称而不是单个成员。

答案1

从评论中可以看出,条目集不是相关概念,你只是在寻找一个列出几个参考文献的简写。简单的 LaTeX 宏就足够了。只需定义

\newcommand{\myreflist}{key1,key2,...}

然后您可以使用\cite{\myreflist}等来引用这些条目。

这里有一个例子,证明引用排序等功能仍然有效。

示例输出

\documentclass{article}

\usepackage[sortcites=true]{biblatex}
\addbibresource{biblatex-examples.bib}

\newcommand{\myreflist}{westfahl:space,glashow,baez/article}

\begin{document}

Here some citations \cite{\myreflist}.

\printbibliography

\end{document}

答案2

您可以使用usebib包装方式@egreg为此目的。软件包文档几乎包含了所有需要的解释,即以下步骤,应按顺序将其添加到序言中:

  1. 包括\usepackage{usebib}(加载后hyperref);
  2. entryset使用启用密钥\newbibfield{entryset}
  3. \bibinput{filename}将其指向不使用扩展名的 bib 文件.bib
  4. entryset然后您可以使用访问键的值\usebibentry{cite_key}{entryset}

总之,你可以通过 得到你想要的东西\cite{\usebibentry{set1}{entryset}。当然,如果需要,你也可以定义一个简单的新命令来缩短这个命令,例如

\newcommand{\citeset}[1]{\cite{\usebibentry{#1}{entryset}}}

那么你就可以使用了\citeset{set1}。下面是一个最小的工作示例。


测试文件

@misc{foo1,
    author = {Foo, F. and Bar, B.},
    year = {2021},
    title = {Foo 1},
}
@misc{foo2,
    author = {Foo, F. and Bar, B.},
    year = {2021},
    title = {Foo 2},
}
@set{foo,
    entryset = {foo1, foo2}
}

测试.tex

\documentclass{article}

\usepackage{biblatex}
\addbibresource{test.bib}

\usepackage{usebib}
\newbibfield{entryset}
\bibinput{test}

\begin{document}

This is the entryset key: \usebibentry{foo}{entryset}

Here we cite foo as individual references.\autocite{\usebibentry{foo}{entryset}}

\printbibliography
\end{document}

结果

引用一组作为单独的参考文献

相关内容