In general I recommend not to use biblatex-apa
if you want a bibliography or citation style different from APA style. biblatex-apa
was specifically written to comply to APA style in all its glory and with all its gory details. It can be extremely complicated to get biblatex-apa
to change its behaviour even if "it should be easy".
(min|max)citenames
citestyle=authoryear,style=apa
is equivalent to style=apa
. biblatex-apa
, in particular its citation style, does not obey (max|min)citenames
as explained in APA style in biblatex with three authors and elsewhere because the APA requires special behaviour when truncating authors. With
style=apa,citestyle=authoryear
(which is equivalent to bibstyle=apa,citestyle=authoryear
) the citation style is authoryear
and (min|max)citenames
is honoured.
square brackets for citations
That is very easy with styles of my biblatex-ext
bundle. Simply use
citestyle=ext-authoryear
instead of citestyle=authoryear
and issue
\DeclareOuterCiteDelims{parencite}{\bibopenbracket}{\bibclosebracket}
then set autocite=inline
and use \autocite
as your go-to citation command.
Replace "&" with "and"
This suggests that you actually don't want (bib)style=apa
at all. Maybe style=authoryear
or style=ext-authoryear
already gives you what you want. If you insist on apa
you need
\DeclareDelimFormat[bib,biblist]{finalnamedelim}{%
\ifthenelse{\value{listcount}>\maxprtauth}
{}
{\ifthenelse{\value{liststop}>2}
{\finalandcomma\addspace\bibstring{and}\space}
{\addspace\bibstring{and}\space}}}
\DeclareDelimFormat[bib,biblist]{finalnamedelim:apa:family-given}{%
\ifthenelse{\value{listcount}>\maxprtauth}
{}
{\finalandcomma\addspace\bibstring{and}\space}}
In total with apa
bibliography style
\documentclass{article}
\usepackage[style=apa,citestyle=ext-authoryear,maxcitenames=2,mincitenames=2,autocite=inline]{biblatex}
\DeclareOuterCiteDelims{parencite}{\bibopenbracket}{\bibclosebracket}
\DeclareDelimFormat[bib,biblist]{finalnamedelim}{%
\ifthenelse{\value{listcount}>\maxprtauth}
{}
{\ifthenelse{\value{liststop}>2}
{\finalandcomma\addspace\bibstring{and}\space}
{\addspace\bibstring{and}\space}}}
\DeclareDelimFormat[bib,biblist]{finalnamedelim:apa:family-given}{%
\ifthenelse{\value{listcount}>\maxprtauth}
{}
{\finalandcomma\addspace\bibstring{and}\space}}
\begin{filecontents}{\jobname.bib}
@article{Nachbagauer2015,
author = {Karin Nachbagauer and Stefan Oberpeilsteiner and Karim Sherif and Wolfgang Steiner},
title = {The Use of the Adjoint Method for Solving Typical Optimization Problems in Multibody Dynamics},
journal = {Journal of Computational and Nonlinear Dynamics},
year = {2015},
volume = {10},
number = {6},
doi = {10.1115/1.4028417},
}
@article{Dopico2014,
author = {Daniel Dopico and Yitao Zhu and Adrian Sandu and Corina Sandu},
title = {Direct and Adjoint Sensitivity Analysis of Ordinary Differential Equation Multibody Formulations},
journal = {Journal of Computational and Nonlinear Dynamics},
year = {2014},
volume = {10},
number = {1},
doi = {10.1115/1.4026492},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
Lorem ipsum
\autocite{Nachbagauer2015}
\autocite{Dopico2014}
\printbibliography
\end{document}

or with ext-authoryear
bibliography style
\documentclass{article}
\usepackage[style=ext-authoryear,
maxbibnames=999, maxcitenames=2, mincitenames=2,
giveninits=true, uniquename=init,
articlein=false, innamebeforetitle=true,
autocite=inline]{biblatex}
\DeclareOuterCiteDelims{parencite}{\bibopenbracket}{\bibclosebracket}
\DeclareNameAlias{sortname}{family-given}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem ipsum
\autocite{sigfridsson}
\autocite{aksin}
\autocite{companion}
\printbibliography
\end{document}
