natbib 和 aaai-named

natbib 和 aaai-named

我必须使用样式aaai-named

我想在 Overleaf 中使用它。我尝试使用该.bst文件并按以下方式集成它:

\documentclass{article}

\usepackage[style=authoryear]{natbib}
\bibliographystyle{aaai-named}

\begin{document}

  \citep{latexcompanion}

  \bibliography{references.bib}

\end{document}

这工作正常,但是

  1. 我想使用biblatexnatbib
  2. 引用没有整合,因为我通过执行\cite(),,\citep{}...只得到了(作者)而不是[作者,年份]。

有人能帮忙整合一下吗?或者有人知道 Overleaf 支持的类似风格吗?

答案1

biblatex与 BibTeX 使用的文件不兼容.bst。因此您不能biblatex与一起使用aaai-namedaaai-named但是,它与兼容natbib,因此以下 MWE 对我来说工作正常。

natbib作者年份模式通过选项输入authoryear 没有 style=前缀。natbibsquare选项为您的引用提供了方括号。

\documentclass{article}

\usepackage[authoryear,square]{natbib}
\bibliographystyle{aaai-named}

%\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{latexcompanion,
  author    = {Michel Goossens and Frank Mittelbach
               and Alexander Samarin},
  title     = {The \LaTeX\ Companion},
  year      = {1993},
  publisher = {Addison-Wesley},
  location  = {Reading, Massachusetts}
}
\end{filecontents}

\begin{document}
\citep{latexcompanion}
\bibliography{\jobname}
\end{document}

[Goossens 等人,1993 年]

该命令\bibliography采用文件名参数,不带文件扩展名。


natbib默认情况下不显示参考书目中的作者年份标签(大概是因为它们通常与作者年份兼容的参考书目样式是多余的,但我承认年份出现在末尾这一事实aaai-named使得标签更具吸引力)。

如果你不需要的扩展功能,你可以使用在评论中建议的natbib以下修改\citeaaai-named.bst

\documentclass{article}

\bibliographystyle{aaai-named}

\makeatletter
\let\@internalcite\cite
\def\cite{\def\citename##1{##1}\@internalcite}
\def\shortcite{\def\citename##1{}\@internalcite}
\def\@biblabel#1{\def\citename##1{##1}[#1]\hfill}
\makeatother

%\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{latexcompanion,
  author    = {Michel Goossens and Frank Mittelbach
               and Alexander Samarin},
  title     = {The \LaTeX\ Companion},
  year      = {1993},
  publisher = {Addison-Wesley},
  location  = {Reading, Massachusetts}
}
\end{filecontents}

\begin{document}
\cite{latexcompanion}
\bibliography{\jobname}
\end{document}

相关内容