這字母的biblatex 的風格已經非常接近我的要求,但考慮到以下條目
@BOOK{smith1,
author = {John Smith and Mike Someone},
title = {The book with a very very very very very long title},
year = {2005},
publisher = {Publisher},
location = {New York}
}
我想要一個像這樣的標籤[史密斯,2005]而不是[Smi+05]。換句話說:
[<first author's last name>, <year with 4 digits>]
如果有多個條目具有相同的作者和相同的年份,則應在年份後面加上一個字母,如下所示[史密斯,2005a](字母的預設已經這樣做了)。
答案1
使用biblatex 2+
和biber 1+
您可以使用 自訂字母標籤\DeclareLabelalphaTemplate
。這是一個例子。
\documentclass{article}
\usepackage[style=alphabetic,maxalphanames=1]{biblatex}
\addbibresource{biblatex-examples.bib}
\renewcommand*{\labelalphaothers}{}
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{labelname}
\field{label}
}
\labelelement{
\literal{,\addhighpenspace}
}
\labelelement{
\field{year}
}
}
\begin{document}
\cite{knuth:ct:a,knuth:ct:b,knuth:ct:c,baez/article,baez/online}
\printbibliography
\end{document}
一些注意事項:
的參數
\literal
應該在全域範圍內定義。通常我們會指定一個或多個字元。我們也可以使用 的biblatex
空白指令。與biblatex
的標點符號命令(例如)不同\addcomma
,它們不限於引文和參考書目。透過修改作者年份樣式,可以使用 BibTeX 獲得類似的結果(例如biblatex 或 natbib 中的authordate2 等參考書目樣式?),但是在參考書目中獲得正確的項目標籤對齊並不容易。