仅使用首字母缩写的引用样式,例如

仅使用首字母缩写的引用样式,例如

有没有现成的款式可以做到这一点?我最接近的款式是三个字母对于单个作者,这对我来说似乎很奇怪。例如,[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),这似乎是有效的。

LyX 截图

相关内容