我在用着比布拉特克斯与alphabetic
风格。
如果有多位作者,则取每一位作者的首字母(第一个例子),但是我希望只有第一作者(第二个例子,但如果有多个作者也是如此) - 我该如何实现这一点?我无法在 biblatex 中找到相应的选项。
虽然会有加倍,但在这种情况下方括号中的两个符号应该相同。
其他例子:
应该是[Box60]和[Box51]。
我的最小例子:
\documentclass{article}
\usepackage[backend=bibtex,style=alphabetic]{biblatex}
\begin{filecontents}{references.bib}
@ARTICLE{boxwilson,
author={Box, G. E. P. and Wilson, K. B. },
journal={Journal of the Royal Statistical Society. Series B (Methodological)},
title={On the Experimental Attainment of Optimum Conditions},
year={1951},
volume={13},
number={1},
pages={1-45},
,}
}
\end{filecontents}
\bibliography{references.bib}
\begin{document}
\cite{boxwilson}
\printbibliography
\end{document}
重复条目之间的区别是可以的:[Box60a] 和 [Box60b]。
谢谢你!
编辑:
任何带有 bibtex 后端解决方案的 Biblatex 仍然会受到赞赏!
答案1
这可以通过 来完成\DeclareLabelalphaTemplate
。但是此命令仅适用于 Biber,因此您必须切换后端。
首先,我们用 去掉“et al.”/and others 标记\renewcommand*{\labelalphaothers}{}
。然后我们定义
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{label}
\field[strwidth=3,strside=left,names=1]{labelname}
}
\labelelement{
\field[strwidth=2,strside=right]{year}
}
}
仅取第一作者姓名的前三个字母作为标签的名称部分。
这将消除因添加字母而产生歧义的标签;如果你不能接受这个功能,可以尝试
\DeclareFieldFormat{extraalpha}{}
平均能量损失
\documentclass{article}
\usepackage[backend=biber,style=alphabetic]{biblatex}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@ARTICLE{boxwilson,
author={Box, G. E. P. and Wilson, K. B.},
journal={Journal of the Royal Statistical Society. Series B (Methodological)},
title={On the Experimental Attainment of Optimum Conditions},
year={1951},
volume={13},
number={1},
pages={1-45},
}
@ARTICLE{boxwilson60,
author={Box, G. E. P. and Behnken, D. W.},
journal={Some Journal},
title={Torque Analysis},
year={1960},
volume={12},
number={1},
pages={1-45},
}
\end{filecontents*}
\renewcommand*{\labelalphaothers}{}
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{label}
\field[strwidth=3,strside=left,names=1]{labelname}
}
\labelelement{
\field[strwidth=2,strside=right]{year}
}
}
\bibliography{\jobname.bib}
\begin{document}
\cite{boxwilson,boxwilson60}
\printbibliography
\end{document}