summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex-contrib/biblatex-mla/mla-new.cbx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/biblatex-contrib/biblatex-mla/mla-new.cbx
Initial commit
Diffstat (limited to 'macros/latex/contrib/biblatex-contrib/biblatex-mla/mla-new.cbx')
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-mla/mla-new.cbx834
1 files changed, 834 insertions, 0 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-mla/mla-new.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-mla/mla-new.cbx
new file mode 100644
index 0000000000..21923bd97a
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-mla/mla-new.cbx
@@ -0,0 +1,834 @@
+% mla.cbx, v1.9 2016/11/01 * compatible with biblatex 3.4
+% Maintained at <https://github.com/jmclawson/biblatex-mla> by James Clawson.
+%
+% Feel free to improve, redistribute, and adapt to your own ends. Please share improvements in formatting and MLA standards compliance back to James Clawson: <clawson@gmail.com>.
+%
+% This material is subject to the LaTeX Project Public License. See http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html for the details of that license.
+
+\ProvidesFile{mla-new.cbx}[2016/11/01 v1.9 biblatex citation style]
+
+\newboolean{cbx@firstlonghand}%
+\DeclareBibliographyOption{firstlonghand}[true]{\setboolean{cbx@firstlonghand}{#1}}
+\newboolean{cbx@nofullfootnote}%
+\DeclareBibliographyOption{nofullfootnote}[true]{\setboolean{cbx@nofullfootnote}{#1}}
+
+\DeclareBibliographyOption{mancitepar}[true]{%
+ \ifstrequal{#1}{true}{%
+ \let\mypkg@@everypar\everypar
+ \newtoks\mypkg@everypar
+ \mypkg@everypar\expandafter{\the\everypar}
+ \mypkg@@everypar{\mypkgs@ownstuff\the\mypkg@everypar}
+ \def\mypkgs@ownstuff{%
+ \mancite}%
+ \let\everypar\mypkg@everypar
+ }{}}
+
+% The following is taken from biblatex-chicago-notes-df for parity of feature set. I don't like the naming of the option there ("strict"), so even though consistency trumps (or defines) clarity, I changed the name for now.
+\DeclareBibliographyOption{footnoterulestrict}[true]{% 0.7 renamed
+ \let\splitfootnoterule\footnoterule
+ \renewcommand\footnoterule{}%
+ \advance\skip\footins 4\p@\@plus2\p@\relax
+ \gdef\split@prev{0}
+ \let\pagefootnoterule\footnoterule
+ \def\footnoterule{\relax
+ \ifnum\split@prev=\z@
+ \pagefootnoterule
+ \else
+ \splitfootnoterule
+ \fi
+ \xdef\split@prev{\the\insertpenalties}%
+ }}
+
+\ExecuteBibliographyOptions{citetracker=true,ibidtracker=constrict,opcittracker=constrict,singletitle,autocite=inline,uniquename=init,hyperref=true,useprefix=true,firstlonghand,annotation=false,loccittracker=strict,noremoteinfo=true,date=long,urldate=long,mancitepar=false,datezeros=false}%
+
+\newbool{cbx@named}%
+\newbool{cbx@mlafootnotes}%
+\newbool{cbx@hyperpages}%
+
+\newbool{cbx@mladraft}%
+\DeclareBibliographyOption{mladraft}[true]{%
+ \setboolean{cbx@mladraft}{#1}}
+
+\urlstyle{same}
+
+\newbibmacro*{cite:init}{%
+ \global\let\cbx@tempa=\empty
+ \global\undef\cbx@lasthash}
+
+\renewcommand*{\citereset}{%
+ \usebibmacro{cite:reset}
+ \@ifstar
+ {}
+ {\global\cslet{blx@bsee@\the\c@refsection}\@empty
+ \global\cslet{blx@fsee@\the\c@refsection}\@empty
+ \blx@ibidreset@force
+ \blx@idemreset@force
+ \blx@opcitreset@force
+ \blx@loccitreset@force}}
+
+\InitializeCitationStyle{%
+ \usebibmacro{cite:reset}%
+ \@expandtwoargs\in@{,draft,}{,\@classoptionslist,}%
+ \ifin@%
+ \ExecuteBibliographyOptions{mladraft}% draft option present
+ \fi
+ \long\def\mlasymbolfootnote#1{\begingroup\def%
+ \thefootnote{\fnsymbol{footnote}}\footnote[0]{#1}\endgroup}%
+ \newcounter{mladraftnote}}
+
+\OnManualCitation{%
+ \usebibmacro{cite:reset}%
+ \global\let\cbx@lastpostnote=\empty}
+
+\newbibmacro*{cite:reset}{%
+ \global\undef\cbx@lasthash}%
+
+\newbibmacro*{cite:save}{%
+ \savefield{entrykey}{\cbx@lastkey}%
+ \savefield{namehash}{\cbx@lasthash}%
+ \savefieldcs{entrykey}{cbx@lastkey@\thefield{namehash}}%
+ \csxdef{cbx@lastcite@\thefield{entrykey}}{\the\value{instcount}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%% In-Line Citations %%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newbibmacro*{cite:mla}{%
+ \bibhypertarget{cite\the\value{instcount}}{%
+ \ifciteseen%
+ {\usebibmacro{cite:mla:seen}}
+ {\usebibmacro{cite:mla:unseen}\usebibmacro{cite:save}}%
+ \global\boolfalse{cbx@mlafootnotes}}}
+
+\newbibmacro*{cite:mla:unseen}{%
+ \ifbool{cbx@firstlonghand}
+ {\usebibmacro{cite:mla:noshorthand}}%
+ {\usebibmacro{cite:mla:seen}}}
+
+\newbibmacro*{cite:mla:seen}{%
+ \iffieldundef{shorthand}%
+ {\usebibmacro{cite:mla:noshorthand}}%
+ {\usebibmacro{cite:mla:shorthand}%
+ \savefield{namehash}{\cbx@lasthash}}}
+
+\newbibmacro*{cite:mla:noshorthand}{%
+ \ifciteibid%
+ {\ifbool{cbx@mlafootnotes}%
+ {\usebibmacro{cite:mla:noibid}\usebibmacro{cite:save}}%
+ {\usebibmacro{cite:ibid}}}%
+ {\usebibmacro{cite:mla:noibid}\usebibmacro{cite:save}}}%
+
+\newbibmacro*{cite:mla:noibid}%
+ {\global\boolfalse{cbx@hyperpages}%
+ \ifthenelse{\iffieldequals{namehash}{\cbx@lasthash}}%
+ {\usebibmacro{cite:idem}%
+ \usebibmacro{cite:mla:title}}%
+ {\ifnameundef{labelname}%
+ {\global\boolfalse{cbx@named}\usebibmacro{cite:mla:title}}%
+ {\ifthenelse{\iffieldequalstr{entrytype}{incollection} \or \iffieldequalstr{entrytype}{inreference} \or \iffieldequalstr{entrytype}{review}} %
+ {\ifnameundef{author}%
+ {\global\boolfalse{cbx@named}%
+ \usebibmacro{cite:mla:title}}%
+ {\usebibmacro{cite:name}%
+ \usebibmacro{cite:mla:title}\setunit{\addspace}}}%
+ {\usebibmacro{cite:name}%
+ \usebibmacro{cite:mla:title}}}}}%
+
+\newbibmacro*{cite:mla:shorthand}{%
+ \ifciteibid%
+ {\ifbool{cbx@mlafootnotes}%
+ {\printtext[bibhyperref]{%
+ \printfield[citetitle:\strfield{entrytype}]{shorthand}}\setunit{\addspace}}%
+ {\usebibmacro{cite:ibid}}}%
+ {\global\boolfalse{cbx@hyperpages}\printtext[bibhyperref]{%
+ \printfield[citetitle:\strfield{entrytype}]{shorthand}}\setunit{\addspace}}}
+
+\newbibmacro*{cite:name}{%
+ \ifsingletitle%
+ {\printtext[bibhyperref]{%
+ \printnames{labelname}}%
+ \savefield{namehash}{\cbx@lasthash}%
+ \global\booltrue{cbx@named}}%
+ {\printnames{labelname}%
+ \savefield{namehash}{\cbx@lasthash}%
+ \global\booltrue{cbx@named}}}%
+
+\newbibmacro*{cite:mla:title}{%
+ \ifnameundef{labelname}%
+ {\printtext[bibhyperref]{%
+ \printfield[citetitle:\strfield{entrytype}]{labeltitle}}}%
+ {\ifsingletitle%
+ {}%
+ {\usebibmacro{cite:mla:title:internal}}}%
+ \ifthenelse{\iffieldequalstr{entrytype}{review}%
+ \and\ifnameundef{author}%
+ \and\iffieldundef{title}}%
+ {\printtext[bibhyperref]%
+ {\printtext{\bibcpstring{reviewof}%
+ \setunit{\addspace}%
+ \printfield{booktitle}}}}%
+ {}%
+ \setunit{\addspace}}%
+
+\newbibmacro*{cite:mla:title:internal}{%
+ \ifbool{cbx@named}{\setunit{\addcomma\addspace}}{}%
+ \iffieldundef{title}%
+ {\iffieldequalstr{entrytype}{review}%
+ {\printtext[bibhyperref]%
+ {\printtext{\bibcpstring{reviewof}%
+ \setunit{\addspace}%
+ \printfield{booktitle}}}}%
+ {\ifthenelse{\iffieldequalstr{entrytype}{suppbook}%
+ \OR\iffieldequalstr{entrytype}{suppcollection}}%
+ {\printtext[bibhyperref]{%
+ \printfield[mla:capital]{entrysubtype}}}%
+ {}}}%
+ {\printtext[bibhyperref]{%
+ \printfield[citetitle:\strfield{entrytype}]{labeltitle}}}}%
+
+%%%%%%%%%%% for ibid, idem, opcit %%%%%%%%
+
+\newbibmacro*{cite:idem}{%
+ \ifsingletitle%
+ {\usebibmacro{cite:name}}%
+ {\global\boolfalse{cbx@named}}}
+
+\newbibmacro*{cite:opcit}{%
+ \usebibmacro{cite:mla:title}\setunit{\addspace}}
+
+\newbibmacro*{cite:ibid}{%
+ \iffieldundef{postnote}%
+ {\usebibmacro{cite:mla:noibid}}%
+ {\global\booltrue{cbx@hyperpages}}%
+ \usebibmacro{cite:save}%
+ \iffieldundef{prenote}%
+ {}%
+ {\usebibmacro{cite:mla:noibid}\usebibmacro{cite:reset}}}%
+
+\renewcommand*{\postnotedelim}{\addspace}%
+
+\renewbibmacro*{postnote}{%
+ \iffieldundef{postnote}
+ {}
+ {\setunit{\addspace}%
+ \ifbool{cbx@hyperpages}%
+ {\printtext[bibhyperref]{\printfield[ibidpostnote]{postnote}}}%
+ {\printfield[ibidpostnote]{postnote}}}}%
+
+\newbibmacro*{locpostnote}{%
+ \ifbool{cbx@mladraft}%
+ {\ifbool{cbx@hyperpages}%
+ {\printtext[mlarepeatedcites]{%
+ \printtext[bibhyperref]{\printfield[ibidpostnote]{postnote}}}}%
+ {\printtext[mlarepeatedcites]{%
+ \printfield[ibidpostnote]{postnote}}}%
+ \ifthenelse{\value{mladraftnote}<2}%
+ {\mlasymbolfootnote{\addtocounter{mladraftnote}{4}%
+ $\clubsuit$ It is best to cite once at the end %
+ of a passage quoting a single page range.}}%
+ {}}%
+ {\usebibmacro{postnote}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%% Footnote Citations %%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newbibmacro*{cite:mla:foot}{%
+ \ifciteseen%
+ {\usebibmacro{cite:mla:seen}}%
+ {\ifbool{cbx@nofullfootnote}%
+ {\usebibmacro{cite:mla:seen}}%
+ {\usedriver{}{footcite:\strfield{entrytype}}}%
+ }}
+
+\newbibmacro*{cite:foot:name}{%
+ \global\boolfalse{cbx@named}%
+ \usebibmacro{cite:foot:author/editor}%
+ \savefield{namehash}{\cbx@lasthash}}%
+
+\newbibmacro*{cite:foot:author:review}{%
+ \global\boolfalse{cbx@named}%
+ \ifnameundef{author}%
+ {}%
+ {\usebibmacro{cite:foot:author}%
+ \savefield{namehash}{\cbx@lasthash}%
+ \global\booltrue{cbx@named}%
+ }}%
+
+\newbibmacro*{cite:foot:author/editor}%
+{\ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}}%
+ {\usebibmacro{cite:foot:author}}%
+ {\usebibmacro{cite:foot:editor}}}%
+
+\newbibmacro*{cite:foot:author}{%
+ \ifbool{bbx@totalnames}%
+ {\printnames[byauthor][-\value{listtotal}]{author}}%
+ {\printnames[byauthor]{author}}%
+ \clearname{author}\global\booltrue{cbx@named}%
+ \printfield{nameaddon}}
+
+\newbibmacro*{cite:foot:editor}{%
+ \ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}}%
+ {\ifbool{bbx@totalnames}%
+ {\printnames[byeditor][[-\value{listtotal}]]{editor}}%
+ {\printnames[byeditor]{editor}}%
+ \setunit*{\addcomma\space}%
+ \usebibmacro{editorstrg}%
+ \clearname{editor}\global\booltrue{cbx@named}}%
+ {\ifusetranslator%
+ {\printnames[byeditor]{translator}%
+ \setunit*{\addcomma\space}%
+ \usebibmacro{translatorstrg}%
+ \clearname{translator}\global\booltrue{cbx@named}}%
+ {}%
+ }}%
+
+\newbibmacro*{cite:foot:byauthor:incollection}{%
+ \ifthenelse{\ifuseauthor\OR%
+ \ifnameundef{author}\OR%
+ \ifnamesequal{author}{bookauthor}}%
+ {}%
+ {\biblcstring{byauthor}\addspace%
+ \printnames[byauthor]{author}}}
+
+\newbibmacro*{cite:foot:byauthor}{%
+ \ifthenelse{\ifuseauthor\OR%
+ \ifnameundef{author}}%
+ {}%
+ {\bibstring{byauthor}\addspace\printnames[byauthor]{author}}}
+
+\newbibmacro*{cite:foot:bybookauthor}{%
+ \ifthenelse{\ifnameundef{bookauthor}\OR%
+ \(\ifnamesequal{author}{bookauthor}\AND\ifuseauthor\)}%
+ {}%
+ {\bibstring{byauthor}\addspace\printnames[byauthor]{bookauthor}}}
+
+\DeclareBibliographyDriver{footcite:booklet}{%
+ \usedriver{}{footcite:book}}
+
+\DeclareBibliographyDriver{footcite:collection}{%
+ \usedriver{}{footcite:book}}
+
+\DeclareBibliographyDriver{footcite:reference}{%
+ \usedriver{}{footcite:book}}
+
+\DeclareBibliographyDriver{footcite:book}{%
+ \usebibmacro{cite:foot:name}%
+ \ifbool{cbx@named}% 0.7.1
+ {\setunit{\newunitpunct}}%
+ {\setunit{}}%
+ \usebibmacro{cite:foot:title}%
+ \newunit%
+ \usebibmacro{cite:foot:byauthor}%
+ \newunit%
+ \usebibmacro{cite:foot:byeditor}%
+ \newunit%
+ \usebibmacro{cite:foot:bytranslator}%
+ \newunit%
+ \printfield{edition}%
+ \newunit%
+ \iffieldundef{maintitle}%
+ {\printfield{volume}%
+ \printfield{part}}%
+ {}%
+ \newunit%
+ \printfield{volumes}%
+ \newunit%
+ \usebibmacro{series+number}%
+ \setunit{\addspace}%
+ \usebibmacro{cite:foot:publisher+location+year}}
+
+\newbibmacro*{cite:foot:publisher+location+year}{%
+ \printtext[parens]{%
+ \printfield[noformat]{origyear}%
+ \setunit*{\addsemicolon\addspace}%
+ \printlist{location}%
+ \iflistundef{publisher}%
+ {\setunit*{\addspace}}%
+ {\setunit*{\addcolon\space}}%
+ \printlist{publisher}%
+ \newunit%
+ \printfield{year}}}
+
+\DeclareBibliographyDriver{footcite:article}{%
+ \usebibmacro{cite:foot:name}%
+ \newunit%
+ \usebibmacro{cite:foot:title}%
+ \newunit%
+ \usebibmacro{cite:foot:byauthor:incollection}%
+ \newunit%
+ \usebibmacro{cite:foot:bytranslator}%
+ \newunit%
+ \usebibmacro{journal+issuetitle}%
+ \newunit%
+ \iffieldundef{url}{}{\usebibmacro{cite:foot:url+urldate}}%
+ \setunit{\addcolon\addspace}%
+ \iffieldundef{postnote}%
+ {\printfield{pages}}%
+ {}}%
+
+\newbibmacro*{cite:foot:url+urldate}{%
+ \printtext{\biburldatelong}%
+ \setunit{\addspace}%
+ \printfield{url}}
+
+\DeclareBibliographyDriver{footcite:inreference}{%
+ \usedriver{}{footcite:incollection}}
+
+\DeclareBibliographyDriver{footcite:incollection}{%
+ \usebibmacro{cite:foot:name}%
+ \ifbool{cbx@named}% 0.7.1
+ {\setunit{\newunitpunct}}%
+ {\setunit{}}%
+ \ifthenelse{%
+ \iffieldequalstr{entrysubtype}{book}%
+ \OR%
+ \iffieldequalstr{entrysubtype}{play}}%
+ {\usebibmacro{cite:foot:title:incollection:italics}}%
+ {\usebibmacro{cite:foot:title}}%
+ \newunit%
+ \printfield[mla:lowercase]{titleaddon}%
+ \newunit%
+ \usebibmacro{cite:foot:byauthor:incollection}%
+ \newunit%
+ \ifbool{bbx@uniquetranslator}%
+ {\usebibmacro{cite:foot:bytranslator}\clearname{translator}}%
+ {}%
+ \ifthenelse{%
+ \iffieldequalstr{entrysubtype}{book}%
+ \OR%
+ \iffieldequalstr{entrysubtype}{play}}%
+ {\setunit{\addcomma\addspace\bibstring{in}\addspace}}%
+ {\newunit}%
+ \printtext[citetitle:book]{%
+ \printfield[noformat]{booktitle}%
+ \setunit{\subtitlepunct}%
+ \printfield[noformat]{booksubtitle}%
+ }%
+ \usebibmacro{cite:foot:bybookauthor}%
+ \newunit%
+ \usebibmacro{cite:foot:byeditor}%
+ \newunit%
+ \iffieldsequal{year}{edition}%
+ {\printfield{year}~\bibstring{edition}\clearfield{year}}%
+ {\printfield[foot:cite:edition:format]{edition}\isdot}%
+ \newunit%
+ \iffieldundef{maintitle}%
+ {\printfield{volume}%
+ \printfield{part}}%
+ {}%
+ \newunit%
+ \printfield{volumes}%
+ \newunit%
+ \usebibmacro{series+number}%
+ \setunit{\addspace}%
+ \iffieldundef{year}%
+ {}%
+ {\usebibmacro{cite:foot:publisher+location+year}}%
+ \setunit{\addspace}%
+ \iffieldundef{postnote}%
+ {\printfield{pages}}%
+ {}%
+ }%
+
+\DeclareBibliographyDriver{footcite:phdthesis}{%
+ \usedriver{}{footcite:thesis}}
+
+\DeclareBibliographyDriver{footcite:thesis}{%
+ \usebibmacro{cite:foot:name}%
+ \newunit%
+ \usebibmacro{title}%
+ \newunit%
+ \ifbibstring{\thefield{type}}%
+ {\printtext[default]{\bibstring{\thefield{type}}}}%
+ {\printtext[default]{\printfield{type}}}%
+ \newunit%
+ \printlist{institution}%
+ \newunit%
+ \iffieldequalstr{entrysubtype}{published}%
+ {\printfield{origyear}\clearfield{origyear}}%
+ {\printfield{year}}%
+ \newunit%
+ \iffieldequalstr{entrysubtype}{published}%
+ {\usebibmacro{series+number}%
+ \setunit{\addspace}%
+ \usebibmacro{cite:foot:publisher+location+year}}%
+ {}}
+
+\DeclareBibliographyDriver{footcite:review}{%
+ \usebibmacro{cite:foot:author:review}%
+ \ifbool{cbx@named}%
+ {\setunit{\newunitpunct}}%
+ {\setunit{}}%
+ \usebibmacro{cite:foot:title}%
+ \setunit*{\newunitpunct}%
+ \printtext[bibhyperref]%
+ {\bibstring{reviewof}\addspace\printfield{booktitle}}%
+ \newunit%
+ \ifnameundef{bookauthor}%
+ {\printtext[reviewededitor]{\printnames[default]{editor}}}%
+ {\printtext[reviewedauthor]{\printnames[default]{bookauthor}}}%
+ \newunit%
+ \usebibmacro{journal+issuetitle}%
+ \newunit%
+ \iffieldundef{url}{}{\usebibmacro{cite:foot:url+urldate}}%
+ \setunit{\addcolon\addspace}%
+ \iffieldundef{postnote}%
+ {\printfield{pages}}%
+ {}}%
+
+\DeclareBibliographyDriver{footcite:video}{%
+ \setbool{cbx@named}{false}%
+ \ifnamesequal{labelname}{author}%
+ {\usebibmacro{mla:video:name:first:footnote}{author}%
+ \setbool{cbx@named}{true}}%
+ {}%
+ \ifnamesequal{labelname}{editor}%
+ {\usebibmacro{mla:video:name:first:footnote}{editor}%
+ \setbool{cbx@named}{true}}%
+ {}%
+ \ifbool{cbx@named}%
+ {\setunit{\newunitpunct}}%
+ {\setunit{}}%
+ \printtext[bibhyperref]{\printfield{title}}%
+ \newunit%
+ \ifnameundef{bookauthor}%
+ {}%
+ {\printtext[reviewedauthor]{\printnames[byeditor]{bookauthor}}}%
+ \newunit%
+ \usebibmacro{mla:video:name:second:footnote}{author}%
+ \newunit%
+ \usebibmacro{mla:video:name:second:footnote}{editor}%
+ \newunit%
+ \usebibmacro{mla:video:name:second:footnote}{namea}%
+ \newunit%
+ \usebibmacro{mla:video:name:second:footnote}{nameb}%
+ \newunit%
+ \usebibmacro{mla:video:name:second:footnote}{namec}%
+ \newunit%
+ \printfield{origyear}%
+ \newunit%
+ \printfield{howpublished}%
+ \newunit%
+ \printlist{publisher}%
+ \newunit%
+ \printfield{year}%
+ \addperiod}
+
+\DeclareBibliographyDriver{footcite:suppcollection}{%
+ \usedriver{}{footcite:suppbook}}
+
+\DeclareCiteCommand{\titleandsubtitle}
+ {\boolfalse{citetracker}%
+ \boolfalse{pagetracker}%
+ \usebibmacro{prenote}}
+ {\indexfield{indextitle}%
+ \printtext[citetitle]{%
+ \printfield[noformat]{title}%
+ \iffieldundef{subtitle}{}{\subtitlepunct}%
+ \printfield[noformat]{subtitle}}}%
+ {\multicitedelim}
+ {\usebibmacro{postnote}}
+
+\DeclareBibliographyDriver{footcite:suppbook}{%
+ \usebibmacro{cite:foot:name}%
+ \newunit%
+ \usebibmacro{cite:foot:title}%
+ \newunit%
+ \printfield{entrysubtype}%
+ \newunit%
+ \usebibmacro{booktitle}%
+ \setunit{\newunitpunct\bibstring{bytypeauthor}\addspace}%
+ \ifnamesequal{labelname}{bookauthor}%
+ {\printnames[mla:last]{bookauthor}}%
+ {\printnames[byauthor]{bookauthor}}%
+ \newunit%
+ \usebibmacro{byeditor+others}%
+ \newunit%
+ \printfield{edition}%
+ \newunit%
+ \iffieldundef{maintitle}%
+ {\printfield{volume}%
+ \printfield{part}}%
+ {}%
+ \newunit%
+ \printfield{volumes}%
+ \newunit%
+ \usebibmacro{series+number}%
+ \setunit{\addspace}%
+ \usebibmacro{cite:foot:publisher+location+year}%
+ \setunit{\addspace}%
+ \iffieldundef{postnote}%
+ {\printfield{pages}}%
+ {}}
+
+\DeclareBibliographyDriver{footcite:unpublished}{%
+ \usebibmacro{cite:foot:name}%
+ \newunit%
+ \usebibmacro{mla:title:unpublished}%
+ \newunit%
+ \newunit%
+ \printfield{note}%
+ \newunit%
+ \usebibmacro{mla:all:type:foot}%
+ \setunit*{\isdot\addspace}%
+ \printfield{number}%
+ \newunit%
+ \printfield{library}%
+ \setunit{\addcomma\addspace}%
+ \printlist{location}%
+ \newunit%
+ \printfield{addendum}%
+ \usebibmacro{finentry}}
+
+\DeclareBibliographyDriver{footcite:periodical}{%
+ \usebibmacro{cite:foot:editor}%
+ \setunit{\labelnamepunct}\newblock%
+ \usebibmacro{mla:article:journal+issuetitle}%
+ \newunit\newblock
+ \printfield{note}%
+ \setunit{\addcolon\addspace}\newblock
+ \iffieldundef{postnote}%
+ {\printfield{pages}}%
+ {}%
+ \newunit\newblock
+ \usebibmacro{url+urldate}%
+ \newunit\newblock
+ \printfield{addendum}%
+ \newunit\newblock
+ \usebibmacro{pageref}%
+ \usebibmacro{finentry}}
+
+\newbibmacro*{cite:foot:title}{%
+ \iffieldundef{title}%
+ {}%
+ {\printtext[bibhyperref]{%
+ \printtext[citetitle:\strfield{entrytype}]{%
+ \printfield[noformat]{title}%
+ \setunit{\subtitlepunct}%
+ \printfield[noformat]{subtitle}}}%
+ }}%
+
+\newbibmacro*{cite:foot:title:incollection:italics}{%
+ \printtext[bibhyperref]{%
+ \printtext[title:book]{%
+ \printfield[noformat]{title}%
+ \setunit{\subtitlepunct}%
+ \printfield[noformat]{subtitle}}%
+ }}%
+
+\newbibmacro*{cite:foot:bytranslator}{%
+ \ifnameundef{translator}%
+ {}%
+ {\printtext[default]{\bibstring{bytranslator}\addspace%
+ \printnames[cite:foot:translator]{translator}}}}
+
+\newbibmacro*{cite:foot:byeditor}{%
+ \ifthenelse{\ifnameundef{editor}\OR%
+ \( \iffieldequalstr{entrytype}{collection}\AND%
+ \ifnameundef{author} \)}%
+ {}%
+ {\usebibmacro{byeditor+others}}}
+
+\newbibmacro*{mla:foot:postnote}{%
+ \iffieldundef{postnote}%
+ {\unspace}%
+ {\unspace\addspace\printfield[footpostnote]{postnote}}%
+ \usebibmacro{cite:reset}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%% Format Declarations %%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\DeclareFieldFormat{citetitle:article}{\mkbibquote{#1}}
+\DeclareFieldFormat{citetitle:inreference}{\mkbibquote{#1}}
+\DeclareFieldFormat{citetitle:book}{\mkbibemph{#1}}
+\DeclareFieldFormat{citetitle:booklet}{\mkbibemph{#1}}%
+\DeclareFieldFormat{citetitle:collection}{\mkbibemph{#1}}%
+\DeclareFieldFormat{citetitle:reference}{\mkbibemph{#1}}%
+\DeclareFieldFormat{citetitle:incollection}{\mkbibquote{#1}}
+\DeclareFieldFormat{citetitle:online}{\mkbibquote{#1}}% 1.4.9
+\DeclareFieldFormat{citetitle:inproceedings}{\mkbibquote{#1}}
+\DeclareFieldFormat{citetitle:unpublished}{\mkbibquote{#1}}
+\DeclareFieldFormat{citetitle:thesis}{\mkbibquote{#1}}
+\DeclareFieldFormat{citetitle:video}{\mkbibemph{#1}}
+\DeclareFieldFormat{citetitle:review}{\mkbibquote{#1}}%
+\DeclareFieldFormat{mla:lowercase}{\MakeLowercase{#1}}%
+\DeclareFieldFormat{ibidpostnote}{#1}%
+\DeclareFieldFormat{footpostnote}{#1}%
+\DeclareFieldFormat{mlarepeatedcites}{\fbox{#1}%
+ \marginpar{\hfill\footnotesize{$\clubsuit$}}}%
+\@ifpackagelater{biblatex}{2016/03/01}{%
+ \DeclareNameFormat{cite:foot:editor}{%
+ \nameparts{#1}%
+ \usebibmacro{name:given-family}{\namepartfamily}{\namepartgiven}{\namepartprefix}{\partnamesuffix}%
+ \usebibmacro{name:andothers}}%
+ \DeclareNameFormat{cite:foot:translator}{%
+ \nameparts{#1}%
+ \usebibmacro{name:given-family}{\namepartfamily}{\namepartgiven}{\namepartprefix}{\partnamesuffix}%
+ \usebibmacro{name:andothers}}%
+}{%
+ \DeclareNameFormat{cite:foot:editor}{%
+ \usebibmacro{name:first-last}{#1}{#3}{#5}{#7}%
+ \usebibmacro{name:andothers}}%
+ \DeclareNameFormat{cite:foot:translator}{%
+ \usebibmacro{name:first-last}{#1}{#3}{#5}{#7}%
+ \usebibmacro{name:andothers}}%
+}%
+\DeclareFieldFormat{foot:cite:edition:format}{%
+ \ifinteger{#1}%
+ {\mkbibordinal{#1}~\bibstring{edition}}%
+ {\printtext[mla:lowercase]{#1}}}
+\DeclareFieldFormat{supptotitle}%
+ {\bibstring{supptotitle}\addspace\mkbibemph{#1}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%% Cite Commands %%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\renewbibmacro*{prenote}{%
+ \iffieldundef{prenote}
+ {\global\undef\cbx@lastprenote}
+ {\printfield{prenote}%
+ \prenotedelim%
+ \ifthenelse{\iffieldequals{prenote}{\cbx@lastprenote} \and \iffieldequals{entrykey}{\cbx@lastkey}}%
+ {}%
+ {\usebibmacro{cite:reset}}%
+ \savefield{prenote}{\cbx@lastprenote}}}
+
+\DeclareCiteCommand{\parencite}[\mkbibparens]
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite:mla}}
+ {}
+ {\ifthenelse{\iffieldequals{postnote}{\cbx@lastpostnote} \and \iffieldequals{entrykey}{\cbx@lastkey}}%
+ {\usebibmacro{locpostnote}}%
+ {\usebibmacro{postnote}}%
+ \savefield{postnote}{\cbx@lastpostnote}}%
+
+\DeclareCiteCommand*{\parencite}[\mkbibparens]
+ {\global\undef\cbx@lasthash\usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite:mla:starred:title}}
+ {}
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\cite}% 1.9 added support for smart switching when used in footnote
+ {\iffootnote{\iffieldundef{prenote}
+ {\global\undef\cbx@lastprenote
+ \printtext{See\addspace}}}
+ \usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite:mla}}%
+ {}%
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\textcite}% 1.9 new
+ {\iffootnote{\iffieldundef{prenote}
+ {\global\undef\cbx@lastprenote
+ \printtext{See\addspace}}}
+ \usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite:mla}}%
+ {}%
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\headlesscite}% 1.9 added alias to starred command for Chicago compatibility
+ {\iffootnote{\iffieldundef{prenote}
+ {\global\undef\cbx@lastprenote
+ \printtext{See\addspace}}}
+ \usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite:mla:starred:title}}
+ {}%
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand*{\cite}% 1.9 added support for smart switching when used in footnote
+ {\iffootnote{\iffieldundef{prenote}
+ {\global\undef\cbx@lastprenote
+ \printtext{See\addspace}}}
+ \usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite:mla:starred:title}}
+ {}%
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\footcite}[\mkbibfootnote]
+ {\bibsentence%
+ \usebibmacro{cite:init}%
+ \usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \global\booltrue{cbx@mlafootnotes}%
+ \renewcommand*{\newunitpunct}{\addcomma\space}%
+ \usebibmacro{cite:mla:foot}}
+ {}
+ {\usebibmacro{mla:foot:postnote}}
+
+\DeclareCiteCommand{\fullcite}
+ {\iffootnote{\iffieldundef{prenote}
+ {\global\undef\cbx@lastprenote
+ \printtext{See\addspace}}}
+ \usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite:mla:title}}
+ {}%
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\headlessfullcite}
+ {\iffootnote{\iffieldundef{prenote}
+ {\global\undef\cbx@lastprenote
+ \printtext{See\addspace}}}
+ \usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite:mla:starred:title}}
+ {}%
+ {\usebibmacro{postnote}}
+
+\newbibmacro{mla:fullcite:prenote}{%
+\citereset\renewbibmacro*{author}{%
+ \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}}
+ {\DeclareNameAlias{author}{default}\ifthenelse{\iffieldequals{namehash}{\cbx@lasthash}\AND\NOT
+ \iffirstonpage}
+ {\mbox{\mlanamedash\unspace\newunitpunct}}
+ {\printnames{author}%
+ \savefield{namehash}{\cbx@lasthash}}}
+ {\let\cbx@lasthash\undefined}}}
+
+% \DeclareCiteCommand{\fullcite}
+% {\usebibmacro{mla:fullcite:prenote}\usebibmacro{prenote}}
+% {\usedriver
+% {\DeclareNameAlias{sortname}{default}\DeclareNameAlias{default}{last-first}}
+% {\thefield{entrytype}}}
+% {\multicitedelim}
+% {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\smartcite}[\iffootnote\mkbibparens\mkbibfootnote]%
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite:mla}}
+ {\multicitedelim}
+ {\usebibmacro{cite:postnote}}
+
+\newbibmacro*{cite:mla:starred:title}{%
+ \ifciteibid
+ {\iffieldundef{postnote}
+ {\usebibmacro{cite:mla:title:alone}}
+ {\global\booltrue{cbx@hyperpages}}}
+ {\iffieldundef{shorthand}
+ {\ifsingletitle%
+ {\iffieldundef{postnote}
+ {\usebibmacro{cite:mla:title:alone}}
+ {\global\booltrue{cbx@hyperpages}}}%
+ {\usebibmacro{cite:mla:title:alone}\setunit{\addspace}}}
+ {\usebibmacro{cite:mla:shorthand}}}}
+
+\newbibmacro*{cite:mla:title:alone}{%
+ \printtext[bibhyperref]{% suggested by StackExchange user Audrey
+ \printfield[citetitle:\strfield{entrytype}]{labeltitle}}%
+ \ifthenelse{\iffieldequalstr{entrytype}{suppbook}\and\iffieldundef{title}}%
+ {\printtext[bibhyperref]{%
+ \printfield[mla:capital]{entrysubtype}}}%
+ {}}
+
+
+\endinput