I'm using the biblatex
package to add citations and a bibliography to my LaTeX document. I've noticed that only the first author plus "et al." is displayed for works with more than three authors. That's fine with me for in-text-citations, but I'd rather have the complete author information in the bibliography. How can I do that?
2 Answers
UPDATE
Simply set the package option maxbibnames=99
in the preamble.
\usepackage[maxbibnames=99]{biblatex}
There are also other options:
minalphanames
: the minimum number of alphabetic authors to be displayed.minbibnames
: the minimum number of authors displayed in bibliography.mincitenames
: the minimum number of authors displayed in citations.minnames
: sets bothminbibnames
andmincitenames
maxalphanames
: the maximum number of alphabetic authors to be displayed.maxbibnames
: the maximum number of authors displayed in bibliography.maxcitenames
: the maximum number of authors displayed in citations.maxnames
: sets bothmaxbibnames
andmaxcitenames
. Default value is3
.
Notes
biblatex
1.1, which was released on January 5th, 2011, introduced the options maxbibnames
, minbibnames
, maxcitenames
and mincitenames
(settable in the document preamble and in the configuration file biblatex.cfg
).
biblatex
1.6, which was released on July 29th, 2011, "removed the local max/minnames and max/minitems options from \printbibliography
and friends to enforce consistency. Please use the global options instead." (Release notes)
ORIGINAL ANSWER:
The maximum number of displayed authors - both for in-text-citations and the bibliography - is controlled by the option maxnames
(with a default value of 3). To show all authors only in the bibliography, don't change the value of maxnames
in the document preamble, but use the optional argument of \printbibliography
instead: Type
\printbibliography[maxnames=99]
at the place in your document where you want the bibliography to appear.
If you want all bibliographies (and lists of shorthands) in all your LaTeX documents to display the complete author information, instead of typing [maxnames=99]
every time, you can add the following code to the configuration file biblatex.cfg
:
\newcounter{bibmaxnames}
\setcounter{bibmaxnames}{99}
\patchcmd{\blx@printbibliography}{#1}{#1,maxnames=\thebibmaxnames}{}{}
\patchcmd{\blx@bibbysection}{#1}{#1,maxnames=\thebibmaxnames}{}{}
\patchcmd{\blx@bibbysegment}{#1}{#1,maxnames=\thebibmaxnames}{}{}
\patchcmd{\blx@bibbycategory}{#1}{#1,maxnames=\thebibmaxnames}{}{}
\patchcmd{\blx@printshorthands}{#1}{#1,maxnames=\thebibmaxnames}{}{}
Note that is a hack which uses internal biblatex
commands and hopefully will be replaced by a proper package option in a later version of biblatex
(the current version is 0.9b). (\patchcmd
derives from the etoolbox
package, which is loaded automatically by biblatex
.)
-
12+1 for coming back and updating, although I think the updates should go at the top of the post, so newcomers avoid using archaic methods. Commented Oct 10, 2012 at 4:36
-
2As a member of the CTA Collaboration, 99 is not nearly enough. Same goes for Collaborations like ATLAS or CMS :D– MaxNoeCommented Mar 10, 2017 at 17:02
-
Its so cool...And this is not working with `\fullcite'.. How to achieve that? @lockstep– DavidCommented Jun 20, 2017 at 5:26
-
1If I use
maxnames
inprintbibliography
I get the error ``Package xkeyval Error: maxnames undefined in families blx@bib2'' It works when I put this option when Iusepackage
biblatex Commented Oct 25, 2022 at 14:00
Check the option maxnames
and set it to a large value.
-
10This changes the number of names in in-text citations as well. The correct option for only setting the value in the bibliography is
maxbibnames
(from page 45 of the manual). Note that if you setmaxbibnames
beforemaxnames
, themaxnames
setting will override themaxbibnames
setting. Commented Oct 10, 2012 at 4:34