Wie kann ich die Organisation in einer Veröffentlichung als Ersatz für Autor oder Herausgeber verwenden, wenn ich das Zitatlabel für den alphabetic
Stil in Biblatex generiere?
Ich weiß, dass ich das Feld verwenden kann, label
um manuell ein Label zuzuweisen, aber eine automatische Lösung wäre schön.
MWE:
\documentclass{article}
\usepackage{filecontents}
\usepackage[style=alphabetic,backend=biber]{biblatex}
\bibliography{test}
\begin{filecontents}{test.bib}
@online{Wikipedia2017,
date = {2016-12-20},
organization = {Wikipedia},
title = {Resource contention},
url = {https://en.wikipedia.org/w/index.php?oldid=755891262},
urldate = {2017-04-26}
}
@techreport{Volpe2000,
author = {Volpe, Richard and Nesnas, Issa A. D. and Estlin, Tara and Mutz, Darren and Petras, Richard and Das, Hari},
date = {2000},
institution = {Jet Propulsion Laboratory, California Institute of Technology},
location = {Pasadena, California},
title = {{CLARAty}: Coupled Layer Architecture for Robotic Autonomy}
}
\end{filecontents}
\begin{document}
This is a test~\autocite{Wikipedia2017}. And this works as expected~\autocite{Volpe2000}.
\printbibliography{}
\end{document}
Ich würde stattdessen gerne ein Etikett wie dieses sehen Wik16
.
Antwort1
Versuchen
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=organization, final]
\step[fieldset=usera, origfieldval]
}
}
}
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{label}
\field[strwidth=3,strside=left,ifnames=1]{labelname}
\field[strwidth=1,strside=left]{labelname}
\field[strwidth=3]{usera}
}
\labelelement{
\field[strwidth=2,strside=right]{year}
}
}
Da organization
es sich um eine Liste handelt, \DeclareLabelalphaTemplate
können wir damit nicht richtig umgehen. Wir müssen also den Inhalt in ein Feld kopieren, das keine Liste ist ( usera
damit wir kein neues Datenmodell definieren müssen). Dann können wir es in \labelelement
verwenden \DeclareLabelalphaTemplate
.