2

I am using biblatex and I would like to reduce the author name list with apa6 style.

I use minbibnames and maxbibnames config but the biblatex with apa6 style provides "..." follow with last author name. I would like to change "..." and the last author name to et al.

This is my sample code.

\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}

This the result. enter image description here

2
  • 2
    See tex.stackexchange.com/q/577037/35864 for a similar question with style=apa, (biblatex-apa) instead of style=apa6, (biblatex-apa6). In principle a similar approach could be used here as well. In your case, though, you are already doing lots of stuff that makes your output very un-APA-y, so maybe you should just drop biblatex-apa(6) completely: The style is really not meant to be used as basis for a custom style. It's sole purpose is to implement APA style as faithfully as possible in LaTeX.
    – moewe
    Commented Dec 31, 2020 at 13:49
  • Thanks, @moewe. I followed that comment. I have to reformat a style and It seems to work. Commented Jan 1, 2021 at 7:21

2 Answers 2

1

The apa6 style is known, among other things, for its unusual (quirky??) rules for typesetting entries with 8 or more authors. As you've (re)discovered, for such cases it requires showing the first 6 authors, then a typographic ellipsis, then the final author. biblatex implements this apa6 requirement exactly -- and therefore deliberately disregards your settings for minbibname and maxbibname.

If you can't stand this formatting setting, your best option is probably to switch to a different bib style. Unfortunately, APA7 -- which is what you get by changing the apa6 option to apa -- won't offer you much relief in this regard, as its setting is to show the first 19 [!!] authors, followed by ..., followed by the final author...

This discussion is actually missing a very important point. Specifically, instead of focusing your energy on "fixing" the way the author field is displayed, you should work harder on actually getting the contents of the bibliographic entry right. For sure, the @book entry type is not appropriate for the entry at hand; I believe you should be using the @incollection entry type. Also, the publication year was 2014, not 2020.

Do learn to live with the formatting requirements of apa6, apa, or whatever style you end up choosing. I'm pretty sure that the readers of your piece won't care a whit about how the author field is displayed. They may very well care, though, about being given the correct information about the publication year of the piece in question.

enter image description here

\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}
1

I apply \DeclareNameFormat{apaauthor}. It works. Note that, I use "\renewcommand{\maxprtauth}{6}" to limit an author number. In my case, the maxprtauth is 6. It means that I would like to show 6 names in the ref section. If some article has more than 6 authors. It will be replaced with "et al" in the last position.

       \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}
2
  • Why do you keep using the @book entry type? In my earlier answer, I showed that it's the wrong entry type -- and that you should be using the @incollection entry type. Moreover, the contents of the year and title fields also continue to be wrong.
    – Mico
    Commented Jan 1, 2021 at 7:46
  • Thank you @Mico, I have edited my code and changed book to incollection. In my case, I just want to change the author's format. I know the reader doesn't care about the format but the librarian they very strict about the format. I am so sorry for the bib content. I just pick an example from somewhere and change some contents to generate an example author format for my case. Commented Jan 4, 2021 at 8:04

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .