alphabetic
Biblatex에서 스타일 에 대한 인용 라벨을 생성할 때 저자나 편집자를 대신하여 출판물의 조직을 어떻게 사용할 수 있습니까 ?
label
필드를 사용하여 수동으로 레이블을 할당 할 수 있다는 것을 알고 있지만 자동 솔루션이 좋을 것입니다.
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}
대신에 다음과 같은 라벨을 보고 싶습니다 Wik16
.
답변1
노력하다
\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}
}
}
organization
목록이 \DeclareLabelalphaTemplate
제대로 처리할 수 없기 때문입니다 . 따라서 목록이 아닌 필드에 내용을 복사해야 합니다( usera
따라서 새 데이터 모델을 정의할 필요가 없습니다). 그런 다음 \labelelement
of 에서 사용할 수 있습니다 \DeclareLabelalphaTemplate
.