我开始使用 Biber+BiblateX,我想让它以作者首字母列表的形式生成引文,类似于字母样式。
相似是关键词:字母样式在字母末尾添加文本写作年份的最后两位数字,但我希望只显示作者而不是年份。
是否有捷径可寻?
为了更好地理解,我想引用一段文字
L.Da Vinci 和 F. Pisano,《论飞翔的苍蝇》(1973 年)。
获取作为 cite 的输出
[摄影]
代替
[DP73]。
提前致谢。
答案1
通过 Biber,我们几乎可以完全控制字母样式的标签。
相关命令是\DeclareLabelalphaTemplate
(参见§4.5.4 标签,第 163-168 页文档biblatex
)。
为了你的目的
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{label}
\field[strwidth=3,strside=left,ifnames=1]{labelname}
\field[strwidth=1,strside=left]{labelname}
}
}
似乎是合适的:如果我们有一个label
或shorthand
字段,那些会覆盖任何自动标签选择,否则我们只使用单个作者的前三个字母(或在 et al 的情况下截断第一个字母),以及任何其他数量的作者的姓氏的首字母。
和
\DeclareFieldFormat{extraalpha}{#1}
如果需要,您可以控制添加的消歧义的格式。
平均能量损失
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[backend=biber,style=alphabetic]{biblatex}
\addbibresource{biblatex-examples.bib}
\DeclareFieldFormat{extraalpha}{#1}
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{label}
\field[strwidth=3,strside=left,ifnames=1]{labelname}
\field[strwidth=1,strside=left]{labelname}
}
}
\begin{document}
\cite{worman,geer,baez/article,wilde,knuth:ct:a,knuth:ct:b}
\printbibliography
\end{document}
请注意,[Knu1] 和 [Knu2] 添加了“额外标签”以帮助区分它们。