diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex-apa/apa.bbx')
-rw-r--r-- | Master/texmf-dist/tex/latex/biblatex-apa/apa.bbx | 82 |
1 files changed, 39 insertions, 43 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-apa/apa.bbx b/Master/texmf-dist/tex/latex/biblatex-apa/apa.bbx index a0e2cc121f6..8cbb242700a 100644 --- a/Master/texmf-dist/tex/latex/biblatex-apa/apa.bbx +++ b/Master/texmf-dist/tex/latex/biblatex-apa/apa.bbx @@ -1,4 +1,4 @@ -%% apa.bbx v2.9 +%% apa.bbx v3.0 %% Copyright 2011 Philip Kime %% %% This work may be distributed and/or modified under the @@ -160,11 +160,8 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % (APA 6.12) Five author max before "et al" and a one author truncation policy -% However, only after the first cite, which means we can't use -% maxnames/minnames and have to do this in the Format for -% labelname (in the cbx). Anyway, since the truncation is to -% one name and APA requires we use the biblatex uniquelist -% functionality, maxnames/minnames isn't really indicated. +% However, only after the first cite, see the labelname format +% in .cbx. It's also overridden per-entry by uniquelist % (APA 6.x) citation tracking is global % (APA 6.14) uses initials to disambiguate shared surnames % (APA 6.16) uses year postfix to disambiguate multiple items in same year @@ -181,8 +178,8 @@ uniquelist=true,% uniquename=init,% citetracker=true,% - maxnames=99,% - minnames=99,% + maxnames=2,% + minnames=1,% abbreviate=true,% mincrossrefs=999,% alldates=apalong} @@ -268,20 +265,33 @@ % last name first. % (APA 6.27) Ellipsis in 7th position and then nothing until last % (APA 7.10 Example 67) Unknown names and dates +% + +% \printnames does different things depending on whether the format you are +% calling is the default for the name field or is a custom format: +% +% * Default format (e.g. "labelname" format for printing labelname): no +% start/stop max/minnames truncation is done first - the format is +% supposed to do it. +% * Custom format (e.g. "labelname" format for printing author): +% max/minnames truncation is done before calling the format so we have +% to do \printnames[format][-\value{listtotal}]{field} to ensure we get +% all of the names in the list to work on \DeclareNameFormat{apaauthor}{% - \ifthenelse{\value{listcount}=\maxprtauth\AND\value{listcount}<\value{liststop}} - {\addcomma\addspace\ldots} - {\ifthenelse{\value{listcount}>\maxprtauth\AND\value{listcount}<\value{liststop}} + \ifthenelse{\value{listcount}=\maxprtauth\AND\value{listcount}<\value{listtotal}} + {\addcomma\addspace\ldots\addspace} + {\ifthenelse{\value{listcount}>\maxprtauth\AND\value{listcount}<\value{listtotal}} {} {\ifthenelse{\iffieldequalstr{usere}{unkauth}\OR\iffieldequalstr{usere}{unkauthdate}} {\mkbibbrackets{\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}?}} {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}}}} + \renewbibmacro*{author}{% \ifnameundef{author} {\usebibmacro{labeltitle}} - {\printnames[apaauthor]{author}% + {\printnames[apaauthor][-\value{listtotal}]{author}% \setunit*{\addspace}% \printfield{nameaddon}}% \newunit\newblock% @@ -531,27 +541,13 @@ % (APA 6.27) Editors have first names first ... % (APA 7.02 Example 27) ... unless there is no author -\DeclareNameFormat{apatranslator}{% - \ifthenelse{\value{listcount}=\maxprtauth} - {\addcomma\addspace\ldots} - {\ifthenelse{\value{listcount}>\maxprtauth\AND\value{listcount}<\value{liststop}} - {} - {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}}} - -\DeclareNameFormat{apaeditor}{% - \ifthenelse{\value{listcount}=\maxprtauth} +\DeclareNameFormat{apanames}{% + \ifthenelse{\value{listcount}=\maxprtauth\AND\value{listcount}<\value{listtotal}} {\addcomma\addspace\ldots} - {\ifthenelse{\value{listcount}>\maxprtauth\AND\value{listcount}<\value{liststop}} + {\ifthenelse{\value{listcount}>\maxprtauth\AND\value{listcount}<\value{listtotal}} {} {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}}} -\DeclareNameFormat{editorinauthpos}{% - \ifthenelse{\value{listcount}=\maxprtauth} - {\addcomma\addspace\ldots} - {\ifthenelse{\value{listcount}>\maxprtauth\AND\value{listcount}<\value{liststop}} - {} - {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}}} - \renewbibmacro*{author/editor}{% \ifnameundef{author} {\ifnameundef{editor} @@ -562,7 +558,7 @@ \newbibmacro*{editorinauthpos}{% \global\booltrue{bbx:editorinauthpos}% - \printnames[editorinauthpos]{editor}% + \printnames[apanames][-\value{listtotal}]{editor}% \setunit{\addspace}% \ifnameundef{editor} {} @@ -631,7 +627,7 @@ {}% {\ifnamesequal{editor}{translator}% {\printtext{\bibopenparen}\global\booltrue{bbx:parens}% - \printnames[apaeditor]{editor}% + \printnames[apaenames][-\value{listtotal}]{editor}% \setunit*{\addcomma\addspace}% \usebibmacro{apaeditorstrg}{editor}% \setunit*{\addspace\&\space}% @@ -640,7 +636,7 @@ {\printtext{\bibopenparen}\global\booltrue{bbx:parens}% \ifnameundef{editor}% {}% - {\printnames[apaeditor]{editor}% + {\printnames[apanames][-\value{listtotal}]{editor}% \setunit{\addcomma\addspace}% \usebibmacro{apaeditorstrg}{editor}% \clearname{editor}% @@ -648,7 +644,7 @@ \setunit*{\addspace\&\space}}% \ifnameundef{translator}% {\setunit{}}% - {\printnames[apatranslator]{translator}% + {\printnames[apanames][-\value{listtotal}]{translator}% \setunit{\addcomma\addspace}% \printtext{\bibcpstring{translator}}% \clearname{translator}% @@ -664,7 +660,7 @@ {}% {\ifnamesequal{editor}{translator}% {\usebibmacro{in}% - \printnames[apaeditor]{editor}% + \printnames[apanames][-\value{listtotal}]{editor}% \setunit{\addspace\bibopenparen\global\booltrue{bbx:parens}}% \usebibmacro{apaeditorstrg}{editor}% \setunit*{\addspace\&\space}% @@ -673,7 +669,7 @@ {\ifnameundef{translator}% {}% {\setunit{\relax}% - \printtext[parens]{\printnames[apatranslator]{translator}% + \printtext[parens]{\printnames[apanames][-\value{listtotal}]{translator}% \setunit{\addcomma\addspace}% \printtext{\bibcpstring{translator}}}% \clearname{translator}% @@ -876,7 +872,7 @@ \newbibmacro*{reviewauthor}{% \ifnameundef{author} {\usebibmacro{reviewlabeltitle}} - {\printnames[apaauthor]{author}}% + {\printnames[apaauthor][-\value{listtotal}]{author}}% \newunit\newblock% \usebibmacro{labelyear+extrayear}} @@ -923,13 +919,13 @@ \newbibmacro*{mediaauthor}{% \ifnameundef{namea} {} - {\printnames{namea}% + {\printnames[apanames][-\value{listtotal}]{namea}% \newunit% \printtext[parens]{\printfield{nameatype}}} \setunit*{\addcomma\addspace\&\addspace}% \ifnameundef{nameb} {} - {\printnames{nameb}% + {\printnames[apanames][-\value{listtotal}]{nameb}% \setunit{\addspace}% \printtext[parens]{\printfield{namebtype}}} \newunit @@ -974,7 +970,7 @@ {\usebibmacro{in}% \ifnameundef{namec} {} - {\printnames{namec}% + {\printnames[apanames][-\value{listtotal}]{namec}% \setunit{\addspace}% \printtext[parens]{\printfield{namectype}}} \setunit{\addcomma\addspace}% @@ -1608,28 +1604,28 @@ \newbibmacro*{editorx}{% \ifnameundef{editor} {} - {\printnames[apaeditor]{editor}% + {\printnames[apanames][-\value{listtotal}]{editor}% \setunit{\addspace}% \printtext[parens]{\usebibmacro{apaeditorstrg}{editor}} \clearname{editor}% \newunit}% \ifnameundef{editora} {} - {\printnames[apaeditor]{editora}% + {\printnames[apanames][-\value{listtotal}]{editora}% \setunit{\addspace}% \printtext[parens]{\usebibmacro{apaeditorstrg}{editora}} \clearname{editora}% \newunit}% \ifnameundef{editorb} {} - {\printnames[apaeditor]{editorb}% + {\printnames[apanames][-\value{listtotal}]{editorb}% \setunit{\addspace}% \printtext[parens]{\usebibmacro{apaeditorstrg}{editorb}} \clearname{editorb}% \newunit}% \ifnameundef{editorc} {} - {\printnames[apaeditor]{editorc}% + {\printnames[apanames][-\value{listtotal}]{editorc}% \setunit{\addspace}% \printtext[parens]{\usebibmacro{apaeditorstrg}{editorc}} \clearname{editorc}% |