Настроить стиль библиографии 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]. Я имею в виду, я хотел бы, чтобы все мои цитаты отображались первыми тремя буквами (заглавными) первого автора и годом публикации.

Как мне это сделать? Спасибо...

решение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=1иminalphanames=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}

Полный ответздесь.

Связанный контент