有没有现成的款式可以做到这一点?我最接近的款式是三个字母对于单个作者,这对我来说似乎很奇怪。例如,[God31] 而不是 [G31]。
答案1
可以通过创建标签模板来解决此问题,如文档第 4.5.5 节所述biblatex
:
\documentclass{article}
\usepackage[style=alphabetic,minalphanames=3]{biblatex}
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{label}
\field[strwidth=1,strside=left]{labelname}
}
\labelelement{
\field[strwidth=2,strside=right]{year}
}
}
\DeclareLabelalphaNameTemplate{
\namepart[use=true, pre=true, strwidth=1, compound=true]{prefix}
\namepart{family}
}
\addbibresource{biblatex-examples.bib}
\begin{document}
\autocite{padhye,murray,glashow}
\printbibliography
\end{document}
在此示例中,我已将 设置minalphanames
为 3,这将生成最多 3 位作者的姓名首字母,然后为其他作者添加。您可以根据需要+
更改这些值(以及)。maxalphanames
如何在 LyX 中执行此操作
我不完全理解 LyX 如何与 LaTeX 前言交互,将代码放入其中似乎不起作用。但有一种方法可以做到。myalpha.bbx
在 LyX 文档所在的文件夹或本地texmf
文件夹中创建以下文件:( <path-to-local-texmf>/tex/latex/biblatex/bbx
如果不存在,请创建此文件夹。)
\ProvidesFile{myalpha.bbx}
\RequireBibliographyStyle{alphabetic}
\DeclareLabelalphaTemplate{
\labelelement{
\field[final]{shorthand}
\field{label}
\field[strwidth=1,strside=left]{labelname}
}
\labelelement{
\field[strwidth=2,strside=right]{year}
}
}
\DeclareLabelalphaNameTemplate{
\namepart[use=true, pre=true, strwidth=1, compound=true]{prefix}
\namepart{family}
}
然后在文档设置 -> 参考书目中使用myalpha
作为bibliography
样式,并alphabetic
使用作为引用样式,并将添加minalphanames=3
到引用样式选项中,如本屏幕截图所示。忽略“变体”选择为“作者-年份”这一事实,因为这将被您单独选择的样式覆盖。
至少根据我的有限测试(从未使用过 LyX),这似乎是有效的。