是否有可能在文档中间更改 biblatex 的 maxnames 选项?
背景:我在论文末尾附上了一份我自己发表的论文清单。我还附上了一些我不是第一作者的论文,所以我需要在这里显示完整的作者名单。
我发现最有帮助的评论是这个问题。
据我所理解:
如果不进行一些额外的工作和重复 bib 文件中的条目,则使用 .bib 文件中的选项字段将不起作用,因为我可能会在主文档(其中我只想最多显示 maxnames)和我的出版物列表(其中我需要完整的作者列表)中引用同一篇文章。
将我自己的文章复制到第二个文件中是可能的。我仍然更喜欢纯粹的 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
。