如何在 apa6 bibstyle 中将作者姓名从 ... 缩减为 et al

如何在 apa6 bibstyle 中将作者姓名从 ... 缩减为 et al

我正在使用biblatex并且想用apa6样式减少作者姓名列表。

我使用minbibnamesmaxbibnames配置,但biblatexwithapa6样式提供了“...”后面跟最后一个作者姓名。我想将“...”和最后一个作者姓名更改为 et al。

这是我的示例代码。

\documentclass[a4paper,12pt]{article}
\usepackage{csquotes}
\usepackage{filecontents}
\usepackage[
backend=biber,
style=apa6,
citestyle=numeric-comp,
natbib=true,
date=year,
uniquelist=false,
defernumbers=true,
minbibnames=4,
maxbibnames=6,
eprint=false
]{biblatex}

\makeatletter
\RequireBibliographyStyle{numeric}
\makeatother

\begin{filecontents*}{aa.bib}
@book{ipcc_tech_2013,
    author = {T.F. Stocker and D. Qin and G.-K. Plattner and L.V. Alexander 
      and S.K. Allen and N.L. Bindoff and F.-M. Bréon and J.A. Church 
      and U. Cubasch and S. Emori and P. Forster and P. Friedlingstein 
      and N. Gillett and J.M. Gregory and D.L. Hartmann and E. Jansen 
      and B. Kirtman and R. Knutti and K. Krishna Kumar and P. Lemke 
      and J. Marotzke and V. Masson-Delmotte and G.A. Meehl and I.I. Mokhov 
      and S. Piao and V. Ramaswamy and D. Randall and M. Rhein and M. Rojas 
      and C. Sabine and D. Shindell and L.D. Talley and D.G. Vaughan 
      and S.-P. Xie},
    year = {2020},
    title = {{Technical Summary. I Climate Change 2013: The Physical 
      Science Basis. Contribution of Working Group I to the Fifth Assessment 
      Report of the Intergovernmental Panel on Climate Change}},
    editor = {T.F. Stocker and D. Qin and G.-K. Plattner and M. Tignor 
      and S.K. Allen and J. Boschung and A. Nauels and Y. Xia and V. Bex 
      and P.M. Midgley},
    publisher = {Cambridge University Press},
    address = {Cambridge, United Kingdom and New York, NY, USA},
}
\end{filecontents*}

\addbibresource{aa.bib}
\begin{document}

A citation: \cite{ipcc_tech_2013}

\printbibliography

\end{document}

这就是结果。 在此处输入图片描述

答案1

这种apa6风格以其不寻常的(古怪的??)排版规则而闻名,该规则用于排版 8 位或更多作者的条目。正如您(重新)发现的那样,对于这种情况,它要求显示前 6 位作者,然后是排版省略号,然后是最后一位作者。完全biblatex实现了这一apa6要求——因此故意忽略了您对minbibname和 的设置maxbibname

如果您无法忍受这种格式设置,最好的选择可能是切换到不同的 bib 样式。不幸的是,APA7(通过将选项更改apa6apa)不会给您带来太多帮助,因为它的设置是显示前 19 位 [!!] 作者,然后是...,最后一位作者...

这个讨论实际上忽略了一个非常重要的观点。具体来说,你不应该把精力集中在“修复”字段的显示方式上author,而应该花更多的精力去真正正确地获取书目条目的内容。当然,@book条目类型是不适当对于手头的条目;我相信您应该使用@incollection条目类型。此外,出版年份是2014,而不是2020

一定要学会适应apa6apa或您最终选择的任何样式的格式要求。我敢肯定,您作品的读者不会关心该author字段的显示方式。不过,他们很可能会关心是否能获得有关该作品出版年份的正确信息。

在此处输入图片描述

\documentclass[a4paper,12pt]{article}
\usepackage{csquotes}

\usepackage[style=apa6,
            citestyle=numeric-comp
           ]{biblatex}

\begin{filecontents*}[overwrite]{aa.bib}
@incollection{ipcc_tech_2013,
    author = {T.F. Stocker and D. Qin and G.-K. Plattner and L.V. Alexander 
      and S.K. Allen and N.L. Bindoff and F.-M. Bréon and J.A. Church 
      and U. Cubasch and S. Emori and P. Forster and P. Friedlingstein 
      and N. Gillett and J.M. Gregory and D.L. Hartmann and E. Jansen 
      and B. Kirtman and R. Knutti and K. Krishna Kumar and P. Lemke 
      and J. Marotzke and V. Masson-Delmotte and G.A. Meehl and I.I. Mokhov 
      and S. Piao and V. Ramaswamy and D. Randall and M. Rhein and M. Rojas 
      and C. Sabine and D. Shindell and L.D. Talley and D.G. Vaughan 
      and S.-P. Xie},
    year = {2014},
    title = {{Technical Summary}},
    booktitle = {{Climate Change 2013 --- The Physical Science Basis: 
      Working Group~I Contribution to the Fifth Assessment Report of the 
      Intergovernmental Panel on Climate Change}},
    editor = {T.F. Stocker and D. Qin and G.-K. Plattner and M. Tignor 
      and S.K. Allen and J. Boschung and A. Nauels and Y. Xia and V. Bex 
      and P.M. Midgley},
    publisher = {Cambridge University Press},
    address = {Cambridge, United Kingdom and New York, NY, USA},
    pages   = {31--116},
}
\end{filecontents*}
\addbibresource{aa.bib}

\begin{document}
A citation: \cite{ipcc_tech_2013}
\printbibliography
\end{document}

答案2

我应用了 \DeclareNameFormat{apaauthor}。它有效。请注意,我使用“\renewcommand{\maxprtauth}{6}”来限制作者数量。在我的例子中,maxprtauth 是 6。这意味着我想在参考部分显示 6 个名字。如果某篇文章有超过 6 位作者。它将在最后一个位置替换为“et al”。

       \documentclass[a4paper,12pt]{article}
        \usepackage{csquotes}
        \usepackage{filecontents}
        \usepackage[
        backend=biber,
        style=apa6,
        citestyle=numeric-comp,
        natbib=true,
        date=year,
        uniquelist=false,
        defernumbers=true,
        minbibnames=4,
        maxbibnames=6,
        eprint=false
        ]{biblatex}
        
        \makeatletter
        \RequireBibliographyStyle{numeric}
        \makeatother
        
    
    \renewcommand{\maxprtauth}{6}
    \DeclareNameFormat{apaauthor}{%
        \ifthenelse{\value{listcount}=\maxprtauth\AND\value{listcount}<\value{listtotal}}
        {\addcomma\space et al.\space}
        {\ifthenelse{\value{listcount}>\maxprtauth}
            {}
            {\usebibmacro{name:apa:family-given}%
                {\namepartfamily}%
                {\namepartgiven}%
                {\namepartgiveni}%
                {\namepartprefix}%
                {\namepartsuffix}%
                \let\bibstring\bibcplstring
                %\usebibmacro{role}{}{}%
                \hasitemannotation[\currentname][username]
                {\addspace\mkbibbrackets{\getitemannotation[\currentname][username]}}
                {}}}%
        \ifthenelse{\value{listcount}=\value{listtotal}}%
        {\ifmorenames
            {\printdelim{andothersdelim}%
                \biblcstring{andothers}}
            {}%
            \let\bibstring\bibcplstring
            %\usebibmacro{roles}{}{}
        }
        {}}
    
        \begin{filecontents*}{aa.bib}
        @incollection{ipcc_tech_2013,
    author = {T.F. Stocker and D. Qin and G.-K. Plattner and L.V. Alexander 
      and S.K. Allen and N.L. Bindoff and F.-M. Bréon and J.A. Church 
      and U. Cubasch and S. Emori and P. Forster and P. Friedlingstein 
      and N. Gillett and J.M. Gregory and D.L. Hartmann and E. Jansen 
      and B. Kirtman and R. Knutti and K. Krishna Kumar and P. Lemke 
      and J. Marotzke and V. Masson-Delmotte and G.A. Meehl and I.I. Mokhov 
      and S. Piao and V. Ramaswamy and D. Randall and M. Rhein and M. Rojas 
      and C. Sabine and D. Shindell and L.D. Talley and D.G. Vaughan 
      and S.-P. Xie},
    year = {2014},
    title = {{Technical Summary}},
    booktitle = {{Climate Change 2013 --- The Physical Science Basis: 
      Working Group~I Contribution to the Fifth Assessment Report of the 
      Intergovernmental Panel on Climate Change}},
    editor = {T.F. Stocker and D. Qin and G.-K. Plattner and M. Tignor 
      and S.K. Allen and J. Boschung and A. Nauels and Y. Xia and V. Bex 
      and P.M. Midgley},
    publisher = {Cambridge University Press},
    address = {Cambridge, United Kingdom and New York, NY, USA},
    pages   = {31--116},
}
        \end{filecontents*}
        
    \addbibresource{aa.bib}
    \begin{document}
    
    A citation: \cite{ipcc_tech_2013}
    
    \printbibliography
    
    \end{document}

相关内容