biblatex 中有三位作者的 APA 格式

biblatex 中有三位作者的 APA 格式

我想知道为什么使用biblatexwith时style = apa,我的文本中没有.et al超过 3 位作者的缩写。我想不出任何合理的解释,也许有人在我的 latex 序言中看到了我没看到的东西。

\documentclass[12pt]{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}


\usepackage[
backend = biber, 
style = apa, 
defernumbers=false,
uniquelist=true]{biblatex}
\DeclareLanguageMapping{english}{american-apa}

\usepackage{xpatch}

\AtEveryCitekey{\ifciteseen{}{\clearfield{namehash}}}

\xpatchbibmacro{cite}
  {\printnames{labelname}}
  {\ifciteseen
     {\printnames{labelname}}
     {\printnames[][1-99]{labelname}}}
  {}
  {}

 \xpatchbibmacro{textcite}
  {\printnames{labelname}}
  {\ifciteseen
     {\printnames{labelname}}
     {\printnames[][1-99]{labelname}}}
  {}
  {}


\addbibresource{dummy_lit.bib} %name of the .bib file with my references

\begin{document}

I would like to have the abbreviation "et. al" in the running text whenever the references have more than three authors and not this:

\textcite{Author2000}


\end{document}

这是我的 bib 条目,存储在一个单独的文件中,名为:dummy_lit.bib

 @Article{Author2000,
   author       =  {Last name1, Firstname 1 and Last name2, First name2 and Last name3, First name3 and Last name4, First name4 and Last name5, First name5},
   title        =  {The title of my article},
   journal      =  {The journal},
   year         =  {2000},
   volume       =  {1},
   number       =  {2},
   pages        =  {1-10},
   keywords     =  {ref}
}

答案1

APA 格式要求在第一次引用时最多显示五位作者的完整列表,在后续引用中,三到五位作者的列表仅缩写为“et al.” 。例如,请参阅http://blog.apastyle.org/apastyle/2011/11/the-proper-use-of-et-al-in-apa-style.html或美国心理学会出版手册中的6.11和6.12。

确实,如果您引用有五位作者的条目两次,您就会得到结果。

\documentclass[12pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[backend = biber, style = apa]{biblatex}

\addbibresource{biblatex-examples.bib}

\begin{document}
\textcite{herrmann}

\textcite{herrmann}
\end{document}

Herrmann、Öfele、Schneider、Herdtweck 和 Hoffmann (2006)//Herrmann 等人 (2006)

因此,这是 所实现的 APA 样式的预期行为biblatex-apa

如果你想改变这种行为,看看为 biblatex-apa 设置 maxcitenames\apamaxcitenames在示例中设置为 3。

请注意,您的两个\xpatchbibmacro调用没有任何作用,因为修补的代码不存在于您正在修补的宏中。

相关内容