使用 biblatex 更改文档中间的最大数量

使用 biblatex 更改文档中间的最大数量

是否有可能在文档中间更改 biblatex 的 maxnames 选项?

背景:我在论文末尾附上了一份我自己发表的论文清单。我还附上了一些我不是第一作者的论文,所以我需要在这里显示完整的作者名单。

我发现最有帮助的评论是这个问题

据我所理解:

  1. 如果不进行一些额外的工作和重复 bib 文件中的条目,则使用 .bib 文件中的选项字段将不起作用,因为我可能会在主文档(其中我只想最多显示 maxnames)和我的出版物列表(其中我需要完整的作者列表)中引用同一篇文章。

  2. 将我自己的文章复制到第二个文件中是可能的。我仍然更喜欢纯粹的 biblatex 解决方案,而不需要调整 .bib 文件。但是,如果这是唯一的方法,我也需要有关如何使其正常工作的建议。

提前谢谢了!

问候,安德烈亚斯

以下是 MWE:

\documentclass{article}
\usepackage{biblatex}
\usepackage{currvita}

% just for demonstration
\ExecuteBibliographyOptions{maxnames=3}
\addbibresource{biblatex-examples.bib}

\begin{document}
\section{Main Document}
Here I write about our method \parencite{herrmann}.

\printbibliography

\clearpage
\begin{cv}{Max Mustermann}

  %% personal information
  \begin{cvlist}{Personal Information}
    \item[Date of Birth] 01 March 2013
    \item[Place of Birth] Berlin
    \item[Nationality] German
  \end{cvlist}

  %% Publications
  %% \ExecuteBibliographyOptions{maxnames=99}
  \setlength{\cvlabelwidth}{0mm}
  \begin{cvlist}{Publications}
    \item \fullcite{herrmann}
  \end{cvlist}

\end{cv}

\end{document}

答案1

如果你要通过\fullcite命令填充“出版物列表”,则可以发出命令

\AtNextCitekey{\defcounter{maxnames}{99}}

\fullcite在“出版物清单”中的每个出版物之前。

梅威瑟:

\documentclass{article}
\usepackage{biblatex}
\usepackage{currvita}

% just for demonstration
%\ExecuteBibliographyOptions{maxnames=3}
\addbibresource{biblatex-examples.bib}

\begin{document}
\section{Main Document}
Here I write about our method \parencite{herrmann}.

\printbibliography

\clearpage
\begin{cv}{Max Mustermann}

  %% personal information
  \begin{cvlist}{Personal Information}
    \item[Date of Birth] 01 March 2013
    \item[Place of Birth] Berlin
    \item[Nationality] German
  \end{cvlist}

  %% Publications
  %% \ExecuteBibliographyOptions{maxnames=99}
  \setlength{\cvlabelwidth}{0mm}
  \begin{cvlist}{Publications}
    \AtNextCitekey{\defcounter{maxnames}{99}}
    \item \fullcite{herrmann}
  \end{cvlist}

\end{cv}

\end{document} 

输出:

在此处输入图片描述

否则,如果您没有使用像\fullcite“出版物列表”之前的命令,请biblatex使用以下选项加载maxcitenames=99,maxbibnames=3

\usepackage[maxcitenames=99,maxbibnames=3]{biblatex}

如果你要打印第二份参考书目,请发出命令

\AtNextBibliography{\defcounter{maxnames}{99}}

就在它之前,您将获得第一个参考书目maxnames=3,第二个参考书目maxnames=99

相关内容