von Gast » Do 26. Dez 2013, 12:21
Liebes Forum,
Ich versuche gerade anhand der Anleitung von Dominik Waßenhoven einen eigenen Bibliographystyle zu erstellen. Leider erhalte ich schon beim Einbinden des Stils eine Fehlermeldung: ! LaTeX Error: Missing \begin{document}. l.1 <head>
Wenn ich einen anderen Stil nehme z.B. apa funktioniert alles.
%Das ist mein LaTeX-Document
\documentclass[parskip=full, bibliography=totocnumbered]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[babel, german=quotes]{csquotes}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{booktabs}
\usepackage{setspace}
\usepackage{acronym}
\usepackage[backend=biber, style=meinstil]{biblatex}
\DeclareLanguageMapping{ngerman}{ngerman-apa}
\addbibresource{literatur1.bib}
\defbibheading{lit}{\chapter{Literaturverzeichnis}}
\begin{document}
Hier steht ein Text \cite{Muster2005} \\
\printbibliography[heading=lit]
\end{document}
%Ende des Dokumentes
%Das ist die bbx Datei
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
</head>
<pre> </pre>
<pre>\ProvidesFile{meinstil.bbx}[2013/10/30\space v6.4\space APA biblatex references style]
\RequireBiber[3]
</pre>
<PRE>[\abx@bbxid]</PRE>
<PRE>\newtoggle{bbx:isbn}
\newtoggle{bbx:url}
\newtoggle{bbx:doi}
\newtoggle{bbx:eprint}
\newtoggle{bbx:related}</PRE>
<PRE>\DeclareBibliographyOption{isbn}[true]{%
\settoggle{bbx:isbn}{#1}}
\DeclareBibliographyOption{url}[true]{%
\settoggle{bbx:url}{#1}}
\DeclareBibliographyOption{doi}[true]{%
\settoggle{bbx:doi}{#1}}
\DeclareBibliographyOption{eprint}[true]{%
\settoggle{bbx:eprint}{#1}}
\DeclareBibliographyOption{related}[true]{%
\settoggle{bbx:related}{#1}}</PRE>
<PRE>\ExecuteBibliographyOptions{isbn,url,doi,eprint,related}</PRE>
<PRE>\newbibmacro*{begentry}{}
\newbibmacro*{finentry}{\finentry}</PRE>
<PRE>\DeclareBibliographyDriver{article}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{bytranslator+others}%
\newunit\newblock
\printfield{version}%
\newunit\newblock
\usebibmacro{in:}%
\usebibmacro{journal+issuetitle}%
\newunit
\usebibmacro{byeditor+others}%
\newunit
\usebibmacro{note+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{issn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{book}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{booklet}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{howpublished}%
\newunit\newblock
\printfield{type}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{collection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{editor+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{inbook}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\usebibmacro{bybookauthor}%
\newunit\newblock
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{incollection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{inproceedings}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
\usebibmacro{event+venue+date}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\printlist{organization}%
\newunit
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{manual}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor}%
\newunit\newblock
\printfield{edition}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{type}%
\newunit
\printfield{version}%
\newunit
\printfield{note}%
\newunit\newblock
\printlist{organization}%
\newunit
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{misc}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{howpublished}%
\newunit\newblock
\printfield{type}%
\newunit
\printfield{version}%
\newunit
\printfield{note}%
\newunit\newblock
\usebibmacro{organization+location+date}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{online}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{version}%
\newunit
\printfield{note}%
\newunit\newblock
\printlist{organization}%
\newunit\newblock
\usebibmacro{date}%
\newunit\newblock
\iftoggle{bbx:eprint}
{\usebibmacro{eprint}}
{}%
\newunit\newblock
\usebibmacro{url+urldate}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{patent}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\printfield{type}%
\setunit*{\addspace}%
\printfield{number}%
\iflistundef{location}
{}
{\setunit*{\addspace}%
\printtext[parens]{%
\printlist[][-\value{listtotal}]{location}}}%
\newunit\newblock
\usebibmacro{byholder}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{date}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{periodical}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{editor}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title+issuetitle}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byeditor}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{issn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{proceedings}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{editor+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{event+venue+date}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\printlist{organization}%
\newunit
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{report}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\printfield{type}%
\setunit*{\addspace}%
\printfield{number}%
\newunit\newblock
\printfield{version}%
\newunit
\printfield{note}%
\newunit\newblock
\usebibmacro{institution+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isrn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{thesis}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\printfield{type}%
\newunit
\usebibmacro{institution+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{unpublished}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\printfield{howpublished}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{location+date}%
\newunit\newblock
\iftoggle{bbx:url}
{\usebibmacro{url+urldate}}
{}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{shorthands}{%
\usedriver
{\DeclareNameAlias{sortname}{default}}
{\thefield{entrytype}}%
\finentry}</PRE>
<PRE>\DeclareBibliographyDriver{set}{%
\entryset{}{}%
\newunit\newblock
\usebibmacro{setpageref}%
\finentry}</PRE>
<PRE>\DeclareBibliographyAlias{mvbook}{book}
\DeclareBibliographyAlias{bookinbook}{inbook}
\DeclareBibliographyAlias{suppbook}{inbook}
\DeclareBibliographyAlias{mvcollection}{collection}
\DeclareBibliographyAlias{suppcollection}{incollection}
\DeclareBibliographyAlias{mvproceedings}{proceedings}
\DeclareBibliographyAlias{reference}{collection}
\DeclareBibliographyAlias{mvreference}{reference}
\DeclareBibliographyAlias{inreference}{incollection}
\DeclareBibliographyAlias{suppperiodical}{article}
\DeclareBibliographyAlias{review}{article}
\DeclareBibliographyAlias{*}{misc}</PRE>
<PRE>\newbibmacro*{maintitle+title}{%
\iffieldsequal{maintitle}{title}
{\clearfield{maintitle}%
\clearfield{mainsubtitle}%
\clearfield{maintitleaddon}}
{\iffieldundef{maintitle}
{}
{\usebibmacro{maintitle}%
\newunit\newblock
\iffieldundef{volume}
{}
{\printfield{volume}%
\printfield{part}%
\setunit{\addcolon\space}}}}%
\usebibmacro{title}%
\newunit}</PRE>
<PRE>\newbibmacro*{maintitle+booktitle}{%
\iffieldundef{maintitle}
{}
{\usebibmacro{maintitle}%
\newunit\newblock
\iffieldundef{volume}
{}
{\printfield{volume}%
\printfield{part}%
\setunit{\addcolon\space}}}%
\usebibmacro{booktitle}%
\newunit}</PRE>
<PRE>\newbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\setunit*{\addspace}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}%
\setunit{\addspace}}%
\usebibmacro{volume+number+eid}%
\setunit{\addspace}%
\usebibmacro{issue+date}%
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\newunit}</PRE>
<PRE>\newbibmacro*{volume+number+eid}{%
\printfield{volume}%
\setunit*{\adddot}%
\printfield{number}%
\setunit{\addcomma\space}%
\printfield{eid}}</PRE>
<PRE>\newbibmacro*{title+issuetitle}{%
\usebibmacro{periodical}%
\setunit*{\addspace}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}%
\setunit{\addspace}}%
\printfield{volume}%
\setunit*{\adddot}%
\printfield{number}%
\setunit{\addcomma\space}%
\printfield{eid}%
\setunit{\addspace}%
\usebibmacro{issue+date}%
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\newunit}</PRE>
<PRE>\newbibmacro*{issue+date}{%
\printtext[parens]{%
\iffieldundef{issue}
{\usebibmacro{date}}
{\printfield{issue}%
\setunit*{\addspace}%
\usebibmacro{date}}}%
\newunit}</PRE>
<PRE>\newbibmacro*{event+venue+date}{%
\printfield{eventtitle}%
\newunit
\printfield{eventtitleaddon}%
\ifboolexpr{
test {\iffieldundef{venue}}
and
test {\iffieldundef{eventyear}}
}
{}
{\setunit*{\addspace}%
\printtext[parens]{%
\printfield{venue}%
\setunit*{\addcomma\space}%
\printeventdate}}%
\newunit}</PRE>
<PRE>\newbibmacro*{series+number}{%
\printfield{series}%
\setunit*{\addspace}%
\printfield{number}%
\newunit}</PRE>
<PRE>\newbibmacro*{publisher+location+date}{%
\printlist{location}%
\iflistundef{publisher}
{\setunit*{\addcomma\space}}
{\setunit*{\addcolon\space}}%
\printlist{publisher}%
\setunit*{\addcomma\space}%
\usebibmacro{date}%
\newunit}</PRE>
<PRE>\newbibmacro*{institution+location+date}{%
\printlist{location}%
\iflistundef{institution}
{\setunit*{\addcomma\space}}
{\setunit*{\addcolon\space}}%
\printlist{institution}%
\setunit*{\addcomma\space}%
\usebibmacro{date}%
\newunit}</PRE>
<PRE>\newbibmacro*{organization+location+date}{%
\printlist{location}%
\iflistundef{organization}
{\setunit*{\addcomma\space}}
{\setunit*{\addcolon\space}}%
\printlist{organization}%
\setunit*{\addcomma\space}%
\usebibmacro{date}%
\newunit}</PRE>
<PRE>\newbibmacro*{location+date}{%
\printlist{location}%
\setunit*{\addcomma\space}%
\usebibmacro{date}%
\newunit}</PRE>
<PRE>\newbibmacro*{chapter+pages}{%
\printfield{chapter}%
\setunit{\bibpagespunct}%
\printfield{pages}%
\newunit}</PRE>
<PRE>\newbibmacro*{note+pages}{%
\printfield{note}%
\setunit{\bibpagespunct}%
\printfield{pages}%
\newunit}</PRE>
<PRE>\newbibmacro*{doi+eprint+url}{%
\iftoggle{bbx:doi}
{\printfield{doi}}
{}%
\newunit\newblock
\iftoggle{bbx:eprint}
{\usebibmacro{eprint}}
{}%
\newunit\newblock
\iftoggle{bbx:url}
{\usebibmacro{url+urldate}}
{}}</PRE>
<PRE>\newbibmacro*{addendum+pubstate}{%
\printfield{addendum}%
\newunit\newblock
\printfield{pubstate}}</PRE>
<PRE>\newcounter{bbx:relatedcount}
\newcounter{bbx:relatedtotal}</PRE>
<PRE>\newbibmacro*{related:init}{%
\csundef{bbx:relatedloop}}</PRE>
<PRE>\newbibmacro*{begrelated}{}
\newbibmacro*{endrelated}{}
\newbibmacro*{begrelatedloop}{}
\newbibmacro*{endrelatedloop}{}</PRE>
<PRE>\def\ifrelatedloop{%
\ifboolexpr{ test {\xifinlistcs{\strfield{entrykey}}{bbx:relatedloop}}
or test {\xifinlistcs{\strfield{clonesourcekey}}{bbx:relatedloop}} }}</PRE>
<PRE>\newbibmacro*{related}{%
\ifboolexpr{ test {\iffieldundef{related}} or test {\ifrelatedloop} }
{}
{\usebibmacro{begrelated}%
\def\bbx@tempa{}%
\setcounter{bbx:relatedtotal}{0}%
\def\do##1{%
\entrydata{##1}{%
\ifrelatedloop
{}
{\stepcounter{bbx:relatedtotal}%
\gappto{\bbx@tempa}{##1,}}}}%
\docsvfield{related}%
\restorefield{related}{\bbx@tempa}%
\ifnumgreater{\value{bbx:relatedtotal}}{0}
{\listcsxadd{bbx:relatedloop}{\strfield{entrykey}}%
\iffieldundef{clonesourcekey}
{}
{\listcsxadd{bbx:relatedloop}{\strfield{clonesourcekey}}}%
\setcounter{bbx:relatedcount}{0}%
\def\do{%
\stepcounter{bbx:relatedcount}%
\ifnumgreater{\value{bbx:relatedcount}}{1}
{\printtext{\relateddelim}}
{}}%
\ifbibmacroundef{related:\strfield{relatedtype}}
{\appto{\do}{\usebibmacro{related:default}}}
{\appto{\do}{\usebibmacro*{related:\strfield{relatedtype}}}}%
\iffieldformatundef{related:\strfield{relatedtype}}
{\def\bbx@tempa{related}}
{\def\bbx@tempa{related:\strfield{relatedtype}}}%
\iffieldformatundef{relatedstring:\strfield{relatedtype}}
{\def\bbx@tempb{relatedstring:default}}
{\def\bbx@tempb{relatedstring:\strfield{relatedtype}}}%
\printtext[\bbx@tempa]{%
\usebibmacro{begrelatedloop}%
\iffieldundef{relatedstring}
{\ifboolexpr{
test {\ifnumgreater{\value{bbx:relatedtotal}}{1}}
and
test {\ifbibxstring{\thefield{relatedtype}s}}
}
{\printtext[\bbx@tempb]{%
\bibstring[\mkrelatedstring]{\thefield{relatedtype}s}}}
{\iffieldbibstring{relatedtype}
{\printtext[\bbx@tempb]{%
\bibstring[\mkrelatedstring]{\thefield{relatedtype}}}}
{}}}
{\iffieldbibstring{relatedstring}
{\printtext[\bbx@tempb]{%
\bibstring[\mkrelatedstring]{\thefield{relatedstring}}}}
{\printfield[\bbx@tempb]{relatedstring}}}%
\docsvfield{related}%
\usebibmacro{endrelatedloop}}}%
{}%
\usebibmacro{endrelated}}}</PRE>
<pre>
\urlstyle{rm} % APA examples all have URLs in same font as text</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Used to join citations/references to
% extrayear</pre>
<pre>\newcommand{\apashortdash}{-}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Allow variable max authors/editors limit</pre>
<pre>\newcommand{\maxprtauth}{7}
\DeclareBibliographyOption{apamaxprtauth}{%
\ifstrempty{#1}
{}
{\renewcommand{\maxprtauth}{#1}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.22) Force roman numerals into arabic
% using etoolbox macros</pre>
<pre>\newcommand{\apanum}[1]{\ifrmnum{#1}{\rmntonum{#1}}{#1}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Apa defines no particular hanging indent but this makes it look like the
% examples in the style manual.</pre>
<pre>\setlength{\bibhang}{2.5em}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 4.16 Example 29) Some DSM macros</pre>
<pre>\gdef\DSMIII{\emph{DSM-III}}
\gdef\DSMIIIR{\emph{DSM-III-R}}
\gdef\DSMIV{\emph{DSM-IV}}
\gdef\DSMIVTR{\emph{DSM-IV-TR}}
\gdef\PsycSCAN{\emph{PsycSCAN}}
\gdef\PsycARTICLES{\emph{PsycARTICLES}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%</pre>
<pre>% Date formats. Suppress end range of less specific fields</pre>
<pre>\newcommand*{\mkbibrangeapalong}[1]{%
\ifthenelse{\equal{#1}{url}}
{\printtext{%
\mkbibdateapalongmdy{#1year}{#1month}{#1day}%
\iffieldundef{#1endyear}%
{}%
{\iffieldequalstr{#1endyear}{}% open-ended range?
{\mbox{\bibdatedash}}
{\bibdatedash%
\iffieldsequal{#1year}{#1endyear}%
{\iffieldsequal{#1month}{#1endmonth}%
{\iffieldsequal{#1day}{#1endday}%
{}%
{\mkbibdateapalongmdy{}{}{#1endday}}}%
{\mkbibdateapalongmdy{}{#1endmonth}{#1endday}}}%
{\mkbibdateapalongmdy{#1endyear}{#1endmonth}{#1endday}}}}}}
{\printtext{%
\mkbibdateapalong{#1year}{#1month}{#1day}%
\iffieldundef{#1endyear}%
{}%
{\iffieldequalstr{#1endyear}{}% open-ended range?
{\mbox{\bibdatedash}}
{\bibdatedash%
\iffieldsequal{#1year}{#1endyear}%
{\iffieldsequal{#1month}{#1endmonth}%
{\iffieldsequal{#1day}{#1endday}%
{}%
{\mkbibdateapalong{}{}{#1endday}}}%
{\mkbibdateapalong{}{#1endmonth}{#1endday}}}%
{\mkbibdateapalong{#1endyear}{#1endmonth}{#1endday}}}}}}}
</pre>
<pre>% Only for DATE as only \printdateextra is used
\newcommand*{\mkbibrangeapalongextra}[1]{%
\printtext{%
\mkbibdateapalongextra{#1year}{#1month}{#1day}%
\iffieldundef{#1endyear}%
{}%
{\iffieldequalstr{#1endyear}{}% open-ended range?
{\mbox{\bibdatedash}}
{\bibdatedash%
\iffieldsequal{#1year}{#1endyear}%
{\iffieldsequal{#1month}{#1endmonth}%
{\iffieldsequal{#1day}{#1endday}%
{}%
{\mkbibdateapalongextra{}{}{#1endday}}}
{\mkbibdateapalongextra{}{#1endmonth}{#1endday}}}
{\mkbibdateapalongextra{#1endyear}{#1endmonth}{#1endday}}}}}}
</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 7.09 Example 62) ERIC
% eprint references</pre>
<pre>\DeclareFieldFormat{eprint:eric}{%
\printtext{\bibcpstring{retrieved}}%
\setunit{\addspace}%
\printtext{\bibstring{from}}\addspace%
ERIC\addspace database\adddot\addspace%
\mkbibparens{#1}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.12) Five author max before "et al" and a one author truncation policy
% 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
% (APA 6.10) Never reference anything not cited
% (APA 6.25) author initials only
% (APA 6.25) sorting is nyt but we need to account for PUBSTATE which comes
% after all normal cites for the same author</pre>
<pre>\DeclareSortingScheme{apa}{
\sort{
\field{presort}
}
\sort[final]{
\field{sortkey}
}
\sort{
\field{sortname}
\field{author}
\field{editor}
\field{translator}
\field{writer}
\field{director}
\field{producer}
\field{execproducer}
\field{origauthor}
\field{sorttitle}
\field{title}
}
\sort{
\field{sortyear}
\field{year}
\field{pubstate}
}
\sort{
\field{sorttitle}
\field{title}
}
\sort{
\field[padside=left,padwidth=4,padchar=0]{volume}
\literal{0000}
}
}</pre>
<pre>% Don't fall back on other year fields if there is no year, use
% "nodate" string
\DeclareLabeldate{%
\field{pubstate}
\field{date}
\literal{nodate}
}</pre>
<pre>% Due to APA strange requirements like truncation after first cite and
% ellipsis from 7th to n-1 in bib, there might be some really strange
% edge cases which can't be handled as this needs treating in the style
% after biber has finished. Very unlikely though.
\ExecuteBibliographyOptions{labeldate=true,%
sorting=apa,%
autocite=inline,%
backref=true,%
pagetracker=true,%
useprefix=true,%
usetranslator=true,%
uniquelist=minyear,%
uniquename=full,%
citetracker=true,%
maxcitenames=2,%
mincitenames=1,%
maxbibnames=7,%
minbibnames=6,%
abbreviate=true,%
mincrossrefs=999,%
date=apalong,%
datelabel=apalong,%
origdate=apalong,%
urldate=apalong,%
eventdate=comp}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
</pre>
<pre>% Enforce ignoring of PUBSTATE if there is a YEAR or DATE field
\DeclareStyleSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=year, final]
\step[fieldset=pubstate, null]
}
\map{
\step[fieldsource=date, final]
\step[fieldset=pubstate, null]
}
}
}</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% It is not APA standard to have backrefs in the bib
% Some users might like it though.</pre>
<pre>\newbool{apa:backref}
\DeclareBibliographyOption{apabackref}{%
\ifstrequal{#1}{true}
{\global\booltrue{apa:backref}}
{\global\boolfalse{apa:backref}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.29) Additional material sometimes goes in parens
% after title. This bool tracks the parens.</pre>
<pre>\newbool{bbx:parens}
\AtEveryBibitem{\global\boolfalse{bbx:parens}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 7.06:47) Reviews are awkward - if no author, date
% position changes so we need a flag to
% track this</pre>
<pre>\newbool{bbx:noreviewauthor}
\AtEveryBibitem{\global\boolfalse{bbx:noreviewauthor}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.30) Sometimes "Vol" is inside the additional
% material parens, sometimes not. This bool
% tracks if it has been inserted yet.
% Can't use \clearfield{volume} as some
% later number format tests need to know
% whether volume was defined.</pre>
<pre>\newbool{bbx:volseen}
\AtEveryBibitem{\global\boolfalse{bbx:volseen}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) This bool tracks if the title was put
% in the author position.
% Can't use \clearfield{title} as some
% later punctuation tests need to know
% whether title was defined.</pre>
<pre>\newbool{bbx:titleinauthpos}
\AtEveryBibitem{\global\boolfalse{bbx:titleinauthpos}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) Need a flag to say when the editor
% is in author position because this
% can effect where the year goes.</pre>
<pre>\newbool{bbx:editorinauthpos}
\AtEveryBibitem{\global\boolfalse{bbx:editorinauthpos}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) Flag to say whether the "in" has
% been placed already in IN*
% Reset every bibitem.</pre>
<pre>\newbool{bbx:in}
\AtEveryBibitem{\global\boolfalse{bbx:in}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Set up some standard APA formats</pre>
<pre>\DeclareFieldFormat{volume}{\apanum{#1}}
\DeclareFieldFormat{series}{#1}
\DeclareFieldFormat{chapter}{\bibcpstring{chapter}~\apanum{#1}}
\DeclareFieldFormat{volumes}{\bibcpstring{volumes}~#1}
\DeclareFieldFormat{addendum}{\mkbibparens{#1}}
\DeclareFieldFormat{part}{#1}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.25) Works by the same author have the full author
% name, not an eliding dash. Author is always
% last name first.
% (APA 6.27) Ellipsis in 7th position and then nothing until last
% (APA 7.10 Example 67) Unknown names and dates
%</pre>
<pre>% \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</pre>
<pre>\DeclareNameAlias{default}{apaauthor}</pre>
<pre>\DeclareNameFormat{apaauthor}{%
\ifthenelse{\value{listcount}=\maxprtauth\AND\value{listcount}<\value{listtotal}}
{\addcomma\addspace\ldots\addspace}
{\ifthenelse{\value{listcount}>\maxprtauth\AND\value{listcount}<\value{listtotal}}
{}
{\iffieldequalstr{doubtfulauthor}{true}
{\mkbibbrackets{\usebibmacro{name:apa:last-first}{#1}{#3}{#4}{#5}{#7}?}}
{\usebibmacro{name:apa:last-first}{#1}{#3}{#4}{#5}{#7}}}}%
\ifthenelse{\value{listcount}=\value{listtotal}}%
{\ifmorenames{\andothersdelim\bibstring{andothers}}{}}{}}</pre>
<pre>\renewbibmacro*{author}{%
\ifnameundef{author}
{\usebibmacro{labeltitle}}
{\printnames[apaauthor][-\value{listtotal}]{author}%
\setunit*{\addspace}%
\printfield{nameaddon}%
\ifnameundef{with}
{}
{\setunit{}\addspace\mkbibparens{\printtext{\bibstring{with}\addspace}%
\printnames[apaauthor][-\value{listtotal}]{with}}
\setunit*{\addspace}}}%
\newunit\newblock%
\usebibmacro{labelyear+extrayear}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) References section delimiters are ampersands, not " and "
% Needs to be in this hook otherwise it sets this for all
% citations too.
% (APA 6.27) Use blank for long lists
% (APA 4.03) Serial comma for lists of three or more</pre>
<pre>\AtBeginBibliography{\renewcommand*{\finalnamedelim}{%
\ifthenelse{\value{listcount}>\maxprtauth}
{}
{\ifthenelse{\value{liststop}>2}
{\finalandcomma\addspace\&\space}
{\addspace\&\space}}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.28) Use "nodate" bibstring for references with no year
% Months and days go into parenthesis with year, if set
% (APA 6.29) Issue goes where month normally goes if it
% is set.</pre>
<pre>% Make sure endmonth gets an expansion too
\DeclareFieldFormat{endmonth}{\mkbibmonth{#1}}</pre>
<pre>\newbibmacro*{monthorissue}{%
\iffieldundef{issue}
{\iffieldundef{month}
{}
{\addcomma\space\printfield{month}%
\iffieldundef{endmonth}{}{/\printfield{endmonth}}}}
{\addcomma\space\printfield{issue}}}</pre>
<pre>\newbibmacro*{labelyear+extrayear}{%
\iffieldundef{labelyear}
{\iffieldundef{origyear}
{}
{\printtext[yearorunkyear]{\printfield[noformat]{origyear}}}}%
{\printtext[yearorunkyear]{\printdateextralabel}}}</pre>
<pre>\DeclareFieldFormat{yearorunkyear}{%
\ifthenelse{\iffieldequalstr{doubtfuldate}{true}}
{\mkbibbrackets{ca\adddot\addspace#1}}
{\mkbibparens{#1}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.29) General format of titles.
% Ugly Chicago-style lowercasing of English titles</pre>
<pre>\DeclareFieldFormat{apacase}{\MakeSentenceCase*{#1}}</pre>
<pre>\DeclareFieldFormat{issuetitle}{#1\isdot}
\DeclareFieldFormat{title}{\iffieldequalstr{titleisdescription}{true}{\mkbibbrackets{#1}}{\mkbibemph{#1}\isdot}}
\DeclareFieldFormat{origtitle}{\mkbibemph{\MakeSentenceCase*{#1}}\isdot}
\DeclareFieldFormat[article]{title}{#1\isdot}
\DeclareFieldFormat[article]{origtitle}{\MakeSentenceCase*{#1}\isdot}
\DeclareFieldFormat[inbook]{title}{#1\isdot}
\DeclareFieldFormat[inbook]{origtitle}{\MakeSentenceCase*{#1}\isdot}
\DeclareFieldFormat[incollection]{title}{#1\isdot}
\DeclareFieldFormat[incollection]{origtitle}{\MakeSentenceCase*{#1}\isdot}
\DeclareFieldFormat[inproceedings]{title}{#1\isdot}
\DeclareFieldFormat[inproceedings]{origtitle}{\MakeSentenceCase*{#1}\isdot}
\DeclareFieldFormat[proceedings]{title}{#1\isdot}
\DeclareFieldFormat[proceedings]{origtitle}{\MakeSentenceCase*{#1}\isdot}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 7.01 Example 10) Newspapers have prefix for pages.</pre>
<pre>\DeclareFieldFormat[newsarticle]{pages}{%
\DeclareNumChars{.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ}%
\mkpageprefix{#1}%
\DeclareNumChars{.}}</pre>
<pre>\DeclareFieldFormat[newsarticle]{newspaper}{\mkbibemph{#1}}
\DeclareFieldFormat[newsarticle]{entrysubtype}{\mkbibbrackets{#1}}
\DeclareFieldFormat[newsarticle]{title}{#1}
\DeclareFieldFormat[article]{pages}{#1}</pre>
<pre>\newbibmacro*{newspaper}{%
\printfield{newspaper}
\setunit{\addcomma\space}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.29) Additional {main}title information in brackets (using)
% {MAIN}TITLEADDON field. Colon after maintitle.</pre>
<pre>\DeclareFieldFormat{titleaddon}{\mkbibbrackets{\MakeSentenceCase*{#1}}}
\DeclareFieldFormat{maintitleaddon}{\mkbibbrackets{\MakeSentenceCase*{#1}}}
\DeclareFieldFormat{booktitleaddon}{\mkbibbrackets{\MakeSentenceCase*{#1}}}</pre>
<pre>\newbibmacro*{bookaddinfo}{%
\ifthenelse{\iffieldundef{edition}\AND\iffieldundef{volumes}}
{}
{\printtext{\bibopenparen}%
\printfield{edition}%
\setunit*{\addcomma\addspace}%
\printfield{volumes}%
\setunit{}%
\printtext{\bibcloseparen}}%
}</pre>
<pre>\renewbibmacro*{title}{%
\ifthenelse{\iffieldundef{title}\AND\iffieldundef{subtitle}}
{}
{\iffieldundef{origtitle}
{\printtext[title]{%
\printfield[apacase]{title}%
\setunit{\subtitlepunct}%
\printfield[apacase]{subtitle}}}
{\printfield{origtitle}%
\setunit{\addspace}%
\printtext[brackets]{%
\printfield[apacase]{title}%
\setunit{\subtitlepunct}%
\printfield[apacase]{subtitle}}}%
\setunit{\addspace}%
\printfield{titleaddon}%
\iffieldequalstr{entrytype}{book}%
{\setunit{\addspace}\usebibmacro{bookaddinfo}}%
{}%
\ifthenelse{%
\ifnameundef{author}\AND%
\(\ifnameundef{editor}\AND\NOT\boolean{bbx:editorinauthpos}\)\AND%
\ifnameundef{producer}\AND%
\ifnameundef{director}\AND%
\ifnameundef{writer}}
{\newunit\newblock
\usebibmacro{labelyear+extrayear}}
{}}}</pre>
<pre>\renewbibmacro*{maintitle}{%
\ifthenelse{\iffieldundef{maintitle}\AND\iffieldundef{mainsubtitle}}
{}
{\printtext[maintitle]{%
\printfield[apacase]{maintitle}%
\setunit{\subtitlepunct}%
\printfield[apacase]{mainsubtitle}}%
\setunit{\addspace}}
\printfield{maintitleaddon}%
\addcolon}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.30) Format of volume and number for articles</pre>
<pre>\DeclareFieldFormat[article]{volume}{\mkbibemph{\apanum{#1}}}
\DeclareFieldFormat[article]{number}{\mkbibparens{\apanum{#1}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.30) Commas between title and volume for articles</pre>
<pre>\renewbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\setunit*{\addcomma\addspace}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}
\setunit{\addcomma\space}}%
\printfield{volume}%
\printfield{number}%
\setunit{\addspace}\newblock
\usebibmacro{issuename}%
\newunit}</pre>
<pre>\newbibmacro*{issuename}{%
\iffieldundef{issuetitle}
{}
{\printtext[issuetitle]{%
\printfield[noformat]{issuetitle}%
\setunit{\subtitlepunct}%
\printfield[noformat]{issuesubtitle}}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.29) Additional information for non-periodicals in
% parenthesis after title. This is ugly but it's
% hard to put in "optional parens" like this
% around an unknown amount of characters.</pre>
<pre>\newbibmacro*{addinfo}{%
\ifthenelse{\iffieldundef{edition}\AND%
\iffieldundef{chapter}\AND%
\iffieldundef{volumes}\AND%
\iffieldundef{pages}\AND%
\iffieldundef{number}\AND%
\(\iffieldundef{volume}\OR\boolean{bbx:volseen}\)}
{}
{\printtext{\bibopenparen}%
\printfield{edition}%
\setunit*{\addcomma\addspace}%
\printfield{chapter}%
\setunit*{\addcomma\addspace}%
\notbool{bbx:volseen}%
{\iffieldundef{volume}{}{\global\booltrue{bbx:volseen}}%
\printfield{volume}%
\iffieldundef{part}{}{\printfield{part}}}{}%
\setunit*{\addcomma\addspace}%
\printfield{number}%
\setunit*{\addcomma\addspace}%
\printfield{volumes}%
\setunit*{\addcomma\addspace}%
\printfield{pages}%
\setunit{}%
\printtext{\bibcloseparen}%
\newunit}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) "In " precedes editor/trans list, no colon</pre>
<pre>\newbibmacro*{in}{%
\ifbool{bbx:in}%
{}%
{\global\booltrue{bbx:in}%
\bibcpstring{in}\setunit{\space}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) Editors have first names first ...
% (APA 7.02 Example 27) ... unless there is no author</pre>
<pre>\DeclareNameFormat{apanames}{%
\ifthenelse{\value{listcount}=\maxprtauth
Liebes Forum,
Ich versuche gerade anhand der Anleitung von Dominik Waßenhoven einen eigenen Bibliographystyle zu erstellen. Leider erhalte ich schon beim Einbinden des Stils eine Fehlermeldung: ! LaTeX Error: Missing \begin{document}. l.1 <head>
Wenn ich einen anderen Stil nehme z.B. apa funktioniert alles.
[code]%Das ist mein LaTeX-Document
\documentclass[parskip=full, bibliography=totocnumbered]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[babel, german=quotes]{csquotes}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{booktabs}
\usepackage{setspace}
\usepackage{acronym}
\usepackage[backend=biber, style=meinstil]{biblatex}
\DeclareLanguageMapping{ngerman}{ngerman-apa}
\addbibresource{literatur1.bib}
\defbibheading{lit}{\chapter{Literaturverzeichnis}}
\begin{document}
Hier steht ein Text \cite{Muster2005} \\
\printbibliography[heading=lit]
\end{document}
%Ende des Dokumentes[/code]
[code]%Das ist die bbx Datei
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
</head>
<pre> </pre>
<pre>\ProvidesFile{meinstil.bbx}[2013/10/30\space v6.4\space APA biblatex references style]
\RequireBiber[3]
</pre>
<PRE>[\abx@bbxid]</PRE>
<PRE>\newtoggle{bbx:isbn}
\newtoggle{bbx:url}
\newtoggle{bbx:doi}
\newtoggle{bbx:eprint}
\newtoggle{bbx:related}</PRE>
<PRE>\DeclareBibliographyOption{isbn}[true]{%
\settoggle{bbx:isbn}{#1}}
\DeclareBibliographyOption{url}[true]{%
\settoggle{bbx:url}{#1}}
\DeclareBibliographyOption{doi}[true]{%
\settoggle{bbx:doi}{#1}}
\DeclareBibliographyOption{eprint}[true]{%
\settoggle{bbx:eprint}{#1}}
\DeclareBibliographyOption{related}[true]{%
\settoggle{bbx:related}{#1}}</PRE>
<PRE>\ExecuteBibliographyOptions{isbn,url,doi,eprint,related}</PRE>
<PRE>\newbibmacro*{begentry}{}
\newbibmacro*{finentry}{\finentry}</PRE>
<PRE>\DeclareBibliographyDriver{article}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{bytranslator+others}%
\newunit\newblock
\printfield{version}%
\newunit\newblock
\usebibmacro{in:}%
\usebibmacro{journal+issuetitle}%
\newunit
\usebibmacro{byeditor+others}%
\newunit
\usebibmacro{note+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{issn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{book}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{booklet}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{howpublished}%
\newunit\newblock
\printfield{type}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{collection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{editor+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{inbook}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\usebibmacro{bybookauthor}%
\newunit\newblock
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{incollection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{inproceedings}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
\usebibmacro{event+venue+date}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\printlist{organization}%
\newunit
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{manual}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor}%
\newunit\newblock
\printfield{edition}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{type}%
\newunit
\printfield{version}%
\newunit
\printfield{note}%
\newunit\newblock
\printlist{organization}%
\newunit
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{misc}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{howpublished}%
\newunit\newblock
\printfield{type}%
\newunit
\printfield{version}%
\newunit
\printfield{note}%
\newunit\newblock
\usebibmacro{organization+location+date}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{online}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{version}%
\newunit
\printfield{note}%
\newunit\newblock
\printlist{organization}%
\newunit\newblock
\usebibmacro{date}%
\newunit\newblock
\iftoggle{bbx:eprint}
{\usebibmacro{eprint}}
{}%
\newunit\newblock
\usebibmacro{url+urldate}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{patent}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\printfield{type}%
\setunit*{\addspace}%
\printfield{number}%
\iflistundef{location}
{}
{\setunit*{\addspace}%
\printtext[parens]{%
\printlist[][-\value{listtotal}]{location}}}%
\newunit\newblock
\usebibmacro{byholder}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{date}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{periodical}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{editor}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title+issuetitle}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byeditor}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{issn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{proceedings}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{editor+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{event+venue+date}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\printlist{organization}%
\newunit
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{report}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\printfield{type}%
\setunit*{\addspace}%
\printfield{number}%
\newunit\newblock
\printfield{version}%
\newunit
\printfield{note}%
\newunit\newblock
\usebibmacro{institution+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isrn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{thesis}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\printfield{type}%
\newunit
\usebibmacro{institution+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{unpublished}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\printfield{howpublished}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{location+date}%
\newunit\newblock
\iftoggle{bbx:url}
{\usebibmacro{url+urldate}}
{}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}</PRE>
<PRE>\DeclareBibliographyDriver{shorthands}{%
\usedriver
{\DeclareNameAlias{sortname}{default}}
{\thefield{entrytype}}%
\finentry}</PRE>
<PRE>\DeclareBibliographyDriver{set}{%
\entryset{}{}%
\newunit\newblock
\usebibmacro{setpageref}%
\finentry}</PRE>
<PRE>\DeclareBibliographyAlias{mvbook}{book}
\DeclareBibliographyAlias{bookinbook}{inbook}
\DeclareBibliographyAlias{suppbook}{inbook}
\DeclareBibliographyAlias{mvcollection}{collection}
\DeclareBibliographyAlias{suppcollection}{incollection}
\DeclareBibliographyAlias{mvproceedings}{proceedings}
\DeclareBibliographyAlias{reference}{collection}
\DeclareBibliographyAlias{mvreference}{reference}
\DeclareBibliographyAlias{inreference}{incollection}
\DeclareBibliographyAlias{suppperiodical}{article}
\DeclareBibliographyAlias{review}{article}
\DeclareBibliographyAlias{*}{misc}</PRE>
<PRE>\newbibmacro*{maintitle+title}{%
\iffieldsequal{maintitle}{title}
{\clearfield{maintitle}%
\clearfield{mainsubtitle}%
\clearfield{maintitleaddon}}
{\iffieldundef{maintitle}
{}
{\usebibmacro{maintitle}%
\newunit\newblock
\iffieldundef{volume}
{}
{\printfield{volume}%
\printfield{part}%
\setunit{\addcolon\space}}}}%
\usebibmacro{title}%
\newunit}</PRE>
<PRE>\newbibmacro*{maintitle+booktitle}{%
\iffieldundef{maintitle}
{}
{\usebibmacro{maintitle}%
\newunit\newblock
\iffieldundef{volume}
{}
{\printfield{volume}%
\printfield{part}%
\setunit{\addcolon\space}}}%
\usebibmacro{booktitle}%
\newunit}</PRE>
<PRE>\newbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\setunit*{\addspace}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}%
\setunit{\addspace}}%
\usebibmacro{volume+number+eid}%
\setunit{\addspace}%
\usebibmacro{issue+date}%
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\newunit}</PRE>
<PRE>\newbibmacro*{volume+number+eid}{%
\printfield{volume}%
\setunit*{\adddot}%
\printfield{number}%
\setunit{\addcomma\space}%
\printfield{eid}}</PRE>
<PRE>\newbibmacro*{title+issuetitle}{%
\usebibmacro{periodical}%
\setunit*{\addspace}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}%
\setunit{\addspace}}%
\printfield{volume}%
\setunit*{\adddot}%
\printfield{number}%
\setunit{\addcomma\space}%
\printfield{eid}%
\setunit{\addspace}%
\usebibmacro{issue+date}%
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\newunit}</PRE>
<PRE>\newbibmacro*{issue+date}{%
\printtext[parens]{%
\iffieldundef{issue}
{\usebibmacro{date}}
{\printfield{issue}%
\setunit*{\addspace}%
\usebibmacro{date}}}%
\newunit}</PRE>
<PRE>\newbibmacro*{event+venue+date}{%
\printfield{eventtitle}%
\newunit
\printfield{eventtitleaddon}%
\ifboolexpr{
test {\iffieldundef{venue}}
and
test {\iffieldundef{eventyear}}
}
{}
{\setunit*{\addspace}%
\printtext[parens]{%
\printfield{venue}%
\setunit*{\addcomma\space}%
\printeventdate}}%
\newunit}</PRE>
<PRE>\newbibmacro*{series+number}{%
\printfield{series}%
\setunit*{\addspace}%
\printfield{number}%
\newunit}</PRE>
<PRE>\newbibmacro*{publisher+location+date}{%
\printlist{location}%
\iflistundef{publisher}
{\setunit*{\addcomma\space}}
{\setunit*{\addcolon\space}}%
\printlist{publisher}%
\setunit*{\addcomma\space}%
\usebibmacro{date}%
\newunit}</PRE>
<PRE>\newbibmacro*{institution+location+date}{%
\printlist{location}%
\iflistundef{institution}
{\setunit*{\addcomma\space}}
{\setunit*{\addcolon\space}}%
\printlist{institution}%
\setunit*{\addcomma\space}%
\usebibmacro{date}%
\newunit}</PRE>
<PRE>\newbibmacro*{organization+location+date}{%
\printlist{location}%
\iflistundef{organization}
{\setunit*{\addcomma\space}}
{\setunit*{\addcolon\space}}%
\printlist{organization}%
\setunit*{\addcomma\space}%
\usebibmacro{date}%
\newunit}</PRE>
<PRE>\newbibmacro*{location+date}{%
\printlist{location}%
\setunit*{\addcomma\space}%
\usebibmacro{date}%
\newunit}</PRE>
<PRE>\newbibmacro*{chapter+pages}{%
\printfield{chapter}%
\setunit{\bibpagespunct}%
\printfield{pages}%
\newunit}</PRE>
<PRE>\newbibmacro*{note+pages}{%
\printfield{note}%
\setunit{\bibpagespunct}%
\printfield{pages}%
\newunit}</PRE>
<PRE>\newbibmacro*{doi+eprint+url}{%
\iftoggle{bbx:doi}
{\printfield{doi}}
{}%
\newunit\newblock
\iftoggle{bbx:eprint}
{\usebibmacro{eprint}}
{}%
\newunit\newblock
\iftoggle{bbx:url}
{\usebibmacro{url+urldate}}
{}}</PRE>
<PRE>\newbibmacro*{addendum+pubstate}{%
\printfield{addendum}%
\newunit\newblock
\printfield{pubstate}}</PRE>
<PRE>\newcounter{bbx:relatedcount}
\newcounter{bbx:relatedtotal}</PRE>
<PRE>\newbibmacro*{related:init}{%
\csundef{bbx:relatedloop}}</PRE>
<PRE>\newbibmacro*{begrelated}{}
\newbibmacro*{endrelated}{}
\newbibmacro*{begrelatedloop}{}
\newbibmacro*{endrelatedloop}{}</PRE>
<PRE>\def\ifrelatedloop{%
\ifboolexpr{ test {\xifinlistcs{\strfield{entrykey}}{bbx:relatedloop}}
or test {\xifinlistcs{\strfield{clonesourcekey}}{bbx:relatedloop}} }}</PRE>
<PRE>\newbibmacro*{related}{%
\ifboolexpr{ test {\iffieldundef{related}} or test {\ifrelatedloop} }
{}
{\usebibmacro{begrelated}%
\def\bbx@tempa{}%
\setcounter{bbx:relatedtotal}{0}%
\def\do##1{%
\entrydata{##1}{%
\ifrelatedloop
{}
{\stepcounter{bbx:relatedtotal}%
\gappto{\bbx@tempa}{##1,}}}}%
\docsvfield{related}%
\restorefield{related}{\bbx@tempa}%
\ifnumgreater{\value{bbx:relatedtotal}}{0}
{\listcsxadd{bbx:relatedloop}{\strfield{entrykey}}%
\iffieldundef{clonesourcekey}
{}
{\listcsxadd{bbx:relatedloop}{\strfield{clonesourcekey}}}%
\setcounter{bbx:relatedcount}{0}%
\def\do{%
\stepcounter{bbx:relatedcount}%
\ifnumgreater{\value{bbx:relatedcount}}{1}
{\printtext{\relateddelim}}
{}}%
\ifbibmacroundef{related:\strfield{relatedtype}}
{\appto{\do}{\usebibmacro{related:default}}}
{\appto{\do}{\usebibmacro*{related:\strfield{relatedtype}}}}%
\iffieldformatundef{related:\strfield{relatedtype}}
{\def\bbx@tempa{related}}
{\def\bbx@tempa{related:\strfield{relatedtype}}}%
\iffieldformatundef{relatedstring:\strfield{relatedtype}}
{\def\bbx@tempb{relatedstring:default}}
{\def\bbx@tempb{relatedstring:\strfield{relatedtype}}}%
\printtext[\bbx@tempa]{%
\usebibmacro{begrelatedloop}%
\iffieldundef{relatedstring}
{\ifboolexpr{
test {\ifnumgreater{\value{bbx:relatedtotal}}{1}}
and
test {\ifbibxstring{\thefield{relatedtype}s}}
}
{\printtext[\bbx@tempb]{%
\bibstring[\mkrelatedstring]{\thefield{relatedtype}s}}}
{\iffieldbibstring{relatedtype}
{\printtext[\bbx@tempb]{%
\bibstring[\mkrelatedstring]{\thefield{relatedtype}}}}
{}}}
{\iffieldbibstring{relatedstring}
{\printtext[\bbx@tempb]{%
\bibstring[\mkrelatedstring]{\thefield{relatedstring}}}}
{\printfield[\bbx@tempb]{relatedstring}}}%
\docsvfield{related}%
\usebibmacro{endrelatedloop}}}%
{}%
\usebibmacro{endrelated}}}</PRE>
<pre>
\urlstyle{rm} % APA examples all have URLs in same font as text</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Used to join citations/references to
% extrayear</pre>
<pre>\newcommand{\apashortdash}{-}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Allow variable max authors/editors limit</pre>
<pre>\newcommand{\maxprtauth}{7}
\DeclareBibliographyOption{apamaxprtauth}{%
\ifstrempty{#1}
{}
{\renewcommand{\maxprtauth}{#1}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.22) Force roman numerals into arabic
% using etoolbox macros</pre>
<pre>\newcommand{\apanum}[1]{\ifrmnum{#1}{\rmntonum{#1}}{#1}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Apa defines no particular hanging indent but this makes it look like the
% examples in the style manual.</pre>
<pre>\setlength{\bibhang}{2.5em}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 4.16 Example 29) Some DSM macros</pre>
<pre>\gdef\DSMIII{\emph{DSM-III}}
\gdef\DSMIIIR{\emph{DSM-III-R}}
\gdef\DSMIV{\emph{DSM-IV}}
\gdef\DSMIVTR{\emph{DSM-IV-TR}}
\gdef\PsycSCAN{\emph{PsycSCAN}}
\gdef\PsycARTICLES{\emph{PsycARTICLES}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%</pre>
<pre>% Date formats. Suppress end range of less specific fields</pre>
<pre>\newcommand*{\mkbibrangeapalong}[1]{%
\ifthenelse{\equal{#1}{url}}
{\printtext{%
\mkbibdateapalongmdy{#1year}{#1month}{#1day}%
\iffieldundef{#1endyear}%
{}%
{\iffieldequalstr{#1endyear}{}% open-ended range?
{\mbox{\bibdatedash}}
{\bibdatedash%
\iffieldsequal{#1year}{#1endyear}%
{\iffieldsequal{#1month}{#1endmonth}%
{\iffieldsequal{#1day}{#1endday}%
{}%
{\mkbibdateapalongmdy{}{}{#1endday}}}%
{\mkbibdateapalongmdy{}{#1endmonth}{#1endday}}}%
{\mkbibdateapalongmdy{#1endyear}{#1endmonth}{#1endday}}}}}}
{\printtext{%
\mkbibdateapalong{#1year}{#1month}{#1day}%
\iffieldundef{#1endyear}%
{}%
{\iffieldequalstr{#1endyear}{}% open-ended range?
{\mbox{\bibdatedash}}
{\bibdatedash%
\iffieldsequal{#1year}{#1endyear}%
{\iffieldsequal{#1month}{#1endmonth}%
{\iffieldsequal{#1day}{#1endday}%
{}%
{\mkbibdateapalong{}{}{#1endday}}}%
{\mkbibdateapalong{}{#1endmonth}{#1endday}}}%
{\mkbibdateapalong{#1endyear}{#1endmonth}{#1endday}}}}}}}
</pre>
<pre>% Only for DATE as only \printdateextra is used
\newcommand*{\mkbibrangeapalongextra}[1]{%
\printtext{%
\mkbibdateapalongextra{#1year}{#1month}{#1day}%
\iffieldundef{#1endyear}%
{}%
{\iffieldequalstr{#1endyear}{}% open-ended range?
{\mbox{\bibdatedash}}
{\bibdatedash%
\iffieldsequal{#1year}{#1endyear}%
{\iffieldsequal{#1month}{#1endmonth}%
{\iffieldsequal{#1day}{#1endday}%
{}%
{\mkbibdateapalongextra{}{}{#1endday}}}
{\mkbibdateapalongextra{}{#1endmonth}{#1endday}}}
{\mkbibdateapalongextra{#1endyear}{#1endmonth}{#1endday}}}}}}
</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 7.09 Example 62) ERIC
% eprint references</pre>
<pre>\DeclareFieldFormat{eprint:eric}{%
\printtext{\bibcpstring{retrieved}}%
\setunit{\addspace}%
\printtext{\bibstring{from}}\addspace%
ERIC\addspace database\adddot\addspace%
\mkbibparens{#1}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.12) Five author max before "et al" and a one author truncation policy
% 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
% (APA 6.10) Never reference anything not cited
% (APA 6.25) author initials only
% (APA 6.25) sorting is nyt but we need to account for PUBSTATE which comes
% after all normal cites for the same author</pre>
<pre>\DeclareSortingScheme{apa}{
\sort{
\field{presort}
}
\sort[final]{
\field{sortkey}
}
\sort{
\field{sortname}
\field{author}
\field{editor}
\field{translator}
\field{writer}
\field{director}
\field{producer}
\field{execproducer}
\field{origauthor}
\field{sorttitle}
\field{title}
}
\sort{
\field{sortyear}
\field{year}
\field{pubstate}
}
\sort{
\field{sorttitle}
\field{title}
}
\sort{
\field[padside=left,padwidth=4,padchar=0]{volume}
\literal{0000}
}
}</pre>
<pre>% Don't fall back on other year fields if there is no year, use
% "nodate" string
\DeclareLabeldate{%
\field{pubstate}
\field{date}
\literal{nodate}
}</pre>
<pre>% Due to APA strange requirements like truncation after first cite and
% ellipsis from 7th to n-1 in bib, there might be some really strange
% edge cases which can't be handled as this needs treating in the style
% after biber has finished. Very unlikely though.
\ExecuteBibliographyOptions{labeldate=true,%
sorting=apa,%
autocite=inline,%
backref=true,%
pagetracker=true,%
useprefix=true,%
usetranslator=true,%
uniquelist=minyear,%
uniquename=full,%
citetracker=true,%
maxcitenames=2,%
mincitenames=1,%
maxbibnames=7,%
minbibnames=6,%
abbreviate=true,%
mincrossrefs=999,%
date=apalong,%
datelabel=apalong,%
origdate=apalong,%
urldate=apalong,%
eventdate=comp}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
</pre>
<pre>% Enforce ignoring of PUBSTATE if there is a YEAR or DATE field
\DeclareStyleSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=year, final]
\step[fieldset=pubstate, null]
}
\map{
\step[fieldsource=date, final]
\step[fieldset=pubstate, null]
}
}
}</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% It is not APA standard to have backrefs in the bib
% Some users might like it though.</pre>
<pre>\newbool{apa:backref}
\DeclareBibliographyOption{apabackref}{%
\ifstrequal{#1}{true}
{\global\booltrue{apa:backref}}
{\global\boolfalse{apa:backref}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.29) Additional material sometimes goes in parens
% after title. This bool tracks the parens.</pre>
<pre>\newbool{bbx:parens}
\AtEveryBibitem{\global\boolfalse{bbx:parens}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 7.06:47) Reviews are awkward - if no author, date
% position changes so we need a flag to
% track this</pre>
<pre>\newbool{bbx:noreviewauthor}
\AtEveryBibitem{\global\boolfalse{bbx:noreviewauthor}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.30) Sometimes "Vol" is inside the additional
% material parens, sometimes not. This bool
% tracks if it has been inserted yet.
% Can't use \clearfield{volume} as some
% later number format tests need to know
% whether volume was defined.</pre>
<pre>\newbool{bbx:volseen}
\AtEveryBibitem{\global\boolfalse{bbx:volseen}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) This bool tracks if the title was put
% in the author position.
% Can't use \clearfield{title} as some
% later punctuation tests need to know
% whether title was defined.</pre>
<pre>\newbool{bbx:titleinauthpos}
\AtEveryBibitem{\global\boolfalse{bbx:titleinauthpos}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) Need a flag to say when the editor
% is in author position because this
% can effect where the year goes.</pre>
<pre>\newbool{bbx:editorinauthpos}
\AtEveryBibitem{\global\boolfalse{bbx:editorinauthpos}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) Flag to say whether the "in" has
% been placed already in IN*
% Reset every bibitem.</pre>
<pre>\newbool{bbx:in}
\AtEveryBibitem{\global\boolfalse{bbx:in}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Set up some standard APA formats</pre>
<pre>\DeclareFieldFormat{volume}{\apanum{#1}}
\DeclareFieldFormat{series}{#1}
\DeclareFieldFormat{chapter}{\bibcpstring{chapter}~\apanum{#1}}
\DeclareFieldFormat{volumes}{\bibcpstring{volumes}~#1}
\DeclareFieldFormat{addendum}{\mkbibparens{#1}}
\DeclareFieldFormat{part}{#1}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.25) Works by the same author have the full author
% name, not an eliding dash. Author is always
% last name first.
% (APA 6.27) Ellipsis in 7th position and then nothing until last
% (APA 7.10 Example 67) Unknown names and dates
%</pre>
<pre>% \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</pre>
<pre>\DeclareNameAlias{default}{apaauthor}</pre>
<pre>\DeclareNameFormat{apaauthor}{%
\ifthenelse{\value{listcount}=\maxprtauth\AND\value{listcount}<\value{listtotal}}
{\addcomma\addspace\ldots\addspace}
{\ifthenelse{\value{listcount}>\maxprtauth\AND\value{listcount}<\value{listtotal}}
{}
{\iffieldequalstr{doubtfulauthor}{true}
{\mkbibbrackets{\usebibmacro{name:apa:last-first}{#1}{#3}{#4}{#5}{#7}?}}
{\usebibmacro{name:apa:last-first}{#1}{#3}{#4}{#5}{#7}}}}%
\ifthenelse{\value{listcount}=\value{listtotal}}%
{\ifmorenames{\andothersdelim\bibstring{andothers}}{}}{}}</pre>
<pre>\renewbibmacro*{author}{%
\ifnameundef{author}
{\usebibmacro{labeltitle}}
{\printnames[apaauthor][-\value{listtotal}]{author}%
\setunit*{\addspace}%
\printfield{nameaddon}%
\ifnameundef{with}
{}
{\setunit{}\addspace\mkbibparens{\printtext{\bibstring{with}\addspace}%
\printnames[apaauthor][-\value{listtotal}]{with}}
\setunit*{\addspace}}}%
\newunit\newblock%
\usebibmacro{labelyear+extrayear}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) References section delimiters are ampersands, not " and "
% Needs to be in this hook otherwise it sets this for all
% citations too.
% (APA 6.27) Use blank for long lists
% (APA 4.03) Serial comma for lists of three or more</pre>
<pre>\AtBeginBibliography{\renewcommand*{\finalnamedelim}{%
\ifthenelse{\value{listcount}>\maxprtauth}
{}
{\ifthenelse{\value{liststop}>2}
{\finalandcomma\addspace\&\space}
{\addspace\&\space}}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.28) Use "nodate" bibstring for references with no year
% Months and days go into parenthesis with year, if set
% (APA 6.29) Issue goes where month normally goes if it
% is set.</pre>
<pre>% Make sure endmonth gets an expansion too
\DeclareFieldFormat{endmonth}{\mkbibmonth{#1}}</pre>
<pre>\newbibmacro*{monthorissue}{%
\iffieldundef{issue}
{\iffieldundef{month}
{}
{\addcomma\space\printfield{month}%
\iffieldundef{endmonth}{}{/\printfield{endmonth}}}}
{\addcomma\space\printfield{issue}}}</pre>
<pre>\newbibmacro*{labelyear+extrayear}{%
\iffieldundef{labelyear}
{\iffieldundef{origyear}
{}
{\printtext[yearorunkyear]{\printfield[noformat]{origyear}}}}%
{\printtext[yearorunkyear]{\printdateextralabel}}}</pre>
<pre>\DeclareFieldFormat{yearorunkyear}{%
\ifthenelse{\iffieldequalstr{doubtfuldate}{true}}
{\mkbibbrackets{ca\adddot\addspace#1}}
{\mkbibparens{#1}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.29) General format of titles.
% Ugly Chicago-style lowercasing of English titles</pre>
<pre>\DeclareFieldFormat{apacase}{\MakeSentenceCase*{#1}}</pre>
<pre>\DeclareFieldFormat{issuetitle}{#1\isdot}
\DeclareFieldFormat{title}{\iffieldequalstr{titleisdescription}{true}{\mkbibbrackets{#1}}{\mkbibemph{#1}\isdot}}
\DeclareFieldFormat{origtitle}{\mkbibemph{\MakeSentenceCase*{#1}}\isdot}
\DeclareFieldFormat[article]{title}{#1\isdot}
\DeclareFieldFormat[article]{origtitle}{\MakeSentenceCase*{#1}\isdot}
\DeclareFieldFormat[inbook]{title}{#1\isdot}
\DeclareFieldFormat[inbook]{origtitle}{\MakeSentenceCase*{#1}\isdot}
\DeclareFieldFormat[incollection]{title}{#1\isdot}
\DeclareFieldFormat[incollection]{origtitle}{\MakeSentenceCase*{#1}\isdot}
\DeclareFieldFormat[inproceedings]{title}{#1\isdot}
\DeclareFieldFormat[inproceedings]{origtitle}{\MakeSentenceCase*{#1}\isdot}
\DeclareFieldFormat[proceedings]{title}{#1\isdot}
\DeclareFieldFormat[proceedings]{origtitle}{\MakeSentenceCase*{#1}\isdot}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 7.01 Example 10) Newspapers have prefix for pages.</pre>
<pre>\DeclareFieldFormat[newsarticle]{pages}{%
\DeclareNumChars{.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ}%
\mkpageprefix{#1}%
\DeclareNumChars{.}}</pre>
<pre>\DeclareFieldFormat[newsarticle]{newspaper}{\mkbibemph{#1}}
\DeclareFieldFormat[newsarticle]{entrysubtype}{\mkbibbrackets{#1}}
\DeclareFieldFormat[newsarticle]{title}{#1}
\DeclareFieldFormat[article]{pages}{#1}</pre>
<pre>\newbibmacro*{newspaper}{%
\printfield{newspaper}
\setunit{\addcomma\space}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.29) Additional {main}title information in brackets (using)
% {MAIN}TITLEADDON field. Colon after maintitle.</pre>
<pre>\DeclareFieldFormat{titleaddon}{\mkbibbrackets{\MakeSentenceCase*{#1}}}
\DeclareFieldFormat{maintitleaddon}{\mkbibbrackets{\MakeSentenceCase*{#1}}}
\DeclareFieldFormat{booktitleaddon}{\mkbibbrackets{\MakeSentenceCase*{#1}}}</pre>
<pre>\newbibmacro*{bookaddinfo}{%
\ifthenelse{\iffieldundef{edition}\AND\iffieldundef{volumes}}
{}
{\printtext{\bibopenparen}%
\printfield{edition}%
\setunit*{\addcomma\addspace}%
\printfield{volumes}%
\setunit{}%
\printtext{\bibcloseparen}}%
}</pre>
<pre>\renewbibmacro*{title}{%
\ifthenelse{\iffieldundef{title}\AND\iffieldundef{subtitle}}
{}
{\iffieldundef{origtitle}
{\printtext[title]{%
\printfield[apacase]{title}%
\setunit{\subtitlepunct}%
\printfield[apacase]{subtitle}}}
{\printfield{origtitle}%
\setunit{\addspace}%
\printtext[brackets]{%
\printfield[apacase]{title}%
\setunit{\subtitlepunct}%
\printfield[apacase]{subtitle}}}%
\setunit{\addspace}%
\printfield{titleaddon}%
\iffieldequalstr{entrytype}{book}%
{\setunit{\addspace}\usebibmacro{bookaddinfo}}%
{}%
\ifthenelse{%
\ifnameundef{author}\AND%
\(\ifnameundef{editor}\AND\NOT\boolean{bbx:editorinauthpos}\)\AND%
\ifnameundef{producer}\AND%
\ifnameundef{director}\AND%
\ifnameundef{writer}}
{\newunit\newblock
\usebibmacro{labelyear+extrayear}}
{}}}</pre>
<pre>\renewbibmacro*{maintitle}{%
\ifthenelse{\iffieldundef{maintitle}\AND\iffieldundef{mainsubtitle}}
{}
{\printtext[maintitle]{%
\printfield[apacase]{maintitle}%
\setunit{\subtitlepunct}%
\printfield[apacase]{mainsubtitle}}%
\setunit{\addspace}}
\printfield{maintitleaddon}%
\addcolon}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.30) Format of volume and number for articles</pre>
<pre>\DeclareFieldFormat[article]{volume}{\mkbibemph{\apanum{#1}}}
\DeclareFieldFormat[article]{number}{\mkbibparens{\apanum{#1}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.30) Commas between title and volume for articles</pre>
<pre>\renewbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\setunit*{\addcomma\addspace}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}
\setunit{\addcomma\space}}%
\printfield{volume}%
\printfield{number}%
\setunit{\addspace}\newblock
\usebibmacro{issuename}%
\newunit}</pre>
<pre>\newbibmacro*{issuename}{%
\iffieldundef{issuetitle}
{}
{\printtext[issuetitle]{%
\printfield[noformat]{issuetitle}%
\setunit{\subtitlepunct}%
\printfield[noformat]{issuesubtitle}}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.29) Additional information for non-periodicals in
% parenthesis after title. This is ugly but it's
% hard to put in "optional parens" like this
% around an unknown amount of characters.</pre>
<pre>\newbibmacro*{addinfo}{%
\ifthenelse{\iffieldundef{edition}\AND%
\iffieldundef{chapter}\AND%
\iffieldundef{volumes}\AND%
\iffieldundef{pages}\AND%
\iffieldundef{number}\AND%
\(\iffieldundef{volume}\OR\boolean{bbx:volseen}\)}
{}
{\printtext{\bibopenparen}%
\printfield{edition}%
\setunit*{\addcomma\addspace}%
\printfield{chapter}%
\setunit*{\addcomma\addspace}%
\notbool{bbx:volseen}%
{\iffieldundef{volume}{}{\global\booltrue{bbx:volseen}}%
\printfield{volume}%
\iffieldundef{part}{}{\printfield{part}}}{}%
\setunit*{\addcomma\addspace}%
\printfield{number}%
\setunit*{\addcomma\addspace}%
\printfield{volumes}%
\setunit*{\addcomma\addspace}%
\printfield{pages}%
\setunit{}%
\printtext{\bibcloseparen}%
\newunit}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) "In " precedes editor/trans list, no colon</pre>
<pre>\newbibmacro*{in}{%
\ifbool{bbx:in}%
{}%
{\global\booltrue{bbx:in}%
\bibcpstring{in}\setunit{\space}}}</pre>
<pre>%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</pre>
<pre>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (APA 6.27) Editors have first names first ...
% (APA 7.02 Example 27) ... unless there is no author</pre>
<pre>\DeclareNameFormat{apanames}{%
\ifthenelse{\value{listcount}=\maxprtauth