自定义参考书目样式 Alpha

自定义参考书目样式 Alpha

我正在尝试使用 alpha 书目样式,但我必须对其进行自定义。我的 .bib 文件中的内容是:

@book{laue,
    Author = {Kurt Laue and Helmut Stenger},
    Date-Added = {2014-05-06 20:55:13 +0000},
    Date-Modified = {2014-05-06 20:55:42 +0000},
    Title = {Strangpressen: Verfahren, Maschinen, Werkzeuge},
    Year = {1976}}

我自然会得到:

在此处输入图片描述

但与此相反,我希望参考书目和引文显示为 [LAU76] 而不是 [LS76]。我的意思是,我希望所有引文都显示第一作者的前 3 个字母(大写)和出版年份。

我该怎么做?谢谢...

答案1

您可以使用 重新定义 Biber 创建标签的方式\DeclareLabelalphaTemplate

\renewcommand*{\labelalphaothers}{}

这是为了消除+作者数量超过的情况maxnames

\DeclareLabelalphaTemplate{
  \labelelement{
    \field[final]{shorthand}
    \field{label}
    \field[strwidth=3,strside=left]{labelname}
  }
  \labelelement{
    \field[strwidth=2,strside=right]{year}    
  }
}

这总是取第一作者姓氏的前三个名字并添加年份的最后两位数字。

我们还设定maxalphanames=1minalphanames=1

\usepackage[maxalphanames=1, minalphanames=1, style=alphabetic, backend=biber]{biblatex}

平均能量损失

\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{laue,
    Author = {Kurt Laue and Helmut Stenger},
    Date-Added = {2014-05-06 20:55:13 +0000},
    Date-Modified = {2014-05-06 20:55:42 +0000},
    Title = {Strangpressen: Verfahren, Maschinen, Werkzeuge},
    Year = {1976}}
\end{filecontents*}
\usepackage[maxalphanames=1, minalphanames=1, style=alphabetic, backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}
\addbibresource{\jobname.bib}

\renewcommand*{\labelalphaothers}{}

\DeclareLabelalphaTemplate{
  \labelelement{
    \field[final]{shorthand}
    \field{label}
    \field[strwidth=3,strside=left]{labelname}
  }
  \labelelement{
    \field[strwidth=2,strside=right]{year}    
  }
}

\begin{document}
  \cite{laue,wilde,baez/article,cicero}
  \printbibliography
\end{document}

在此处输入图片描述

答案2

如果你不喜欢正确的方法,我建议你采用一种破解方法:

\newcommand{\Bibkeyhack}[3]{}

像使用它一样

author = {This Is The Author\Bibkeyhack LAU}

完整答案这里

相关内容