% This is a biblatex citation style file, originally adapted from % Lehman's authortitle-cverb.cbx. It is heavily modified, with the % intention of providing footnote citations and a bibliography % formatted according to the specifications of the Chicago Manual of % Style. \ProvidesFile{chicago-notes.cbx}[2020/04/20 v 3.14 biblatex citation style] %%%% Biblatex initialization + Chicago options + Toggles %%%% \newbool{cms:bracket}% Date-handling booleans \newbool{cms:extraparens} \newbool{cms:comma} \newbool{cms:nd} \providecommand*{\mkibid}[1]{#1} \providetoggle{cms@oneyear}% Needed for author-date \providetoggle{cms@switchdates}% ditto \providetoggle{cms@jrcomma}% For comma before Jr./Sr. \providetoggle{cms@url}% These are for the field-exclusion options \providetoggle{cms@urltime}% 17th ed. \providetoggle{cms@doi} \providetoggle{cms@doionly} \providetoggle{cms@eprint} \providetoggle{cms@isbn} \providetoggle{cms@numbermonth} \providetoggle{cms@bookpages} \providetoggle{cms@hidevolumes}% Modify volume fix \providetoggle{cms@mtvolpunct} \providetoggle{cms@bookseries} \providetoggle{cms@citeshser}% For shortseries \providetoggle{cms@bibshser} \providetoggle{cms@notefield} \providetoggle{cms@addendum} \providetoggle{cms@comprange} \providetoggle{cms@compyears} \providetoggle{cms@modpostnote} \providetoggle{cms@url@innotes} \providetoggle{cms@ukord} \providetoggle{cms@bc}% Attempt to provide correct dateera handling \providetoggle{cms@alwaysrange}% Turns off decade and century handling \providetoggle{cms@decaderange}% Only turns off decade handling \providetoggle{cms@centuryrange}% Only turns off century handling \providetoggle{cms@nodatebrackets}% For brackets in uncertain & circa \providetoggle{cms@noyearbrackets}% \providetoggle{cms@nodates}% \providetoggle{cms@strict} \providetoggle{cms@headlessnote} \providetoggle{cms@origcite} \providetoggle{cms@fullnote} \providetoggle{cms@shortnote} \providetoggle{cms@allshort} \providetoggle{cms@noibid} \providetoggle{cms@noidem} \providetoggle{cms@namedash} \providetoggle{cms@useibid} \providetoggle{cms@usecompiler} \providetoggle{cms@shorthandibid} \providetoggle{cms@printshhand} \providetoggle{cms@fullshhand} \providetoggle{cms@inheritshhand} \providetoggle{cms@firstshort} \providetoggle{cms@origpublished} \providetoggle{cms@loccit} \providetoggle{cms@annotation} \providetoggle{cms@postposit} \providetoggle{cms@legalnotes}% For legal types \providetoggle{cms@supranotes}% Ditto \providetoggle{cms@noneshort}% Ditto \providetoggle{cms@running@text}% For Jurisdiction entries \providetoggle{cms@noterefs}% Backrefs inside notes \providetoggle{cms@forcenoteref}% For shortrefcite command \providetoggle{cms@zeropages}% For replacing zero sections \providetoggle{cms@hidezeros}% Ditto, but differently \providetoggle{cms@fullrefs}% Force printing of sec. no. w/in same sec. \providetoggle{cms@ensplit}% Split endnotes w/o cmsendnotes \providetoggle{cms@endnote}% Distinguish foot- and endnotes \providetoggle{cms@relreview}% \providetoggle{cms@vol} \providetoggle{cms@postvol} \providetoggle{cms@usedvol} \providetoggle{cms@citecrossref} \providetoggle{cms@bibcrossref} \providetoggle{cms@bookcitexref} \providetoggle{cms@bookbibxref} \providetoggle{cms@xrefvol} \providetoggle{cms@xrefpart} \providetoggle{cms@omitxrefdate} \providetoggle{cms@xrefurl} \providetoggle{cms@blogurl}% For 17th ed. blogs w/ comments \providetoggle{cms@related} \providetoggle{cms@citerel} \providetoggle{cms@gencite} \providetoggle{cms@genallnames} \AtEveryCitekey{% \iffieldundef{userc}% {}% {\nocite{\thefield{userc}}}% \global\togglefalse{cms@loccit}% \global\csundef{@cmsst}% \ifboolexpr{% test {\iffieldundef{origyear}}% or test {\iffieldundef{year}}% or not test {\iffieldint{year}}% or not test {\iffieldint{origyear}}% or togl {cms@switchdates}% }% {}% {\ifboolexpr{% Needed for open-ended ranges test {\iffieldundef{endyear}}% or not test {\iffieldnum{endyear}}% }% {\ifthenelse{\thefield{origyear}>\thefield{year}}% {\toggletrue{cms@switchdates}}% {}}% {\ifthenelse{\thefield{origyear}>\thefield{endyear}}% {\toggletrue{cms@switchdates}}% {}}}}% \protected\def\cms@warning@noline#1{% \begingroup \blx@safe@actives \PackageWarningNoLine{biblatex-chicago}{#1}% \endgroup} %% These are options for extended date attributes \DeclareBiblatexOption{global,entry}[boolean]{alwaysrange}[true]{% \settoggle{cms@alwaysrange}{#1}}% \DeclareBiblatexOption{global,entry}[boolean]{decaderange}[true]{% \settoggle{cms@decaderange}{#1}}% \DeclareBiblatexOption{global,entry}[boolean]{centuryrange}[true]{% \settoggle{cms@centuryrange}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{nodatebrackets}[true]{% \settoggle{cms@nodatebrackets}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{noyearbrackets}[true]{% \settoggle{cms@noyearbrackets}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{nodates}[true]{% \settoggle{cms@nodates}{#1}}% \DeclareBiblatexOption{global,entry}[boolean]{genallnames}[true]{% \settoggle{cms@genallnames}{#1}} \DeclareBibliographyOption{annotation}[true]{% \global\toggletrue{cms@annotation}} \DeclareBibliographyOption[boolean]{noibid}[true]{% \global\toggletrue{cms@noibid}} \DeclareBibliographyOption[boolean]{useibid}[true]{% \global\toggletrue{cms@useibid}} \DeclareBibliographyOption[boolean]{dashed}[true]{% \settoggle{cms@namedash}{#1}} \DeclareBibliographyOption[boolean]{short}[true]{% \global\settoggle{cms@allshort}{#1}} \DeclareBibliographyOption[boolean]{hidezeros}[true]{% \global\settoggle{cms@hidezeros}{#1}} \DeclareEntryOption[boolean]{hidezeros}[true]{% \settoggle{cms@hidezeros}{#1}} \DeclareBibliographyOption[boolean]{pagezeros}[true]{% \global\settoggle{cms@zeropages}{#1}} \DeclareEntryOption[boolean]{pagezeros}[true]{% \settoggle{cms@zeropages}{#1}} \DeclareBibliographyOption[boolean]{endnotesplit}[true]{% \global\settoggle{cms@ensplit}{#1}} \DeclareBibliographyOption[integer]{noterefinterval}[0]{% \gdef\cms@note@distance{#1}}% \DeclareBibliographyOption[string]{noterefintro}[preface]{% \def\cms@note@introname{#1}}% \DeclareBiblatexOption{global}[boolean]{fullnoterefs}[true]{% \global\settoggle{cms@fullrefs}{#1}}% \DeclareBibliographyOption[string]{noteref}[none]{% \global\toggletrue{cms@noterefs}% \ifcsdef{cms@opt@noterefs@#1}% {\letcs\cms@noteref@casenum{cms@opt@noterefs@#1}% \def\cms@noteref@interval{#1}% \def\cms@note@distance{0}}% {\blx@err@invopt{noteref=#1}{}}}% \def\cms@opt@noterefs@none{0}% \def\cms@opt@noterefs@part{1}% \def\cms@opt@noterefs@chapter{2}% \def\cms@opt@noterefs@section{3}% \def\cms@opt@noterefs@subsection{4}% \def\cms@opt@noterefs@page{5}% \newbibmacro*{noteref+interval}{% \ifcase\cms@noteref@casenum% 0 \cms@noteref{none}% \or % 1 \cms@noteref{part}% \or % 2 \cms@noteref{chapter}% \or % 3 \cms@noteref{section}% \or % 4 \cms@noteref{subsection}% \or % 5 \cms@noteref{page}% \fi} \newrobustcmd*{\cms@noteref}[1]{% \ifcsundef{cms@recent@\thefield{entrykey}}% {\cms@warning@noline% {I can't find a long citation of\MessageBreak the entry \thefield{entrykey}.\MessageBreak Most likely the initial citation\MessageBreak did not occur inside a note, or\MessageBreak perhaps you used a \citejournal\MessageBreak command for it. Biblatex-chicago\MessageBreak won't be able to generate a back\MessageBreak reference to it}}% {\ifboolexpr{% (( test {\iffieldequalstr{relatedtype}{reviewof}}% or test {\iffieldequalstr{relatedtype}{commenton}}% 17th ed. ) and ( test {\ifentrytype{review}}% or test {\ifentrytype{suppperiodical}}% or ( test {\ifentrytype{online}}% 17th ed. and test {\IfBeginWith{\thefield{title}}{CCCCCC}}% ))) or ( test {\IfBeginWith{\thefield{relatedtype}}{maintitl}}% and test {\IfBeginWith{\thefield{entrytype}}{mv}}% ) }% {\csdef{cms@tempcounta}{\value{cms@reviewcount}}}% {\csdef{cms@tempcounta}{\value{instcount}}}% \ifboolexpr{% test {\ifsamepage{\csuse{cms@tempcounta}}%{\the\value{instcount}} {\csuse{cms@recent@\thefield{entrykey}}}}% Replaces cbx@f@... and not togl {cms@forcenoteref}% }% {}% {\ifboolexpr{% test {\ifnumless{\csuse{cms@tempcounta} - \csuse{cms@recent@\thefield{entrykey}}}% {\csuse{cms@note@distance}}}% and not togl {cms@forcenoteref}% }% {}% {\ifnumequal{\csuse{cms@opt@noterefs@#1}}{0}% {\setunit{\addspace\bibopenparen}% \bibsstring{seenote}\addnbspace \printtext{\ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}}% \bibcloseparen}% {\ifboolexpr{% ( not test {\ifcsvoid{cms@end@split}}% and togl {cms@endnote}% ) or togl {cms@ensplit}% or test {\ifnumequal{\csuse{cms@opt@noterefs@#1}}{5}}% }% {\ifnumequal{\csuse{cms@opt@noterefs@#1}}{5}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace\bibsstring{page}\addnbspace% \pageref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\iftoggle{cms@ensplit}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \getrefbykeydefault{cbx@\csuse{cbx@f@\thefield{entrykey}}}% {name}{}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \StrCut{% \getrefbykeydefault{cbx@\csuse{cbx@f@\thefield{entrykey}}}% {name}{}}{\ }{\cms@AA}{\cms@BB}% \ifcsvoid{cms@BB}% {}% {\StrLeft{\expandafter\string\cms@BB}{5}[\cms@CC]% \StrGobbleLeft{\expandafter\string\cms@CC}{1}[\cms@CC]}% \ifboolexpr{% test {\ifcsvoid{cms@BB}}% or test {\ifdefstring{\cms@CC}{zeri}}% }% {\ifcsvoid{cms@BB}% {\ifbibxstring{\csuse{cms@note@introname}}% {\bibsstring{\csuse{cms@note@introname}}}% {\csuse{cms@note@introname}}}% {\ifbibxstring{\csuse{cms@note@introname}}% {\bibsstring{\csuse{cms@note@introname}}% \addcomma\addspace\cms@BB}% {\csuse{cms@note@introname}% \addcomma\addspace\cms@BB}}}% {\ifcsvoid{cms@end@subheadername}% {\ifbibxstring{\csuse{cms@end@split}}% {\bibsstring{\csuse{cms@end@split}}\addnbspace\cms@BB}% {\csuse{cms@end@split}\addnbspace\cms@BB}}% {\ifbibxstring{\csuse{cms@end@subheadername}}% {\bibsstring{\csuse{cms@end@subheadername}}% \addnbspace\cms@BB}% {\csuse{cms@end@subheadername}\addnbspace\cms@BB}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}}% {\ifnumless{\csuse{cms@opt@noterefs@#1}}{3}% {\ifboolexpr{% test {\ifnumcomp{\value{\csuse{cms@noteref@interval}}}{>}% {\csuse{cms@invl@\thefield{entrykey}}}}% or togl {cms@fullrefs}% }% {\ifnumequal{\csuse{cms@invl@\thefield{entrykey}}}{0}% {\ifcsundef{cms@note@introname}% {\iftoggle{cms@zeropages}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace\bibsstring{page}% \addnbspace% \pageref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{\csuse{cms@noteref@interval}}\addnbspace% \printtext{\csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \cms@ifcsstring{cms@note@introname}\newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \printtext[nr#1]{\csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\setunit{\addspace\bibopenparen}% \printtext{\bibsstring{seenote}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}}% \bibcloseparen}}% {\ifnumequal{\csuse{cms@opt@noterefs@#1}}{3}% {\ifundef{\chapter}% {\ifboolexpr{% test {\ifnumcomp{\value{\csuse{cms@noteref@interval}}}{>}% {\csuse{cms@invl@\thefield{entrykey}}}}% or togl {cms@fullrefs}% }% {\ifnumequal{\csuse{cms@invl@\thefield{entrykey}}}{0}% {\ifcsundef{cms@note@introname}% {\iftoggle{cms@zeropages}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace\bibsstring{page}% \addnbspace% \pageref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \cms@ifcsstring{cms@note@introname}\newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\setunit{\addspace\bibopenparen}% \printtext{\bibsstring{seenote}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}}% \bibcloseparen}}% {\ifboolexpr{% test {\ifnumcomp{\value{\csuse{cms@noteref@interval}}}{>}% {\csuse{cms@invl@\thefield{entrykey}}}}% or test {\ifnumcomp{\value{chapter}}{>}% {\csuse{cms@chap@\thefield{entrykey}}}}% or togl {cms@fullrefs}% }% {\ifnumequal{\csuse{cms@chap@\thefield{entrykey}}}{0}% {\ifcsundef{cms@note@introname}% {\iftoggle{cms@zeropages}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace\bibsstring{page}% \addnbspace% \pageref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@chap@\thefield{entrykey}}.% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\ifnumequal{\csuse{cms@invl@\thefield{entrykey}}}{0}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \cms@ifcsstring{cms@note@introname}\newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \cms@ifcsstring{cms@note@introname}\newcunit% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}}% {\ifnumequal{\csuse{cms@invl@\thefield{entrykey}}}{0}% {\iftoggle{cms@zeropages}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace\bibsstring{page}% \addnbspace% \pageref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\iftoggle{cms@hidezeros}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{% \csuse{cms@chap@\thefield{entrykey}}.% 1\addnbspace\mkbibparens{\cmspref}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@chap@\thefield{entrykey}}.% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@chap@\thefield{entrykey}}.% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}}% {\setunit{\addspace\bibopenparen}% \printtext{\bibsstring{seenote}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}}% \bibcloseparen}}}% {\ifundef{\chapter}% {\ifboolexpr{% test {\ifnumcomp{\value{\csuse{cms@noteref@interval}}}{>}% {\csuse{cms@invl@\thefield{entrykey}}}}% or test {\ifnumcomp{\value{section}}{>}% {\csuse{cms@sec@\thefield{entrykey}}}}% or togl {cms@fullrefs}% }% {\ifnumequal{\csuse{cms@sec@\thefield{entrykey}}}{0}% {\ifcsundef{cms@note@introname}% {\iftoggle{cms@zeropages}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace\bibsstring{page}% \addnbspace% \pageref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@sec@\thefield{entrykey}}.% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\ifnumequal{\csuse{cms@invl@\thefield{entrykey}}}{0}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \cms@ifcsstring{cms@note@introname}\newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \cms@ifcsstring{cms@note@introname}\newcunit% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}}% {\ifnumequal{\csuse{cms@invl@\thefield{entrykey}}}{0}% {\iftoggle{cms@zeropages}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace\bibsstring{page}% \addnbspace% \pageref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\iftoggle{cms@hidezeros}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{% \csuse{cms@sec@\thefield{entrykey}}.% 1\addnbspace\mkbibparens{\cmspref}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@sec@\thefield{entrykey}}.% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@sec@\thefield{entrykey}}.% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}}% {\setunit{\addspace\bibopenparen}% \printtext{\bibsstring{seenote}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}}% \bibcloseparen}}% {\ifboolexpr{% test {\ifnumcomp{\value{\csuse{cms@noteref@interval}}}{>}% {\csuse{cms@invl@\thefield{entrykey}}}}% or test {\ifnumcomp{\value{chapter}}{>}% {\csuse{cms@chap@\thefield{entrykey}}}}% or test {\ifnumcomp{\value{section}}{>}% {\csuse{cms@sec@\thefield{entrykey}}}}% or togl {cms@fullrefs}% }% {\ifnumequal{\csuse{cms@chap@\thefield{entrykey}}}{0}% {\ifcsundef{cms@note@introname}% {\iftoggle{cms@zeropages}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace\bibsstring{page}% \addnbspace% \pageref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@chap@\thefield{entrykey}}.% \csuse{cms@sec@\thefield{entrykey}}.% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\ifboolexpr{% test {\ifnumequal{\csuse{cms@sec@\thefield{entrykey}}}% {0}}% and test {\ifnumequal{\csuse{cms@invl@\thefield{entrykey}}}% {0}}% }% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \cms@ifcsstring{cms@note@introname}\newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\ifboolexpr{% togl {cms@zeropages}% and ( test {\ifnumequal{\csuse{cms@sec@\thefield{entrykey}}}% {0}}% or test {\ifnumequal{\csuse{cms@invl@\thefield{entrykey}}}% {0}}% ) }% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \cms@ifcsstring{cms@note@introname}\newcunit% \bibsstring{page}% \addnbspace% \pageref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \cms@ifcsstring{cms@note@introname}\newcunit% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@sec@\thefield{entrykey}}.% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}}}% {\ifboolexpr{% test {\ifnumequal{\csuse{cms@sec@\thefield{entrykey}}}{0}}% or test {\ifnumequal{\csuse{cms@invl@\thefield{entrykey}}}{0}}% }% {\iftoggle{cms@zeropages}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace\bibsstring{page}% \addnbspace% \pageref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\iftoggle{cms@hidezeros}% {\ifnumequal{\csuse{cms@sec@\thefield{entrykey}}}% {0}% {\ifnumequal{\csuse{cms@invl@\thefield{entrykey}}}% {0}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{% \csuse{cms@chap@\thefield{entrykey}}.% 1\addnbspace\mkbibparens{\cmspref}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{% \csuse{cms@chap@\thefield{entrykey}}.% \cmspref\adddot% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{% \csuse{cms@chap@\thefield{entrykey}}.% \csuse{cms@sec@\thefield{entrykey}}.% 1\addnbspace\mkbibparens{\cmspref}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@chap@\thefield{entrykey}}.% \csuse{cms@sec@\thefield{entrykey}}.% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}}% {\setunit{\addspace\bibopenparen}% \bibstring{see}\addnbspace% \bibsstring{section}\addnbspace% \printtext{\csuse{cms@chap@\thefield{entrykey}}.% \csuse{cms@sec@\thefield{entrykey}}.% \csuse{cms@invl@\thefield{entrykey}}}% \newcunit% \bibsstring{note}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \bibcloseparen}}}% {\setunit{\addspace\bibopenparen}% \printtext{\bibsstring{seenote}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}}% \bibcloseparen}}}}}}% \ifnumequal{\csuse{cms@tempcounta}}{\value{cms@reviewcount}}% {\csxdef{cms@recent@\thefield{entrykey}}% {\the\value{cms@reviewcount}}}% {\csxdef{cms@recent@\thefield{entrykey}}{\the\value{instcount}}}}}}}% \newrobustcmd*{\cmspref}{pref.\@}% \newrobustcmd*{\cmsintrosection}{\S}% \newrobustcmd*{\cms@ifcsstring}[1]{% \ifbibxstring{\csuse{#1}}% {\bibsstring{\csuse{#1}}}% {\csuse{#1}}} \newrobustcmd*{\cms@save@locdata}[1]{% \iftoggle{cms@noterefs}% {\csxdef{cbx@f@\thefield{#1}}{\the\value{instcount}}% \csxdef{cms@recent@\thefield{#1}}{\the\value{instcount}}% \ifcase\cms@noteref@casenum% \or% 1 \csxdef{cms@invl@\thefield{#1}}% {\the\value{\csuse{cms@noteref@interval}}}% \or% 2 \csxdef{cms@invl@\thefield{#1}}% {\the\value{\csuse{cms@noteref@interval}}}% \or% 3 \ifundef{\chapter}% {\csxdef{cms@invl@\thefield{#1}}% {\the\value{\csuse{cms@noteref@interval}}}}% {\csxdef{cms@invl@\thefield{#1}}% {\the\value{\csuse{cms@noteref@interval}}}% \csxdef{cms@chap@\thefield{#1}}{\the\value{chapter}}}% \or% 4 \ifundef{\chapter}% {\csxdef{cms@invl@\thefield{#1}}% {\the\value{\csuse{cms@noteref@interval}}}% \csxdef{cms@sec@\thefield{#1}}{\the\value{section}}}% {\csxdef{cms@invl@\thefield{#1}}% {\the\value{\csuse{cms@noteref@interval}}}% \csxdef{cms@sec@\thefield{#1}}{\the\value{section}}% \csxdef{cms@chap@\thefield{#1}}{\the\value{chapter}}}% \or% 5 \csxdef{cms@invl@\thefield{#1}}% {\the\value{\csuse{cms@noteref@interval}}}% \fi}% {}} \DeclareBibliographyOption[boolean]{legalnotes}[true]{% \global\settoggle{cms@legalnotes}{#1}} \DeclareBiblatexOption{global,entry}[boolean]{supranotes}[true]{% \settoggle{cms@supranotes}{#1}} \DeclareBiblatexOption{global,type,entry}[boolean]{noneshort}[true]{% \settoggle{cms@noneshort}{#1}} \DeclareBibliographyOption[boolean]{shorthandibid}[true]{% \global\toggletrue{cms@shorthandibid}} \DeclareBibliographyOption[boolean]{shorthandfull}[true]{% \settoggle{cms@fullshhand}{#1}} \DeclareBibliographyOption[boolean]{inheritshorthand}[true]{% \settoggle{cms@inheritshhand}{#1}% \iftoggle{cms@inheritshhand}% {\DeclareDataInheritance{*}{*}{% \inherit{shorthand}{shorthand} \inherit{shorthandintro}{shorthandintro} }}% {}}% \DeclareBiblatexOption{global,entry}[boolean]{shorthandfirst}[true]{% \settoggle{cms@firstshort}{#1}} \DeclareBibliographyOption[boolean]{compresspages}[true]{% \global\settoggle{cms@comprange}{#1}}% \DeclareBibliographyOption[boolean]{compressyears}[true]{% \global\settoggle{cms@compyears}{#1}}% \DeclareBibliographyOption[string]{postnotepunct}[true]{% \ifcsdef{cms@opt@ppunct@#1}% {\csuse{cms@opt@ppunct@#1}}% {\blx@err@invopt{postnotepunct=#1}{}}}% \def\cms@opt@ppunct@true{% \global\toggletrue{cms@modpostnote}}% \def\cms@opt@ppunct@false{}% \DeclareBiblatexOption{global,entry}[boolean]{usecompiler}[true]{% \settoggle{blx@usenamec}{#1}} \DeclareBiblatexOption{global,entry}[boolean]{juniorcomma}[true]{% \settoggle{cms@jrcomma}{#1}} \DeclareBiblatexOption{global,entry}[boolean]{delayvolume}[true]{% \settoggle{cms@postvol}{#1}} \DeclareBiblatexOption{global,entry}[string]{longcrossref}[false]{% \ifcsdef{cms@opt@lxref@#1}% {\csuse{cms@opt@lxref@#1}}% {\blx@err@invopt{longcrossref=#1}{}}}% \def\cms@opt@lxref@none{% \togglefalse{cms@citecrossref}% \togglefalse{cms@bibcrossref}% \togglefalse{cms@bookcitexref}% \togglefalse{cms@bookbibxref}}% \def\cms@opt@lxref@true{% \toggletrue{cms@citecrossref}% \toggletrue{cms@bibcrossref}}% \def\cms@opt@lxref@false{% \togglefalse{cms@citecrossref}% \togglefalse{cms@bibcrossref}}% \def\cms@opt@lxref@notes{% \toggletrue{cms@citecrossref}% \togglefalse{cms@bibcrossref}}% \def\cms@opt@lxref@bib{% \togglefalse{cms@citecrossref}% \toggletrue{cms@bibcrossref}}% \DeclareBiblatexOption{global,entry}[string]{booklongxref}[true]{% \ifcsdef{cms@opt@bklxref@#1}% {\csuse{cms@opt@bklxref@#1}}% {\blx@err@invopt{booklongxref=#1}{}}}% \def\cms@opt@bklxref@true{% \toggletrue{cms@bookcitexref}% \toggletrue{cms@bookbibxref}}% \def\cms@opt@bklxref@false{% \togglefalse{cms@bookcitexref}% \togglefalse{cms@bookbibxref}}% \def\cms@opt@bklxref@notes{% \toggletrue{cms@bookcitexref}% \togglefalse{cms@bookbibxref}}% \def\cms@opt@bklxref@bib{% \togglefalse{cms@bookcitexref}% \toggletrue{cms@bookbibxref}}% \DeclareBiblatexOption{global,entry}[boolean]{omitxrefdate}[true]{% \settoggle{cms@omitxrefdate}{#1}}% \DeclareBiblatexOption{global,entry}[boolean]{xrefurl}[true]{% \settoggle{cms@xrefurl}{#1}}% \DeclareBibliographyOption[boolean]{blogurl}[true]{% \settoggle{cms@blogurl}{#1}}% \DeclareBiblatexOption{global,entry}[string]{journalabbrev}[false]{% \ifcsdef{cms@opt@jtabb@#1}% {\csuse{cms@opt@jtabb@#1}}% {\csuse{cms@opt@jtabb@false}\cms@warning@noline% {'journalabbrev=#1' isn't a valid option.\MessageBreak The default - 'false' - has been set.\MessageBreak Please see biblatex-chicago.pdf for valid\MessageBreak option keys}}}% \def\cms@opt@jtabb@true{% \toggletrue{cms@citejtabb}% \toggletrue{cms@bibjtabb}}% \def\cms@opt@jtabb@false{% \togglefalse{cms@citejtabb}% \togglefalse{cms@bibjtabb}}% \def\cms@opt@jtabb@notes{% \toggletrue{cms@citejtabb}% \togglefalse{cms@bibjtabb}}% \def\cms@opt@jtabb@bib{% \togglefalse{cms@citejtabb}% \toggletrue{cms@bibjtabb}}% \DeclareBiblatexOption{global,type,entry}[string]{seriesabbrev}[false]{% \ifcsdef{cms@opt@shser@#1}% {\csuse{cms@opt@shser@#1}}% {\csuse{cms@opt@shser@false}\cms@warning@noline% {'seriesabbrev=#1' isn't a valid option.\MessageBreak The default - 'false' - has been set.\MessageBreak Please see biblatex-chicago.pdf for valid\MessageBreak option keys}}}% \def\cms@opt@shser@true{% \toggletrue{cms@citeshser}% \toggletrue{cms@bibshser}}% \def\cms@opt@shser@false{% \togglefalse{cms@citeshser}% \togglefalse{cms@bibshser}}% \def\cms@opt@shser@notes{% \toggletrue{cms@citeshser}% \togglefalse{cms@bibshser}}% \def\cms@opt@shser@bib{% \togglefalse{cms@citeshser}% \toggletrue{cms@bibshser}}% \DeclareBibliographyOption[boolean]{ordinalgb}[true]{% \settoggle{cms@ukord}{#1}}% % The field-exclusion options % \DeclareBiblatexOption{global,type,entry}[boolean]{urlnotes}[true]{% \settoggle{cms@url@innotes}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{urlstamp}[true]{% \settoggle{cms@urltime}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{isbn}[true]{% \settoggle{cms@isbn}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{url}[true]{% \settoggle{cms@url}{#1}}% \DeclareBiblatexOption{global,type,entry}[string]{doi}[true]{% \ifcsdef{cms@opt@doi@#1}% {\csuse{cms@opt@doi@#1}}% {\blx@err@invopt{doi=#1}{}}}% \def\cms@opt@doi@true{% \toggletrue{cms@doi}}% \def\cms@opt@doi@false{% \togglefalse{cms@doi}}% \def\cms@opt@doi@only{% \toggletrue{cms@doionly}}% \DeclareBiblatexOption{global,type,entry}[boolean]{eprint}[true]{% \settoggle{cms@eprint}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{numbermonth}[true]{% \settoggle{cms@numbermonth}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{bookpages}[true]{% \settoggle{cms@bookpages}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{includeall}[true]{% \settoggle{cms@isbn}{#1}% \settoggle{cms@url}{#1}% \settoggle{cms@urltime}{#1}% 17th ed. \settoggle{cms@doi}{#1}% \settoggle{cms@eprint}{#1}% \settoggle{cms@numbermonth}{#1}% \settoggle{cms@bookpages}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{hidevolumes}[true]{% \settoggle{cms@hidevolumes}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{addendum}[true]{% \settoggle{cms@addendum}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{bookseries}[true]{% \settoggle{cms@bookseries}{#1}}% \DeclareBiblatexOption{global,type,entry}[boolean]{notefield}[true]{% \settoggle{cms@notefield}{#1}}% \DeclareBibliographyOption{completenotes}[true]{% \settoggle{cms@addendum}{#1}% \settoggle{cms@bookseries}{#1}% \settoggle{cms@notefield}{#1}}% \DeclareBiblatexOption{global,type,entry}[string]{related}[bib]{% \ifcsdef{cms@opt@rel@#1}% {\csuse{cms@opt@rel@#1}}% {\csuse{cms@opt@rel@bib}\cms@warning@noline% {'related=#1' is not a valid option.\MessageBreak The default - 'bib' - has been set.\MessageBreak Please see biblatex-chicago.pdf for valid\MessageBreak option keys}}}% \def\cms@opt@rel@true{% \settoggle{cms@citerel}{true}% \settoggle{cms@related}{true}}% \def\cms@opt@rel@false{% \settoggle{cms@citerel}{false}% \settoggle{cms@related}{false}}% \def\cms@opt@rel@bib{% \settoggle{cms@citerel}{false}% \settoggle{cms@related}{true}}% \def\cms@opt@rel@notes{% \settoggle{cms@citerel}{true}% \settoggle{cms@related}{false}}% % Adding a disambiguating field to short notes otherwise identical % \DeclareBiblatexOption{global,type,entry}[string]{shortextrafield}{% \def\cms@xfield{#1}}% \DeclareBiblatexOption{global,type,entry}[string]{shortextraformat}{% \def\cms@xformat{#1}}% \DeclareBiblatexOption{global,type,entry}[string]{shortextrapunct}[comma]{% \ifcsdef{cms@opt@shxp@#1}% {\csuse{cms@opt@shxp@#1}}% {\csuse{cms@opt@shxp@comma}\cms@warning@noline% {'shortextrapunct=#1' is not a valid option.\MessageBreak The default - 'comma' - has been set.\MessageBreak Please see biblatex-chicago.pdf for valid\MessageBreak option keys}}}% \def\cms@opt@shxp@none{% \let\shortextrapunct\@empty}% \def\cms@opt@shxp@comma{% \def\shortextrapunct{\addcomma\addspace}}% \def\cms@opt@shxp@colon{% \def\shortextrapunct{\addcolon\addspace}}% \def\cms@opt@shxp@space{% \def\shortextrapunct{\addspace}}% \def\cms@opt@shxp@semicolon{% \def\shortextrapunct{\addsemicolon\addspace}}% \def\cms@opt@shxp@period{% \def\shortextrapunct{\addperiod\addspace}}% % Controlling punctuation before titleaddon fields % \DeclareBiblatexOption{global,type,entry}[string]{ptitleaddon}[period]{% \ifcsdef{cms@opt@ptao@#1}% {\csuse{cms@opt@ptao@#1}}% {\csuse{cms@opt@ptao@period}\cms@warning@noline% {'ptitleaddon=#1' is not a valid option.\MessageBreak The default - 'period' - has been set.\MessageBreak Please see biblatex-chicago.pdf for valid\MessageBreak option keys}}}% \def\cms@opt@ptao@none{% \let\ptitleaddonpunct\@empty}% \def\cms@opt@ptao@comma{% \def\ptitleaddonpunct{\addcomma\addspace}}% \def\cms@opt@ptao@colon{% \def\ptitleaddonpunct{\addcolon\addspace}}% \def\cms@opt@ptao@space{% \def\ptitleaddonpunct{\addspace}}% \def\cms@opt@ptao@semicolon{% \def\ptitleaddonpunct{\addsemicolon\addspace}}% \def\cms@opt@ptao@period{% \def\ptitleaddonpunct{\addperiod\addspace}}% \DeclareBiblatexOption{global,type,entry}[string]{ctitleaddon}[comma]{% \ifcsdef{cms@opt@ctao@#1}% {\csuse{cms@opt@ctao@#1}}% {\csuse{cms@opt@ctao@comma}\cms@warning@noline% {'ctitleaddon=#1' is not a valid option.\MessageBreak The default - 'comma' - has been set.\MessageBreak Please see biblatex-chicago.pdf for valid\MessageBreak option keys}}}% \def\cms@opt@ctao@none{% \let\ctitleaddonpunct\@empty}% \def\cms@opt@ctao@comma{% \def\ctitleaddonpunct{\addcomma\addspace}}% \def\cms@opt@ctao@colon{% \def\ctitleaddonpunct{\addcolon\addspace}}% \def\cms@opt@ctao@space{% \def\ctitleaddonpunct{\addspace}}% \def\cms@opt@ctao@semicolon{% \def\ctitleaddonpunct{\addsemicolon\addspace}}% \def\cms@opt@ctao@period{% \def\ctitleaddonpunct{\addperiod\addspace}}% % Controlling punctuation before shorthand in notes % \DeclareBiblatexOption{global,type,entry}[string]{shorthandpunct}[space]{% \ifcsdef{cms@opt@shp@#1}% {\csuse{cms@opt@shp@#1}}% {\csuse{cms@opt@shp@space}\cms@warning@noline% {'shorthandpunct=#1' isn't a valid option.\MessageBreak The default - 'space' - has been set.\MessageBreak Please see biblatex-chicago.pdf for valid\MessageBreak option keys}}}% \def\cms@opt@shp@none{% \let\shorthandpunct\@empty}% \def\cms@opt@shp@comma{% \def\shorthandpunct{\addcomma\addspace}}% \def\cms@opt@shp@colon{% \def\shorthandpunct{\addcolon\addspace}}% \def\cms@opt@shp@space{% \def\shorthandpunct{\addspace}}% \def\cms@opt@shp@semicolon{% \def\shorthandpunct{\addsemicolon\addspace}}% \def\cms@opt@shp@period{% \def\shorthandpunct{\addperiod\addspace}}% \def\cms@opt@shp@emdash{% \def\shorthandpunct{\addthinspace\textemdash\addthinspace}}% \def\cms@opt@shp@endash{% \def\shorthandpunct{\addspace\textendash\addspace}}% \ExecuteBibliographyOptions{includeall,completenotes,hidevolumes,% related,booklongxref,ptitleaddon,ctitleaddon,shorthandpunct,urlnotes,% legalnotes,supranotes,shortextrapunct,dashed} \ExecuteBibliographyOptions[standard]{useeditor=false,usenamec=false}% \iftoggle{cms@legalnotes}% {\ExecuteBibliographyOptions[jurisdiction,legal,legislation]{skipbib}}% {}% % For author-date compatibility % \DeclareEntryOption[boolean]{switchdates}[true]{% \settoggle{cms@switchdates}{#1}}% \DeclareEntryOption{cmsdate}{}% \DeclareBibliographyOption{cmsdate}{}% \DeclareBibliographyOption[boolean]{strict}[true]{% \settoggle{cms@strict}{#1}% \iftoggle{cms@strict}% {\let\splitfootnoterule\footnoterule \renewcommand\footnoterule{}% \advance\skip\footins 4\p@\@plus2\p@\relax \gdef\split@prev{0} \let\pagefootnoterule\footnoterule % \def\splitfootnoterule{\kern-3\p@ \hrule \kern2.6\p@} \def\footnoterule{\relax \ifnum\split@prev=\z@ \pagefootnoterule \else \splitfootnoterule \fi \xdef\split@prev{\the\insertpenalties}% }}% {}} \protected\def\blx@newcunit{% \iftoggle{blx@keepunit}% {}% {\global\let\blx@unitpunct\newcunitpunct \global\toggletrue{blx@unit}}}% \appto\blx@blxinit{% \let\newcunit\blx@newcunit} \newcommand*{\newcunitpunct}{\addcomma\addspace} \def\mkbibcurdinal#1{% \@tempcnta0#1 \the\@tempcnta}% \@ifpackagelater{biblatex}{2010/08/28} {}% {\PackageError{biblatex} {Outdated 'biblatex' package} {The Chicago style requires biblatex v0.9 or later.\MessageBreak You are using: '\csuse{ver@biblatex.sty}'.\MessageBreak This is a fatal error. I'm aborting now.}% \endinput} % American-specific punctuation change for 16th edition % \DefineBibliographyExtras{american}{% \DeclarePunctuationPairs{comma}{*!?}} %%%% Initialize and define bibstrings %%%% \DefineBibliographyStrings{english}{% citedas = {hereafter cited as},} %%%% This one needed for 16th edition. Others in cms-*.lbx %%%% %%%% Cite macros for use by the citation commands %%%% \newbibmacro*{cite:init}{% \global\let\cbx@lastkey\undefined} \newbibmacro*{cite:save}{% \savefield{entrykey}{\cbx@lastkey}% \ifthenelse{\ifentrytype{inreference}\OR\ifentrytype{reference}\OR% \ifentrytype{mvreference}}% {\global\toggletrue{cms@noidem}}% {\global\togglefalse{cms@noidem}}}% \newbibmacro*{cite}{% \ifboolexpr{% test {\ifciteseen}% and ( not togl {cms@noneshort}% Intended for Bluebook citations or ( test {\ifciteibid}% and not test {\iffirstonpage}% and not togl {cms@noibid}% ) ) }% {\ifboolexpr{% test {\iffieldundef{shorthand}}% or ( togl {blx@skipbiblist}% and togl {cms@inheritshhand}% and not test {\iffieldundef{crossref}}% ) }% {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}% {\usebibmacro{cite:ibid}% \usebibmacro{cite:save}}% {\global\toggletrue{cms@shortnote}% \global\togglefalse{cms@fullnote}% \usebibmacro{cite:short}{\thefield{entrytype}}% \usebibmacro{cite:save}}}% {\iftoggle{cms@shorthandibid}% {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}% {\usebibmacro{cite:ibid}% \usebibmacro{cite:save}}% {\usebibmacro{cite:shorthand}% \usebibmacro{cite:save}% \global\toggletrue{cms@noidem}}}% {\usebibmacro{cite:shorthand}% \usebibmacro{cite:save}% \global\toggletrue{cms@noidem}}}}% {\ifboolexpr{% togl{cms@firstshort}% and not test {\iffieldundef{shorthand}}% }% {\usebibmacro{cite:shorthand}% \usebibmacro{cite:save}% \global\toggletrue{cms@noidem}}% {\iftoggle{cms@allshort}% {\global\toggletrue{cms@shortnote}% \global\togglefalse{cms@fullnote}% \global\toggletrue{cms@printshhand}% \usebibmacro{cite:short}{\thefield{entrytype}}% \usebibmacro{cite:save}}% {\global\toggletrue{cms@fullnote}% \global\togglefalse{cms@shortnote}% \usebibmacro{footcite:save}% FIXME!! \usebibmacro{cite:full}% \usebibmacro{cite:save}}}}}% \newbibmacro*{cite:full}{% \printtext[bibhypertarget]{% \usedriver {\DeclareNameAlias{sortname}{default}\frenchspacing}% {cite:\thefield{entrytype}}}}% % {} \newbibmacro*{cite:short}[1]{% \global\let\cms@pnsaved\undefined% \ifcsundef{cite:short:#1}% {\csuse{cite:short:book}}% {\csuse{cite:short:#1}}} \newbibmacro*{cite:short:ibid}{% For 17th edition \ifthenelse{\ifnameundef{labelname}\OR% \ifentrytype{inreference}\OR% \ifentrytype{reference}\OR% \ifentrytype{mvreference}}% {\ifthenelse{\iffieldequalstr{entrysubtype}{magazine}\AND\NOT% \ifentrytype{periodical}}% Simplify .bib creation {\ifuseauthor% {\ifboolexpr{% not test {\iffieldundef{shortjournal}}% and (( test {\ifcitation}% and togl {cms@citejtabb}% ) or ( test {\ifbibliography}% and togl {cms@bibjtabb}% )) }% {\cmshyper{\printfield[shortjournal]{shortjournal}}\newcunit}% {\cmshyper{\printfield[journaltitle]{journaltitle}}\newcunit}}% {}}% {\ifentrytype{manual}% {\cmshyper{\printlist{organization}\isdot}\newcunit}% {\ifboolexpr{% test {\iffieldequalstr{entrysubtype}{tvepisode}}% and not test {\iffieldundef{title}}% and not test {\iffieldundef{booktitle}}% and test {\iffieldundef{shorttitle}}% }% {\cmshyper{\printtext[booktitle]{% \printfield[btnoformat]{booktitle}% \setunit{\subtitlepunct}% \printfield[sbtnoformat]{booksubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{booktitleaddon}}}% {\cmshyper{\printfield[citetitle]{labeltitle}}}}}}% {\iffieldequalstr{authortype}{anon}% {\bibleftbracket\cmshyper{\printnames{labelname}}% \bibrightbracket\classicpunct}% {\iffieldequalstr{authortype}{anon?}% {\bibleftbracket\cmshyper{\printnames{labelname}?}% \bibrightbracket\classicpunct}% {\cmshyper{\printnames{labelname}}%\usebibmacro{choose+labelname}% \isdot\classicpunct}}}}% \newbibmacro*{shortnote+extrafield}{% Disambiguate otherwise identical \iffieldundef{\csuse{cms@xfield}}% short notes {\iflistundef{\csuse{cms@xfield}}% {\ifnameundef{\csuse{cms@xfield}}% {\cms@xtime}% See below; stops spurious parentheses appearing {\printtext[\csuse{cms@xformat}]{% \printnames[default]{\csuse{cms@xfield}}}}}% {\printtext[\csuse{cms@xformat}]{% \printlist{\csuse{cms@xfield}}}}}% {\ifboolexpr{% test {\ifcsstring{cms@xfield}{month}}% or test {\ifcsstring{cms@xfield}{origmonth}}% or test {\ifcsstring{cms@xfield}{eventmonth}}% or test {\ifcsstring{cms@xfield}{urlmonth}}% }% {\printtext[\csuse{cms@xformat}]{% \mkbibmonth{\thefield{\csuse{cms@xfield}}}}}% {\ifboolexpr{% test {\ifcsstring{cms@xfield}{day}}% or test {\ifcsstring{cms@xfield}{origday}}% or test {\ifcsstring{cms@xfield}{eventday}}% or test {\ifcsstring{cms@xfield}{urlday}}% }% {\printtext[\csuse{cms@xformat}]{% \printfield[letterday]{\csuse{cms@xfield}}}}% {\ifboolexpr{% test {\ifcsstring{cms@xfield}{season}}% or test {\ifcsstring{cms@xfield}{origseason}}% or test {\ifcsstring{cms@xfield}{eventseason}}% or test {\ifcsstring{cms@xfield}{urlseason}}% }% {\printtext[\csuse{cms@xformat}]{% \mkbibseason{\thefield{\csuse{cms@xfield}}}}}% {\IfSubStr{\cms@xfield}{year}% {\StrCut{\cms@xfield}{year}\cms@yeartype\cms@tempnull% \iffieldundef{\csuse{cms@yeartype}year}% {}% {\printtext[\csuse{cms@xformat}]{% \csuse{print\cms@yeartype dateextra}}}}% {\printtext[\csuse{cms@xformat}]{% \printfield{\csuse{cms@xfield}}}}}}}}}% \newrobustcmd*{\cms@xtime}{% Tests for presence of field before printing \IfSubStr{\cms@xfield}{time}% {\StrCut{\cms@xfield}{time}\cms@timetype\cms@tempnull% \iffieldundef{\csuse{cms@timetype}hour}% {}% {\printtext[\csuse{cms@xformat}]{% \csuse{print\cms@timetype date}% \newcunit\csuse{print\cms@timetype time}}}}% {\IfSubStr{\cms@xfield}{date}% {\StrCut{\cms@xfield}{date}\cms@datetype\cms@tempnull% \ifthenelse{\iffieldundef{\csuse{cms@datetype}year}\AND% \iffieldundef{\csuse{cms@datetype}month}\AND% \iffieldundef{\csuse{cms@datetype}season}}% {}% {\printtext[\csuse{cms@xformat}]{% \csuse{print\cms@datetype date}}}}% {}}} \newbibmacro*{footcite:save}{% \iffootnote% {\ifthenelse{\ifentrytype{jurisdiction}\OR\ifentrytype{legal}\OR% \ifentrytype{legislation}}% {\ifboolexpr{% test {\ifentrytype{legal}}% or ( test {\ifentrytype{legislation}}% and ( test {\iffieldequalstr{entrysubtype}{un}}% or test {\iffieldequalstr{entrysubtype}{hearing}}% )) }% {\csxdef{cbx@f@\thefield{entrykey}}{\the\value{instcount}}% \label{cbx@\the\value{instcount}}}% {}}% {\cms@save@locdata{entrykey}% \label{cbx@\the\value{instcount}}}}% {}} \newbibmacro*{print+noteref}{% \ifboolexpr{% togl {cms@noterefs}% and test {\ifbool{citetracker}}% For non-tracked citation commands and not togl {cms@allshort}% and test {\iffootnote}% and not ( test {\ifentrytype{jurisdiction}}% or test {\ifentrytype{legal}}% or test {\ifentrytype{legislation}}% ) }% {\usebibmacro{noteref+interval}}% {}} %%% The cite:short per-type macros, with helper macros %%% \csdef{cite:short:article}{% \usebibmacro{allshort+firstcite+xref}% \ifnameundef{labelname}% {\iffieldequalstr{entrysubtype}{magazine}% {\ifuseauthor% {\ifboolexpr{% not test {\iffieldundef{shortjournal}}% and (( test {\ifcitation}% and togl {cms@citejtabb}% ) or ( test {\ifbibliography}% and togl {cms@bibjtabb}% )) }% {\printfield[shortjournal]{shortjournal}\newcunit}% {\printfield[journaltitle]{journaltitle}\newcunit}}% {}}% {}}% {\usebibmacro{cms+name+idem}}% \cmshyper{\printfield[citetitle]{labeltitle}}% \usebibmacro{cms+extra+test}}% \csdef{cite:short:book}{% \usebibmacro{allshort+firstcite+xref}% \ifnameundef{labelname}% {}% {\usebibmacro{cms+name+idem}}% \cmshyper{\printfield[citetitle]{labeltitle}}% \usebibmacro{cms+extra+test}}% \csdef{cite:short:inreference}{% \usebibmacro{allshort+firstcite+xref}% \cmshyper{\printfield[citetitle]{labeltitle}}% \usebibmacro{cms+extra+test}}% \csdef{cite:short:jurisdiction}{% \iffieldundef{labeltitle}% {}% {\cmshyper{\printfield[citetitle]{labeltitle}}}% \newcunit% Fixme: giving us a duplicate comma \printfield[jourvol]{volume}% \setunit*{\addnbspace}% \iffieldundef{shortjournal}% Test eliminates spurious comma {}% {\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% \iffieldundef{issue}% {\printfield[jurisdictionser]{series}}% {\setunit{\addspace}% \printfield{issue}}% Better ideas? % \newcunit% \usebibmacro{juridpostnote}}% \csdef{cite:short:legal}{% \iffieldundef{labeltitle}% {}% {\cmshyper{\printfield[citetitle]{labeltitle}}}% \newcunit% Fixme: giving us a duplicate comma \printfield[jourvol]{volume}% \setunit*{\addnbspace}% \iffieldundef{shortjournal}% Test eliminates spurious comma {}% {\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% \printfield[legalser]{series}% \setunit{\addspace}% \printfield{issue}% % \newcunit% \ifboolexpr{% togl {cms@supranotes}% and test {\iffootnote}% }% {\newcunit% \printtext{\bibstring{supranote}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}}}% ?? {}% \usebibmacro{juridpostnote}}% \csdef{cite:short:legislation}{% \iffieldequalstr{entrysubtype}{constitution}% {\usebibmacro{clegis+news+title}% \setunit{\addspace}% \printfield[juridnum]{number}% \newcunit% \printfield{part}% \newcunit% \printfield{chapter}}% {\iffieldequalstr{labeltitlesource}{shorttitle}% {\cmshyper{\printfield[citetitle]{labeltitle}}}% {\ifboolexpr{% test {\iffieldundef{shortjournal}}% or ( not test {\iffieldundef{volume}}% and not test {\iffieldint{volume}}% ) }% {\ifboolexpr{% test {\iffieldundef{entrysubtype}}% and not test {\iflistundef{location}} }% {\printlist{location}% \setunit{\addspace}}% {}% \cmshyper{\printfield[citetitle]{labeltitle}}% \setunit{\addspace}% \printfield[juridnum]{number}% \newcunit% \printfield{part}% \newcunit% \printfield{chapter}}% {\printfield{note}% \newcunit% \printfield[jourvol]{volume}% \setunit*{\addnbspace}% \iffieldundef{shortjournal}% Test eliminates spurious comma {}% {\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% \printfield[legislationser]{series}% \setunit{\addspace}% \printfield{issue}% \newcunit% \printfield{part}% \newcunit% \printfield{chapter}% }}}% \newcunit% \ifboolexpr{% togl {cms@supranotes}% and test {\iffootnote}% and ( test {\iffieldequalstr{entrysubtype}{un}}% or test {\iffieldequalstr{entrysubtype}{hearing}}% ) }% {\newcunit% \printtext{\bibstring{supranote}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}}}% ?? {}% \usebibmacro{juridpostnote}}% \csdef{cite:short:manual}{% \usebibmacro{allshort+firstcite+xref}% \ifnameundef{labelname}% {\ifboolexpr{% test {\iflistundef{organization}}% or togl {cms@headlessnote}% }% {}% {\printlist{organization}\isdot\newcunit}}% {\usebibmacro{cms+name+idem}}% \cmshyper{\printfield[citetitle]{labeltitle}}% \usebibmacro{cms+extra+test}}% \csletcs{cite:short:mvreference}{cite:short:inreference}% \csdef{cite:short:online}{% \usebibmacro{allshort+firstcite+xref}% \ifnameundef{labelname}% {}% {\usebibmacro{cms+name+idem}}% \ifboolexpr{% test {\IfBeginWith{\thefield{title}}{CCCCCC}}% and test {\iffieldequalstr{relatedtype}{commenton}}% and togl {cms@citerel}% }% {\setcounter{cms@reviewcount}{\value{instcount}}% \usebibmacro{related:init}% \usebibmacro{related}}% {\cmshyper{\printfield[citetitle]{labeltitle}}}% \usebibmacro{cms+extra+test}}% \csdef{cite:short:periodical}{% \usebibmacro{allshort+firstcite+xref}% \ifnameundef{labelname}% {}% {\usebibmacro{cms+name+idem}}% \iffieldundef{issuetitle}% {\cmshyper{\printfield[citetitle]{labeltitle}}}% {\printfield{issuetitle}} \usebibmacro{cms+extra+test}}% \csletcs{cite:short:reference}{cite:short:inreference}% \csdef{cite:short:review}{% \usebibmacro{allshort+firstcite+xref}% \ifnameundef{labelname}% {\iffieldequalstr{entrysubtype}{magazine}% {\ifuseauthor% {\ifboolexpr{% not test {\iffieldundef{shortjournal}}% and (( test {\ifcitation}% and togl {cms@citejtabb}% ) or ( test {\ifbibliography}% and togl {cms@bibjtabb}% )) }% {\printfield[shortjournal]{shortjournal}\newcunit}% {\printfield[journaltitle]{journaltitle}\newcunit}}% {}}% {}}% {\usebibmacro{cms+name+idem}}% \ifboolexpr{% ( test {\iffieldequalstr{relatedtype}{reviewof}}% or test {\iffieldequalstr{relatedtype}{commenton}}% ) and togl {cms@citerel}% }% {\setcounter{cms@reviewcount}{\value{instcount}}% \usebibmacro{related:init}% \usebibmacro{related}}% {\cmshyper{\printfield[citetitle]{labeltitle}}}% \usebibmacro{cms+extra+test}}% \csdef{cite:short:standard}{% \usebibmacro{allshort+firstcite+xref}% \ifboolexpr{% ( togl {cms@allshort}% and not test {\ifciteseen}% ) or not test {\iffieldundef{entrysubtype}}% }% {\ifnameundef{labelname}% {\ifboolexpr{% test {\iflistundef{organization}}% or togl {cms@headlessnote}% }% {}% {\printlist{organization}\isdot\newcunit}}% {\iffieldequalstr{authortype}{anon}% {\bibleftbracket\printnames{labelname}% \bibrightbracket\classicpunct}% {\iffieldequalstr{authortype}{anon?}% {\bibleftbracket\printnames{labelname}?% \bibrightbracket\classicpunct}% {\printnames{labelname}% \isdot\classicpunct}}}}% {}% \cmshyper{\printfield[citetitle]{labeltitle}}% \usebibmacro{cms+extra+test}} \csletcs{cite:short:suppperiodical}{cite:short:review}% \csdef{cite:short:video}{% \usebibmacro{allshort+firstcite+xref}% \ifnameundef{labelname}% {}% {\usebibmacro{cms+name+idem}}% \ifboolexpr{% test {\iffieldequalstr{entrysubtype}{tvepisode}}% and not test {\iffieldundef{title}}% and not test {\iffieldundef{booktitle}}% }% {\iffieldundef{shorttitle}% {\cmshyper{\printtext[booktitle]{% \printfield[btnoformat]{booktitle}% \setunit{\subtitlepunct}% \printfield[sbtnoformat]{booksubtitle}}% (?) \setunit{\ctitleaddonpunct}% \printfield{booktitleaddon}}}% {\cmshyper{\printfield[citetitle]{labeltitle}}% \setunit{\ctitleaddonpunct}% \printfield{booktitleaddon}}}% {\cmshyper{\printfield[citetitle]{labeltitle}}}% \usebibmacro{cms+extra+test}}% \newbibmacro*{cms+extra+test}{% Used in previous defs \ifboolexpr{% test {\iffieldundef{extratitle}}% Most reliable test or test {\ifcsundef{cms@xfield}}% }% {}% {\setunit{\shortextrapunct}% \usebibmacro{shortnote+extrafield}}} \newbibmacro*{cms+name+idem}{% Used in previous defs \ifboolexpr{% test {\ifciteidem}% and not test {\ifbibliography}% and not test {\iffirstonpage}% and not togl {cms@noidem}% and not togl {cms@headlessnote}% }% {\bibstring[\mkibid]{idem\thefield{gender}}% \classicpunct}% {\iffieldequalstr{authortype}{anon}% {\bibleftbracket\printnames{labelname}% \bibrightbracket\classicpunct}% {\iffieldequalstr{authortype}{anon?}% {\bibleftbracket\printnames{labelname}?% \bibrightbracket\classicpunct}% {\printnames{labelname}% \isdot\classicpunct}}}} \newbibmacro*{cite:shorthand}{% \global\let\cms@pnsaved\undefined% \ifthenelse{\ifentrytype{jurisdiction}\OR\ifentrytype{legal}\OR% \ifentrytype{legislation}}% {\usebibmacro{cite:shorthand:legal}}% {\usebibmacro{cite:shorthand:cms}}} \newbibmacro*{cite:shorthand:cms}{% \usebibmacro{allshort+firstcite+xref}% \cmshyper{\printfield{shorthand}}} \newbibmacro*{cite:shorthand:legal}{% \usebibmacro{allshort+firstcite+xref}% \cmshyper{\printfield{shorthand}}% \ifboolexpr{% test {\iffootnote}% and togl {cms@supranotes}% and ( test {\ifentrytype{legal}}% or ( test {\ifentrytype{legislation}}% and ( test {\iffieldequalstr{entrysubtype}{un}}% or test {\iffieldequalstr{entrysubtype}{hearing}}% ))) }% {\newcunit% \printtext{\bibstring{supranote}\addnbspace% \ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}% \newcunit}}% ?? {}}% \newbibmacro*{cms:shorthandintro}{% For changing the citedas phrase \iffieldundef{shorthand}% {}% {\iffieldundef{shorthandintro}% {\ifthenelse{\ifentrytype{jurisdiction}\OR\ifentrytype{legal}\OR% \ifentrytype{legislation}}% {\printtext[brackets]{% \bibstring{hereinafter}\addspace% \printfield{shorthand}}}% {\printtext[parens]{% \bibstring{citedas}\addspace% \printfield{shorthand}}}}% {%\addspace%\setunit{\addspace}% Ditto \printfield{shorthandintro}}}} \newbibmacro*{cite:ibid}{% \ifthenelse{\ifentrytype{jurisdiction}\OR\ifentrytype{legal}\OR% \ifentrytype{legislation}}% {\usebibmacro{cite:ibid:legal}}% {\usebibmacro{cite:ibid:cms}}} \newbibmacro*{cite:ibid:legal}{% \ifboolexpr{% togl {cms@noibid}% or test {\ifbibliography}% Needed for inheritshorthand option }% {\global\toggletrue{cms@shortnote}% \global\togglefalse{cms@fullnote}% \usebibmacro{cite:short:legal}% \usebibmacro{cite:save}}% {\cmshyper{\bibsstring[\mkbibemph]{ibidem}}% \ifboolexpr{% test {\ifloccit}% or ( test {\ifciteibid}% and test {\iffieldequalcs{postnote}{cms@pnsaved}}% and not test {\ifdefvoid{\blx@loccittracker}}% Package option=false ) }% {\global\toggletrue{cms@loccit}}% {}}}% \newbibmacro*{cite:ibid:cms}{% \iftoggle{cms@useibid}% {\ifbibliography% {\global\toggletrue{cms@shortnote}% \global\togglefalse{cms@fullnote}% \usebibmacro{cite:short}{\thefield{entrytype}}% \usebibmacro{cite:save}}% {\cmshyper{\bibstring[\mkibid]{ibidem}}% \ifboolexpr{% test {\ifloccit}% or ( test {\ifciteibid}% and test {\iffieldequalcs{postnote}{cms@pnsaved}}% and not test {\ifdefvoid{\blx@loccittracker}}% Package option=false ) }% {\global\toggletrue{cms@loccit}% \global\let\cms@pnsaved\undefined}% {\global\let\cms@pnsaved\undefined}}}% {\global\toggletrue{cms@shortnote}% \global\togglefalse{cms@fullnote}% \usebibmacro{cite:short:ibid}% \usebibmacro{cite:save}}}% \newbibmacro*{cite:journal}{% \ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}% {\iffieldundef{prenote}% {\bibsentence\usebibmacro{cite:ibid}}% {\usebibmacro{cite:ibid}}% \usebibmacro{cite:save}}% {\iffieldundef{journaltitle}% {\usebibmacro{cite:short}{\thefield{entrytype}}% \usebibmacro{cite:save}}% {\ifboolexpr{% test {\ifciteidem}% and not test {\ifbibliography}% and not test {\iffirstonpage}% and not togl {cms@noidem}% }% {\iffieldundef{prenote}% {\bibsentence\bibstring[\mkibid]{idem\thefield{gender}}% \newcunit}% {\bibstring[\mkibid]{idem\thefield{gender}}% \newcunit}}% {\iffieldequalstr{authortype}{anon}% {\bibleftbracket\printnames{labelname}% \bibrightbracket\newcunit}% {\iffieldequalstr{authortype}{anon?}% {\bibleftbracket\printnames{labelname}?% \bibrightbracket\newcunit}% {\printnames{labelname}% \isdot\newcunit}}}% \iftoggle{cms@allshort}% {\ifboolexpr{% not test {\iffieldundef{shortjournal}}% and (( test {\ifcitation}% and togl {cms@citejtabb}% ) or ( test {\ifbibliography}% and togl {cms@bibjtabb}% )) }% {\printtext[bibhyperref]{% \printfield[shortjournal]{shortjournal}}}% {\printtext[bibhyperref]{% \printfield[journaltitle]{journaltitle}}}}% {\ifboolexpr{% not test {\iffieldundef{shortjournal}}% and (( test {\ifcitation}% and togl {cms@citejtabb}% ) or ( test {\ifbibliography}% and togl {cms@bibjtabb}% )) }% {\printtext[bibhyperlink]{% \printfield[shortjournal]{shortjournal}}}% {\printtext[bibhyperlink]{% \printfield[journaltitle]{journaltitle}}}}% \iffieldundef{volume}% {\iffieldundef{number}% {\iffieldundef{issue}% {\newcunit% \usebibmacro{number+or+month}}% {\newcunit% \printfield{issue}% \setunit{\addspace}% \usebibmacro{cmsyear}}}% {\newcunit% \printfield[journum]{number}}}% {\toggletrue{cms@fullnote}% \togglefalse{cms@shortnote}% \setunit{\addspace}% \printfield[jourvol]{volume}% \ifthenelse{\iffieldundef{pagination}\AND% \iffieldundef{bookpagination}}% {\setunit{\postvolpunct}}% {\setunit{\addcolon\addspace}}}}}}% %% Macros from verbose.cbx %% \newbibmacro*{textcite}{% \ifnameundef{labelname}% {\printfield[citetitle]{labeltitle}}% {\printnames{labelname}}% \ifboolexpr{% togl {cms@gencite}% and ( test {\iflastcitekey}% or togl {cms@genallnames}% ) }% {\thegen}% {}}% \newbibmacro*{textcite:init}{% \citetrackerfalse% \pagetrackerfalse% \iffirstcitekey {\global\undef\cbx@lasthash}% {}}% \newbibmacro*{textcite:count}{% \stepcounter{textcitetotal}% \ifnumgreater{\value{uniquelist}}{\value{maxnames}}% {\ifnumgreater{\value{uniquelist}}{\value{textcitemaxnames}}% {\setcounter{textcitemaxnames}{\value{uniquelist}}}% {}}% {\ifnumless{\value{labelname}}{\value{maxnames}}% {\ifnumgreater{\value{labelname}}{\value{textcitemaxnames}}% {\setcounter{textcitemaxnames}{\value{labelname}}}% {}}% {\ifnumgreater{\value{maxnames}}{\value{textcitemaxnames}}% {\setcounter{textcitemaxnames}{\value{maxnames}}}% {}}}}% %%%% Citation Commands, internal and external %%%% \DeclareCiteCommand{\cite} {\usebibmacro{prenote}} {\usebibmacro{citeindex}% \usebibmacro{cite}} {\multicitedelim} {\usebibmacro{cite:postnote}} \DeclareCiteCommand{\cmsnoopcite}% {}{}{}{}% \DeclareCiteCommand{\bibxrefcite} {\usebibmacro{backref+check}}% So cites in biblio don't turn up {\usebibmacro{cms-in:}% in backref list \ifthenelse{\iffieldequals{fullhash}{\bbx@lasthash}\AND\NOT% \(\ifentrytype{collection}\OR\ifentrytype{proceedings}\OR% \ifentrytype{mvcollection}\OR\ifentrytype{mvproceedings}\)}% {\clearname{author}% \clearname{shortauthor}% \clearname{labelname}}% {}% \toggletrue{cms@shortnote}% \togglefalse{cms@fullnote}% \ifboolexpr{% togl {cms@inheritshhand}% and not test {\iffieldundef{shorthand}}% }% {\usebibmacro{cite}}% {\usebibmacro{cite:short}{\thefield{entrytype}}}}% Would {cite} be better? {}% {\usebibmacro{crossref:volume+postnote}}% Volume fix \DeclareCiteCommand{\bookbibxrefcite} {\usebibmacro{backref+check}}% So cites in biblio don't turn up {\iffieldequals{fullhash}{\bbx@lasthash}% in backref list {\ifthenelse{\ifentrytype{collection}\OR% \ifentrytype{proceedings}\OR\ifentrytype{mvcollection}\OR% \ifentrytype{mvproceedings}}% {\clearname{editor}% \clearname{shorteditor}% \clearname{labelname}}% {\clearname{author}% \clearname{shortauthor}% \clearname{labelname}}}% {}% \toggletrue{cms@shortnote}% \togglefalse{cms@fullnote}% \usebibmacro{bibxref-in:}% \ifboolexpr{% togl {cms@inheritshhand}% and not test {\iffieldundef{shorthand}}% }% {\usebibmacro{cite}}% {\usebibmacro{cite:short}{\thefield{entrytype}}}}% {}% {\usebibmacro{crossref:volume+postnote}}% Volume fix \DeclareCiteCommand*{\cite} {\usebibmacro{cite:init}% \usebibmacro{prenote}} {\usebibmacro{citeindex}% \blx@ibidreset \usebibmacro{cite}} {\multicitedelim} {\usebibmacro{postnote}} \DeclareCiteCommand{\parencite}[\mkbibparens] {\usebibmacro{prenote}} {\usebibmacro{citeindex}% \usebibmacro{cite}} {\multicitedelim} {\usebibmacro{cite:postnote}} \DeclareCiteCommand{\footcite}[\mkbibfootnote] {\usebibmacro{prenote}}%\bibsentence {\usebibmacro{citeindex}% \usebibmacro{cite}} {\multicitedelim} {\usebibmacro{cite:postnote}} \DeclareCiteCommand{\smartcite} [\iffootnote{}{\mkbibfootnote}] {\usebibmacro{prenote}}%\bibsentence {\usebibmacro{citeindex}% \usebibmacro{cite}} {\multicitedelim} {\usebibmacro{cite:postnote}} \DeclareMultiCiteCommand{\smartcites}[\iffootnote{}{\mkbibfootnote}]% {\smartcite}{\multicitedelim} \DeclareCiteCommand{\footfullcite}[\mkbibfootnote] {\usebibmacro{prenote}}%\bibsentence {\usebibmacro{citeindex}% \toggletrue{cms@fullnote}% \togglefalse{cms@shortnote}% \usebibmacro{footcite:save}% \usebibmacro{cite:full}% \usebibmacro{cite:save}} {\multicitedelim} {} \DeclareCiteCommand{\fullcite} {\usebibmacro{prenote}}%\bibsentence {\usebibmacro{citeindex}% \toggletrue{cms@fullnote}% \togglefalse{cms@shortnote}% \usebibmacro{footcite:save}% \usebibmacro{cite:full}% \usebibmacro{cite:save}} {\multicitedelim} {} \DeclareCiteCommand{\origfullcite} {\usebibmacro{backref+check}% \ifhyperref% {\hypertarget{cite.\the\c@refsection @\abx@field@entrykey}{}}% {}% \nopunct}% Remove \unspace for v. 2.0 {\usedriver {\DeclareNameAlias{sortname}{default}\clearfield{postnote}% \usebibmacro{clearorigin}\clearfield{userf}\clearfield{shorthand}% \toggletrue{cms@fullnote}\toggletrue{cms@headlessnote}% \frenchspacing}% {cite:\thefield{entrytype}}% \iflistundef{pageref}{}{\newunit\usebibmacro{pageref}}}% {\multicitedelim}% {\finentry}% Helps with annotated bibliographies (?) \DeclareCiteCommand{\origpublcite}% Similar to above, w/o title. {\usebibmacro{backref+check}% \ifhyperref% {\hypertarget{cite.\the\c@refsection @\abx@field@entrykey}{}}% {}% \nopunct% \ifboolexpr{% togl {cms@otherlang}% and not test {\iffieldundef{langid}}% }% {\addspace}{\unspace}}%\unspace Put \nopunct and \unspace here for 0.8e. {\usedriver {\DeclareNameAlias{sortname}{default}\clearfield{postnote}% \usebibmacro{clearpublin}\clearfield{shorthand}% \usebibmacro{cms:titlehook}% \toggletrue{cms@fullnote}\toggletrue{cms@headlessnote}% \toggletrue{cms@origpublished}\frenchspacing}% {cite:\thefield{entrytype}}% \iflistundef{pageref}{}{\newunit\usebibmacro{pageref}}}% {\multicitedelim}% {\finentry} \DeclareCiteCommand{\headlessfullcite} {\usebibmacro{prenote}}% {\printtext[bibhypertarget]{% \usedriver {\DeclareNameAlias{sortname}{default}\toggletrue{cms@fullnote}% \toggletrue{cms@headlessnote}\usebibmacro{footcite:save}% \usebibmacro{cite:save}\usebibmacro{clear+labelname}% \global\toggletrue{cms@noidem}}% {cite:\thefield{entrytype}}}}% {\multicitedelim}% {}%\usebibmacro{finentry}} \DeclareCiteCommand{\headlesscite} {\usebibmacro{prenote}} {\usebibmacro{citeindex}% \toggletrue{cms@headlessnote}% \usebibmacro{clear+labelname}% \clearname{labelname}% \usebibmacro{cite}% \global\toggletrue{cms@noidem}}% {\multicitedelim} {\usebibmacro{cite:postnote}} \DeclareCiteCommand{\headlessparencite}[\mkbibparens] {\usebibmacro{prenote}} {\usebibmacro{citeindex}% \toggletrue{cms@headlessnote}% \usebibmacro{clear+labelname}% \clearname{labelname}% \usebibmacro{cite}% \global\toggletrue{cms@noidem}} {\multicitedelim} {\usebibmacro{cite:postnote}} \DeclareCiteCommand{\headlessparenshortcite}[\mkbibparens] {\usebibmacro{prenote}} {\usebibmacro{citeindex}% \ifboolexpr{% togl{cms@firstshort}% and not test {\iffieldundef{shorthand}}% }% {\usebibmacro{cite:shorthand}}% {\toggletrue{cms@headlessnote}% \toggletrue{cms@shortnote}% \togglefalse{cms@fullnote}% \clearname{labelname}% \usebibmacro{cite:short}{\thefield{entrytype}}}% \global\toggletrue{cms@noidem}} {\multicitedelim} {\usebibmacro{cite:postnote}} \DeclareCiteCommand{\surnamecite} {\usebibmacro{prenote}}%\usebibmacro{hlcprenote}} {\usebibmacro{citeindex}% \ifboolexpr{% ( test {\ifciteseen}% or togl {cms@allshort}% ) and not togl {cms@noneshort}% }% {\usebibmacro{cite:short}{\thefield{entrytype}}}% {\renewbibmacro*{author/editor}{\usebibmacro{choose+surname}}% \renewbibmacro*{editor}{\usebibmacro{choose+surname}}% \renewbibmacro*{author}{\usebibmacro{choose+surname}}% \usebibmacro{cite}}}% {\multicitedelim}% {\usebibmacro{cite:postnote}} \DeclareMultiCiteCommand{\surnamecites}{surnamecite}{\multicitedelim} \DeclareCiteCommand{\shortcite} {\usebibmacro{prenote}} {\toggletrue{cms@shortnote}% \togglefalse{cms@fullnote}% \usebibmacro{citeindex}% \usebibmacro{cite:short}{\thefield{entrytype}}% \usebibmacro{cite:save}} {\multicitedelim} {\usebibmacro{postnote}} \DeclareCiteCommand*{\shortcite} {\boolfalse{citetracker}% \boolfalse{pagetracker}% \usebibmacro{prenote}}% {\toggletrue{cms@shortnote}% \togglefalse{cms@fullnote}% \usebibmacro{citeindex}% \usebibmacro{cite:short}{\thefield{entrytype}}% \usebibmacro{cite:save}} {\multicitedelim} {\usebibmacro{postnote}} \DeclareCiteCommand{\shortrefcite} {\usebibmacro{prenote}} {\toggletrue{cms@shortnote}% \togglefalse{cms@fullnote}% \usebibmacro{citeindex}% \usebibmacro{cite:short}{\thefield{entrytype}}% \usebibmacro{cite:save}}% {\multicitedelim} {\toggletrue{cms@forcenoteref}% \usebibmacro{postnote}% \togglefalse{cms@forcenoteref}}% \DeclareCiteCommand{\shorthandcite} {\usebibmacro{prenote}} {\usebibmacro{citeindex}% \iftoggle{cms@shorthandibid}% {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}% {\usebibmacro{cite:ibid}% \usebibmacro{cite:save}}% {\usebibmacro{cite:shorthand}% \usebibmacro{cite:save}% \global\toggletrue{cms@noidem}}}% {\usebibmacro{cite:shorthand}% \usebibmacro{cite:save}% \global\toggletrue{cms@noidem}}} {\multicitedelim} {\usebibmacro{postnote}} \DeclareCiteCommand*{\shorthandcite} {\boolfalse{citetracker}% \boolfalse{pagetracker}% \usebibmacro{prenote}} {\usebibmacro{citeindex}% \iftoggle{cms@shorthandibid}% {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}% {\usebibmacro{cite:ibid}% \usebibmacro{cite:save}}% {\usebibmacro{cite:shorthand}% \usebibmacro{cite:save}% \global\toggletrue{cms@noidem}}}% {\usebibmacro{cite:shorthand}% \usebibmacro{cite:save}% \global\toggletrue{cms@noidem}}} {\multicitedelim} {\usebibmacro{postnote}} \DeclareCiteCommand{\shorthandrefcite} {\usebibmacro{prenote}} {\usebibmacro{citeindex}% \iftoggle{cms@shorthandibid}% {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}% {\usebibmacro{cite:ibid}% \usebibmacro{cite:save}}% {\usebibmacro{cite:shorthand}% \usebibmacro{cite:save}% \global\toggletrue{cms@noidem}}}% {\usebibmacro{cite:shorthand}% \usebibmacro{cite:save}% \global\toggletrue{cms@noidem}}} {\multicitedelim} {\toggletrue{cms@forcenoteref}% \usebibmacro{postnote}% \togglefalse{cms@forcenoteref}} \DeclareCiteCommand{\citejournal}% Name? {\usebibmacro{prenote}} {\toggletrue{cms@shortnote}% \togglefalse{cms@fullnote}% \clearfield{pages}% \usebibmacro{citeindex}% \usebibmacro{cite:journal}% \usebibmacro{cite:save}} {\multicitedelim} {\iftoggle{cms@loccit}% {}% {\usebibmacro{fullpostnote}}} \DeclareCiteCommand{\runcite}% 17th ed. {\usebibmacro{prenote}} {\usebibmacro{citeindex}% \toggletrue{cms@running@text}% \usebibmacro{cite}% \togglefalse{cms@running@text}} {\multicitedelim} {\usebibmacro{cite:postnote}} \DeclareCiteCommand{\citeauthor} {\boolfalse{citetracker}% \boolfalse{pagetracker}% \usebibmacro{prenote}} {\toggletrue{cms@shortnote}% \togglefalse{cms@fullnote}% \ifciteindex {\indexnames{labelname}} {}% \printnames{labelname}} {\multicitedelim} {\usebibmacro{postnote}} \newrobustcmd*{\Shortcite}{% \@ifstar{\bibsentence\shortcite*}{\bibsentence\shortcite}}% \newrobustcmd*{\Shortrefcite}{\bibsentence\shortrefcite}% \newrobustcmd*{\Headlesscite}{\bibsentence\headlesscite} \newrobustcmd*{\Headlesscites}{\bibsentence\headlesscites} \DeclareMultiCiteCommand{\citetitles}{citetitle}{\multicitedelim} \DeclareMultiCiteCommand{\headlesscites}{headlesscite}{\multicitedelim} \DeclareMultiCiteCommand{\headlessfullcites}{headlessfullcite}{\multicitedelim} \DeclareMultiCiteCommand{\headlessparencites}[\mkbibparens]% {headlessparencite}{\multicitedelim} \DeclareMultiCiteCommand{\headlessparenshortcites}[\mkbibparens]% {headlessparenshortcite}{\multicitedelim} %% Textcite commands adapted from verbose.cbx %% \DeclareCiteCommand{\cbx@textcite} {\usebibmacro{textcite:init}} {\iffieldequals{namehash}{\cbx@lasthash} {}% {\iffirstcitekey {}% {\textcitedelim}% \stepcounter{textcitecount}% \usebibmacro{textcite}% \savefield{namehash}{\cbx@lasthash}}} {} {} \DeclareCiteCommand{\textcite}[\cbx@textcite@init\cbx@textcite\cms@textcite@i] {\usebibmacro{textcite:init}% \gdef\cbx@savedkeys{}% \DeferNextCitekeyHook} {\ifthenelse{\iffirstcitekey\AND\value{multicitetotal}>0}% {\protected@xappto\cbx@footcite@args{% (\thefield{multiprenote})(\thefield{multipostnote})}}% {}% \xappto\cbx@savedkeys{\thefield{entrykey},}% \iffieldequals{namehash}{\cbx@lasthash}% {}% {\usebibmacro{textcite:count}% \savefield{namehash}{\cbx@lasthash}}% \ifnumequal{\value{citecount}}{\value{citetotal}}% {\protected@xappto\cbx@textcite@args{{\cbx@savedkeys}}% \protected@xappto\cbx@footcite@args{% [\thefield{prenote}][\thefield{postnote}]{\cbx@savedkeys}}% \iflastcitekey {\iffootnote {\protected@xappto\cbx@textcite@args{\nopunct}% \protected@xappto\cbx@footcite@args{\thefield{postpunct}}}% {\protected@xappto\cbx@textcite@args{\thefield{postpunct}}% Switch \protected@xappto\cbx@footcite@args{\nopunct}}}% these two? {}} {}} {} {} \newrobustcmd{\cbx@textcite@init}[3]{% \setcounter{textcitetotal}{0}% \setcounter{textcitecount}{0}% \setcounter{textcitemaxnames}{0}% \def\cbx@textcite@args{#1}\def\cbx@footcite@args{#2}#3% \cbx@textcite@args\empty\cbx@footcite@args\empty} \DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{} \DeclareMultiCiteCommand{\textcites} [\cbx@textcites@init\cbx@textcites\cms@textcites@i]{\textcite}{} \let\cbx@textcites@init\cbx@textcite@init \pretocmd{\cbx@textcites@init}{% \UseNextMultiCiteHook% \AtNextMultiCite{% \renewbibmacro{multiprenote}{}% \renewbibmacro{multipostnote}{}}}{}{} \renewcommand*{\textcitedelim}{% \iffinalcitedelim% {\ifnumgreater{\value{textcitetotal}}{2}% {\addcomma}% {}% \addspace\bibstring{and}}% {\addcomma}% \addspace}% \newrobustcmd{\cms@textcite@i}{% \iffootnote{\foottextcite}{\footcite}} \newrobustcmd{\cms@textcites@i}{% \iffootnote{\foottextcites}{\footcites}} \newcommand{\foottextcite}{\addspace\headlessparenshortcite} \newcommand{\foottextcites}{\addspace\headlessparenshortcites} %%% The \gentextcite commands - \textcite in the genitive case %%% \DeclareCiteCommand{\cms@gentextcite@i} {\usebibmacro{textcite:init}% \toggletrue{cms@gencite}}% {\iffieldequals{namehash}{\cbx@lasthash}% {}% {\iffirstcitekey {}% {\textcitedelim}% \stepcounter{textcitecount}% \usebibmacro{textcite}% \savefield{namehash}{\cbx@lasthash}}} {} {\togglefalse{cms@gencite}}% \DeclareCiteCommand{\cms@gentextcite}[\cbx@textcite@init\cms@gentextcite@i\cms@textcite@i] {\usebibmacro{textcite:init}% \gdef\cbx@savedkeys{}% \DeferNextCitekeyHook} {\ifthenelse{\iffirstcitekey\AND\value{multicitetotal}>0}% {\protected@xappto\cbx@footcite@args{% (\thefield{multiprenote})(\thefield{multipostnote})}}% {}% \xappto\cbx@savedkeys{\thefield{entrykey},}% \iffieldequals{namehash}{\cbx@lasthash}% {}% {\usebibmacro{textcite:count}% \savefield{namehash}{\cbx@lasthash}}% \ifnumequal{\value{citecount}}{\value{citetotal}}% {\protected@xappto\cbx@textcite@args{{\cbx@savedkeys}}% \protected@xappto\cbx@footcite@args{% [\thefield{prenote}][\thefield{postnote}]{\cbx@savedkeys}}% \iflastcitekey {\iffootnote {\protected@xappto\cbx@textcite@args{\nopunct}% \protected@xappto\cbx@footcite@args{\thefield{postpunct}}}% {\protected@xappto\cbx@textcite@args{\thefield{postpunct}}% Switch \protected@xappto\cbx@footcite@args{\nopunct}}}% these two? {}} {}} {} {} \DeclareMultiCiteCommand{\cms@gentextcite@is}{\cms@gentextcite@i}{} \DeclareMultiCiteCommand{\cms@gentextcites} [\cbx@textcites@init\cms@gentextcite@is\cms@textcites@i]{\cms@gentextcite}{} \newrobustcmd*{\gentextcite}[1][]{% \@ifnextchar[%] {\gencite@i[#1]}% {\gencite@i[][#1]}}% \def\gencite@i[#1][#2]{% \@ifnextchar[%] {\gencite@ii[#1][#2]}% {\gencite@ii[][#1][#2]}}% \def\gencite@ii[#1][#2][#3]#4{% \ifblank{#1}{\def\thegen{'s}}{\def\thegen{#1}}% \gencite@iii[#2][#3]{#4}}% \def\gencite@iii#1{\cms@gentextcite#1} \newrobustcmd*{\gentextcites}[1][]{% \@ifnextchar(%) {\gencites@iv[#1]}% {\@ifnextchar[%] {\gencites@i[#1]}% {\gencites@i[][#1]}}}% \def\gencites@i[#1][#2]{% \@ifnextchar[%] {\gencites@ii[#1][#2]}% {\gencites@ii[][#1][#2]}}% \def\gencites@ii[#1][#2][#3]#4{% \ifblank{#1}{\def\thegen{'s}}{\def\thegen{#1}}% \gencites@iii[#2][#3]{#4}}% \def\gencites@iii#1{\cms@gentextcites#1}% \def\gencites@iv[#1]#2{% \ifblank{#1}{\def\thegen{'s}}{\def\thegen{#1}}% \cms@gentextcites#2}% \newrobustcmd*{\Gentextcite}{\bibsentence\gentextcite} \newrobustcmd*{\Gentextcites}{\bibsentence\gentextcites} %%% End code for \gentextcite %%% %%%% Drivers for the Long Note Format %%%% \DeclareBibliographyDriver{cite:article}{% \iffieldequalstr{entrysubtype}{magazine}% {\usebibmacro{bibindex}% \usebibmacro{cmag+news+author}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{cmag+news+title}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}%\newblock% \usebibmacro{cpart+editor+translator}% \newcunit% \usebibmacro{issuetitle}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield{note}% \setunit{\addcomma\addspace}\newblock \usebibmacro{mag+news+date}% \newcunit\newblock \printfield{type}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldequalstr{relatedtype}{reviewof}}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}% {\usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{cmag+news+title}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \newcunit% \usebibmacro{issuetitle}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield{note}% \setunit{\addcomma\addspace}% \usebibmacro{cjournal+issue+year+pages}% \usebibmacro{eid+fullpostnote}% \newcunit\newblock \printfield{eid}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldequalstr{relatedtype}{reviewof}}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}} \DeclareBibliographyDriver{cite:artwork}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock \usebibmacro{citaltitle+stitle}% \newcunit\newblock \iffieldundef{origyear}% 17th ed. {\printdate}% {\usebibmacro{cmsorigdate}}% \newcunit \usebibmacro{byauthor}% \newcunit\newblock \usebibmacro{cbyeditor+others}% \newcunit\newblock \ifthenelse{\iffieldundef{origyear}\OR\iffieldundef{year}}% 17th ed. {}% {\usebibmacro{date}}% \newcunit\newblock \printfield{type}% \newcunit\newblock \printfield[type]{version}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{institution+organization}% \newcunit\newblock \printlist{location}% \newcunit\newblock \printfield{howpublished}% \setunit*{\addspace}% \usebibmacro{music+eventdate}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:audio}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{ctitle+stitle}% \setunit{\addspace}\newblock% \usebibmacro{language+transtitle}% \newcunit \usebibmacro{byauthor}% \newcunit \usebibmacro{cpart+editor+translator}% \newcunit \usebibmacro{music+eventdate}% \newcunit \usebibmacro{chapinscore}% \usebibmacro{btitle+bstitle}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{bybookauthor}% \usebibmacro{cbyeditor+others}% \iffieldundef{maintitle}% {}% {\ifthenelse{\iffieldundef{volume}\AND\iffieldundef{part}}% {\ifthenelse{\iffieldundef{title}\AND\iffieldundef{booktitle}}% {\usebibmacro{cms-in:}}% {\bibstring{in}\setunit{\addspace}}% \printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}} {\toggletrue{cms@usedvol}% \printfield{volume}% \printfield{part}% \setunit{\addspace} \bibstring{ofseries}% \setunit{\addspace} \printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct} \printfield{maintitleaddon}}} \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{cpubl+loc+year}% \newcunit \printfield{type}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isan}% \newcunit\newblock \printfield{ismn}}% {}% \newcunit\newblock% \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:book}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{citaltitle+stitle}% \setunit{\addspace}% \usebibmacro{cite:xref+date}% \newcunit \iffieldundef{maintitle}% {\iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{version}}% 17th ed. {}% \newcunit \usebibmacro{byauthor}% \newcunit \usebibmacro{cpart+editor+translator}% \newcunit% \ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@bookcitexref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@bookcitexref}% }% {\usebibmacro{cmtitle+mstitle+vol+part+title+stitle}% \newcunit\newblock \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \iffieldundef{version}% 17th ed. {}% {\usebibmacro{version}}% \newcunit \usebibmacro{cbyeditor+others}% \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{cpubl+loc+year}% \iftoggle{cms@bookpages}% {}% {\clearfield{pages}}% \usebibmacro{volfullpostnote}% \newcunit\newblock \printlist[][-\value{listtotal}]{lista}% \newcunit\newblock \printfield{type}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{book:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{book:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{xref}}% Removed \addspace from each. \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}} \DeclareBibliographyDriver{cite:bookinbook}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{citaltitle+stitle}% \setunit{\addspace}% \usebibmacro{cite:xref+date}% \newcunit\newblock \usebibmacro{byauthor}% \newcunit \usebibmacro{cpart+editor+translator}% \setunit*{\addcomma\addspace}% \ifboolexpr{% not togl {cms@citerel}% or ( not test {\iffieldequalstr{relatedtype}{maintitle}}% and not test {\iffieldequalstr{relatedtype}{maintitlenc}}% ) or test {\iffieldundef{related}}% }% {\ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@bookcitexref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@bookcitexref}% }% {\usebibmacro{cmtitle+mstitle+vol+part+btitle+bstitle}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{bybookauthor}% \usebibmacro{cbyeditor+others}% \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{cpubl+loc+year}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{book:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{book:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{xref}}% Removed \addspace from each. \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\entrydata{\thefield{related}}{% \ifboolexpr{% test {\ifentryseen{\thefield{clonesourcekey}}}% and not togl {cms@bookcitexref}% }% {\savefield{clonesourcekey}{\cms@shortmtkey}}% {}}% \iftoggle{cms@noterefs}{\addtocounter{instcount}{-1}}{}% Alternatives? \ifcsundef{cms@shortmtkey}% {\unspace% Needed for entries with langid (?) \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related:mtsave}% \usebibmacro{related}% \newcunit% \usebibmacro{finentry}}% {\ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\csuse{cms@shortmtkey}}% \usebibmacro{xrefpostnote}% \csgundef{cms@shortmtkey}% \usebibmacro{finentry}}}} \DeclareBibliographyDriver{cite:booklet}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock \usebibmacro{citaltitle+stitle}% \newcunit\newblock \usebibmacro{byauthor}% \newcunit \usebibmacro{cnotefield}% \setunit{\addspace}\newblock% \printtext[parens]{% \usebibmacro{howpubl+loc+year}}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:collection}{% \usebibmacro{bibindex}% \usebibmacro{editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock% \usebibmacro{citaltitle+stitle}% \setunit{\addspace} \usebibmacro{cite:xref+date}% \newcunit \usebibmacro{cpart+editor+translator}% \newcunit \ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@bookcitexref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@bookcitexref}% }% {\usebibmacro{cmtitle+mstitle+vol+part+title+stitle}% \newcunit\newblock \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{cbyeditor+others}% \newcunit\newblock \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{cpubl+loc+year}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{book:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{book:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{xref}}% Removed \addspace from each. \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. Only with Vol? {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}} \DeclareBibliographyDriver{cite:customc}{% \usebibmacro{bibindex}% \usebibmacro{justauthor}% \iffieldundef{nameaddon}% {\newcunit} {\setunit{\addspace}}% \usebibmacro{italtitle+stitle}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:dataset}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \iftoggle{cms@headlessnote}{}{\setunit{\addspace}\newblock}% \printtext[parens]{% \printfield{title}% \setunit{\subtitlepunct}% \printfield[noformat]{subtitle}% \setunit{\ctitleaddonpunct}% \printfield{titleaddon}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \newcunit \usebibmacro{byauthor}% \newcunit\newblock \usebibmacro{cbyeditor+others}% \setunit{\addspace}\newblock% \ifthenelse{\iffieldundef{howpublished}\AND% \iffieldundef{number}\AND\iffieldundef{type}}% {}% {\printtext[parens]{% \printfield{howpublished}% \newcunit \printfield{type}% \setunit{\addspace}% \printfield{number}}}% \newcunit\newblock \printfield{version}% \newcunit\newblock \printfield{note}% \newcunit\newblock \usebibmacro{institution+organization}% \newcunit\newblock \printlist{location}% \setunit{\addsemicolon\addspace}% \printurldate% \ifboolexpr{% togl {cms@urltime}% and not test {\iffieldundef{urlhour}}% }% {\newcunit\printurltime}% {}}% \usebibmacro{fullpostnote}% \newcunit\newblock \iffieldundef{pubstate}% {}% {\iffieldbibstring{pubstate}% {\bibsstring{\thefield{pubstate}}}% {\printfield[prenote]{pubstate}}% \setunit{\addspace}}% \usebibmacro{date}% \clearfield{urlyear}% \usebibmacro{caddendum}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:image}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock \usebibmacro{citaltitle+stitle}% \newcunit%\setunit{\addcomma\addspace}% \iffieldundef{origyear}% 17th ed. {\printdate}% {\usebibmacro{cmsorigdate}}% \newcunit \usebibmacro{byauthor}% \newcunit\newblock \usebibmacro{cbyeditor+others}% \newcunit\newblock \ifthenelse{\iffieldundef{origyear}\OR\iffieldundef{year}}% 17th ed. {}% {\usebibmacro{date}}% \newcunit\newblock \printfield{type}% \newcunit\newblock \printfield[type]{version}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{institution+organization}% \newcunit\newblock \printlist{location}% \newcunit\newblock \printfield{howpublished}% 17th ed. \setunit*{\addspace}% \usebibmacro{music+eventdate}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:inbook}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{ctitle+stitle}% \setunit{\addspace}\newblock% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \setunit{\addcomma\addspace}% \ifboolexpr{% not togl {cms@citerel}% or ( not test {\iffieldequalstr{relatedtype}{maintitle}}% and not test {\iffieldequalstr{relatedtype}{maintitlenc}}% ) or test {\iffieldundef{related}}% }% {\ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@citecrossref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@citecrossref}% }% {\usebibmacro{chapincoll}% \usebibmacro{cmtitle+mstitle+vol+part+btitle+bstitle}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{bybookauthor}% \usebibmacro{cbyeditor+others}% \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{cpubl+loc+year}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{cite:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{cite:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\thefield{xref}}% Removed \addspace from each. \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\usebibmacro{extract+clonekey+note}% \ifcsundef{cms@shortmtkey}% {\unspace% Needed for entries with langid (?) \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related:mtsave}% \usebibmacro{related}% \newcunit% \usebibmacro{finentry}}% {\ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\csuse{cms@shortmtkey}}% \usebibmacro{xrefpostnote}% \csgundef{cms@shortmtkey}% \usebibmacro{finentry}}}} \DeclareBibliographyDriver{cite:incollection}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock% \usebibmacro{ctitle+stitle}% \setunit{\addspace}\newblock% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \setunit{\addcomma\addspace}% \ifboolexpr{% not togl {cms@citerel}% or ( not test {\iffieldequalstr{relatedtype}{maintitle}}% and not test {\iffieldequalstr{relatedtype}{maintitlenc}}% ) or test {\iffieldundef{related}}% }% {\ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@citecrossref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@citecrossref}% }% {\usebibmacro{chapincoll}% \usebibmacro{cmtitle+mstitle+vol+part+btitle+bstitle}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{bybookauthor}% \usebibmacro{cbyeditor+others}% \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{cpubl+loc+year}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{cite:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{cite:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\thefield{xref}}% Removed \addspace from each. \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\usebibmacro{extract+clonekey+note}% \ifcsundef{cms@shortmtkey}% {\unspace% Needed for entries with langid (?) \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related:mtsave}% \usebibmacro{related}% \newcunit% \usebibmacro{finentry}}% {\ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\csuse{cms@shortmtkey}}% \usebibmacro{xrefpostnote}% \csgundef{cms@shortmtkey}% \usebibmacro{finentry}}}} \DeclareBibliographyDriver{cite:inproceedings}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{ctitle+stitle}% \setunit{\addspace}\newblock% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \setunit{\addcomma\addspace}% \ifboolexpr{% not togl {cms@citerel}% or ( not test {\iffieldequalstr{relatedtype}{maintitle}}% and not test {\iffieldequalstr{relatedtype}{maintitlenc}}% ) or test {\iffieldundef{related}}% }% {\ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@citecrossref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@citecrossref}% }% {\usebibmacro{chapincoll}% \usebibmacro{cmtitle+mstitle+vol+part+btitle+bstitle}% \newcunit\newblock \usebibmacro{cbyeditor+others}% \newcunit\newblock \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \setunit{\addspace}\newblock% \printtext[parens]{% \usebibmacro{org+publ+loc+year}}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{cite:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{cite:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\thefield{xref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\usebibmacro{extract+clonekey+note}% \ifcsundef{cms@shortmtkey}% {\unspace% Needed for entries with langid (?) \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related:mtsave}% \usebibmacro{related}% \newcunit% \usebibmacro{finentry}}% {\ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\csuse{cms@shortmtkey}}% \usebibmacro{xrefpostnote}% \csgundef{cms@shortmtkey}% \usebibmacro{finentry}}}} \DeclareBibliographyDriver{cite:inreference}{% \usebibmacro{bibindex}% \iffieldundef{clonesourcekey}{}{\newcunit}% \usebibmacro{citaltitle+stitle}% \newcunit\newblock \ifthenelse{\iffieldundef{maintitle}\AND\iffieldundef{booktitle}}% {\iffieldundef{edition}% {}% {\usebibmacro{edition}}}% {}% \newcunit \usebibmacro{cpart+editor+translator}% \setunit*{\addcomma\addspace}% \usebibmacro{cmtitle+mstitle+vol+part+btitle+bstitle}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{bybookauthor}% \usebibmacro{cbyeditor+others}% \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{crefpubl+loc+year}% 17th ed. \usebibmacro{inreffullpostnote}% \newcunit\newblock%setunit{\addspace}% 16th ed \ifnameundef{author}% {}% {\printtext{% 16th ed \bibstring{by}% \addspace% \printnames{author}}}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:jurisdiction}{% \iffieldequalstr{entrysubtype}{square}% FIXME? {\usebibmacro{bibindex}% \usebibmacro{clegis+news+title}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \newcunit% \usebibmacro{issuetitle}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield[juridnum]{number}% \newcunit% \iffieldundef{year}% {}% {\printtext[brackets]{% \begingroup% Better ideas? \let\abx@bibmonth\blx@imc@bibsstring% \usebibmacro{date}\endgroup}}% \setunit*{\addspace}% \printfield[jourvol]{volume}% \setunit{\addnbspace}% \iffieldundef{shortjournal}% {}% {\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% \iffieldundef{issue}% {\printfield[jurisdictionser]{series}}% {\setunit{\addspace}% \printfield{issue}}% Better ideas? \usebibmacro{juridpostnote}% \setunit{\addcomma\addspace}% \printfield{note}% \setunit{\addspace}% \printlist{location}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% Moved before addendum \setunit{\addspace}\newblock \printfield{addendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} {\iffieldequalstr{entrysubtype}{round}% FIXME? {\usebibmacro{bibindex}% \usebibmacro{clegis+news+title}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \newcunit% \usebibmacro{issuetitle}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield[juridnum]{number}% \newcunit% \iffieldundef{year}% {}% {\printtext[parens]{% \begingroup% Better ideas? \let\abx@bibmonth\blx@imc@bibsstring% \usebibmacro{date}\endgroup}}% \setunit*{\addspace}% \printfield[jourvol]{volume}% \setunit{\addnbspace}% \iffieldundef{shortjournal}% {}% {\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% \iffieldundef{issue}% {\printfield[jurisdictionser]{series}}% {\setunit{\addspace}% \printfield{issue}}% Better ideas? \usebibmacro{juridpostnote}% \setunit{\addcomma\addspace}% \printfield{note}% \setunit{\addspace}% \printlist{location}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% Moved before addendum \setunit{\addspace}\newblock \printfield{addendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} {\usebibmacro{bibindex}% \usebibmacro{clegis+news+title}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \newcunit% \usebibmacro{issuetitle}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield[juridnum]{number}% \newcunit% \printfield[jourvol]{volume}% \setunit*{\addnbspace}% \iffieldundef{shortjournal}% {}% {\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% \iffieldundef{issue}% {\printfield[jurisdictionser]{series}}% {\setunit{\addspace}% \printfield{issue}}% Better ideas? \setunit{\addspace}% \printlist{origpublisher}% Extra reporters, same pagination \usebibmacro{juridpostnote}% \setunit{\addcomma\addspace}% \printlist{origlocation}% Extra reporters, different pagination \setunit{\addcomma\addspace}% \printfield{note}% \setunit{\addspace}% \ifboolexpr{% test {\iffieldundef{year}}% and test {\iflistundef{location}}% }% {}% {\printtext[parens]{% \printlist{location}% \setunit*{\addspace}% \begingroup% Better ideas? \let\abx@bibmonth\blx@imc@bibsstring% \usebibmacro{date}\endgroup}}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% Moved before addendum \setunit{\addspace}\newblock \printfield{addendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}} \DeclareBibliographyDriver{cite:legal}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{clegis+news+title}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \newcunit% \usebibmacro{issuetitle}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield[juridnum]{number}% \newcunit% \iffieldundef{year}% {}% {\printtext{% \begingroup% Better ideas? \let\abx@bibmonth\blx@imc@bibsstring% \usebibmacro{date}\endgroup}}% \newcunit%\setunit*{\addspace}% \printfield[jourvol]{volume}% \setunit*{\addnbspace}% \iffieldundef{shortjournal}% {}% {\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% \setunit{\addspace}% \printfield{series}% \setunit{\addspace}% \printfield{issue}% \newcunit% \printfield{part}% \newcunit% \printfield{chapter}% \usebibmacro{juridpostnote}% \setunit{\addcomma\addspace}% \printfield{note}% \setunit{\addspace}% \printlist{location}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% Moved before addendum \setunit{\addspace}\newblock% \printfield{addendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:legislation}{% \iffieldequalstr{entrysubtype}{uk}% FIXME? {\usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{clegis+news+title}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \newcunit% \usebibmacro{issuetitle}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield[juridnum]{number}% \setunit{\addcomma\addspace}% \printfield{note}% Needed here? \newcunit% \iffieldundef{year}% {}% {\printtext{% \begingroup% Better ideas? \let\abx@bibmonth\blx@imc@bibsstring% \usebibmacro{date}\endgroup}}% \newcunit%\setunit*{\addspace}% \printfield[jourvol]{volume}% \setunit*{\addnbspace}% \iffieldundef{shortjournal}% {}% {\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% \setunit{\addspace}% \printfield{series}% \setunit{\addspace}% \printfield{issue}% \newcunit% \printfield{part}% \newcunit% \printfield{chapter}% \usebibmacro{juridpostnote}% \setunit{\addspace}% \printlist{location}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% Moved before addendum \setunit{\addspace}\newblock% \printfield{addendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} {\iffieldequalstr{entrysubtype}{hansard}% FIXME? {\usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{clegis+news+title}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \newcunit% \usebibmacro{issuetitle}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield[juridnum]{number}% \setunit{\addcomma\addspace}% \printfield{note}% Needed here? \newcunit% \printfield[jourvol]{volume}% \setunit*{\addnbspace}% \iffieldundef{shortjournal}% {}% {\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% \setunit{\addspace}% \printfield[hansardser]{series}% \setunit{\addspace}% \iffieldundef{year}% {}% {\printtext[parens]{% \begingroup% Better ideas? \let\abx@bibmonth\blx@imc@bibsstring% \usebibmacro{date}\endgroup}}% \usebibmacro{juridpostnote}% \setunit{\addspace}% \printlist{location}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% Moved before addendum \setunit{\addspace}\newblock% \printfield{addendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} {\usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{clegis+news+title}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cpart+editor+translator}% \newcunit% \usebibmacro{issuetitle}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addspace}% FIXME? \printfield[juridnum]{number}% \setunit{\addcomma\addspace}% \printfield{note}% Needed here? \newcunit% \printfield[jourvol]{volume}% \setunit*{\addnbspace}% \iffieldundef{shortjournal}% {}% {\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% \newcunit% \printfield{series}% \setunit{\addspace}% \printfield{issue}% \newcunit% \printfield{part}% \newcunit% \printfield{chapter}% \usebibmacro{juridpostnote}% \setunit{\addspace}% \ifboolexpr{% test {\iffieldundef{year}}% and test {\iffieldundef{usera}}% and test {\iflistundef{location}}% }% {}% {\printtext[parens]{% \printlist{location}% \setunit*{\addspace}% \printfield{usera}% \setunit*{\addspace}% \begingroup% Better ideas? \let\abx@bibmonth\blx@imc@bibsstring% \usebibmacro{date}\endgroup}}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \setunit{\addspace}\newblock% \printfield{addendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}} \DeclareBibliographyDriver{cite:letter}{% \usebibmacro{bibindex}% \savefield{fullhash}{\bbx@lasthash}% \printtext[title]{% \printfield[noformat]{title}}% \setunit{\ctitleaddonpunct}% \printfield{titleaddon}% \setunit*{\addcomma\addspace}% \usebibmacro{letter+date}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \newcunit\newblock% \usebibmacro{cpart+editor+translator}% \setunit*{\addcomma\addspace}% \ifboolexpr{% not togl {cms@citerel}% or ( not test {\iffieldequalstr{relatedtype}{maintitle}}% and not test {\iffieldequalstr{relatedtype}{maintitlenc}}% ) or test {\iffieldundef{related}}% }% {\ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@citecrossref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@citecrossref}% }% {\usebibmacro{chapincoll}% \usebibmacro{cmtitle+mstitle+vol+part+btitle+bstitle}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{bybookauthor}% \usebibmacro{cbyeditor+others}% \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{cpubletter+loc+year}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{cite:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{cite:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\thefield{xref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\usebibmacro{extract+clonekey+note}% \ifcsundef{cms@shortmtkey}% {\unspace% Needed for entries with langid (?) \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related:mtsave}% \usebibmacro{related}% \newcunit% \usebibmacro{finentry}}% {\ifpunctmark{.}{\setunit{\addspace\bibsentence}}{\newcunit}% 16th ed. \usebibmacro{xrefprenote}% Volume fix \usebibmacro{xrefchapincoll}% \bibxrefcite{\csuse{cms@shortmtkey}}% \usebibmacro{xrefpostnote}% \csgundef{cms@shortmtkey}% \usebibmacro{finentry}}}} \DeclareBibliographyDriver{cite:manual}{% \usebibmacro{bibindex}% \usebibmacro{author+org}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock% \usebibmacro{citaltitle+stitle}% \newcunit \usebibmacro{edition}% \newcunit \usebibmacro{byauthor}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \printfield{type}% \newcunit \usebibmacro{cnotefield}% \setunit{\addspace}\newblock% \printtext[parens]{% \usebibmacro{org+publ+loc+year}}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:misc}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock \iffieldundef{entrysubtype}% {\usebibmacro{citaltitle+stitle}}% {\printfield{title}% \setunit{\subtitlepunct}% \printfield[noformat]{subtitle}% \setunit{\ctitleaddonpunct}% \printfield{titleaddon}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \newcunit% \usebibmacro{unpubl+letter+date}% \newcunit \printlist{origlocation}}% 17th ed. \newcunit \usebibmacro{byauthor}% \newcunit\newblock \usebibmacro{cbyeditor+others}% \newcunit\newblock \printfield{howpublished}% \newcunit\newblock \printfield{type}% \newcunit\newblock \printfield{version}% \newcunit\newblock \printfield{note}% \newcunit\newblock \iffieldundef{entrysubtype}% {\printfield{venue}\newcunit}% {}% \usebibmacro{misc+institution+organization}% \newcunit\newblock \printlist{location}% \iffieldundef{entrysubtype}% {\newcunit\newblock \usebibmacro{date}}% {}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:music}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock \usebibmacro{citaltitle+stitle}% \newcunit \usebibmacro{byauthor}% \newcunit\newblock \usebibmacro{cpart+editor+translator}% \newcunit\newblock \ifthenelse{\iffieldundef{booktitle}\AND\iffieldundef{entrysubtype}}% {\usebibmacro{cbyeditor+others}\newcunit\newblock}{}% \usebibmacro{music+eventdate}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \printfield{howpublished}% \newcunit\newblock \usebibmacro{chap+as+track}%inscore% 17th ed. \usebibmacro{music+bookauthor}% Ditto \usebibmacro{btitle+bstitle}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \ifthenelse{\iffieldundef{booktitle}\AND\iffieldundef{entrysubtype}}% {}{\usebibmacro{cbyeditor+others}}% \iffieldundef{maintitle}% {}% {\ifthenelse{\iffieldundef{volume}\AND\iffieldundef{part}}% {\ifthenelse{\iffieldundef{title}\AND\iffieldundef{booktitle}}% {\usebibmacro{cms-in:}}% {\bibstring{in}\setunit{addspace}}% \printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}} {\toggletrue{cms@usedvol}% \printfield{volume}% \printfield{part}% \setunit{\addspace} \bibstring{ofseries}% \setunit{\addspace} \printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}}} \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \printfield{version}% \newcunit\newblock \usebibmacro{music+origdate}% Altered for 17th ed. \newcunit\newblock \printlist{publisher}% \newcunit\newblock \usebibmacro{series+or+shortser}% \ifboolexpr{test {\iflistundef{publisher}} and test {\iffieldundef{series}}}% {\newcunit}% {\setunit{\addspace}}% \printfield{number}% \newcunit\newblock \usebibmacro{date}% \newcunit \usebibmacro{institution+organization}% \newcunit\newblock \printlist{location}% \newcunit\newblock \printfield{type}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \usebibmacro{music+pubstate}% 17th ed. \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{iswc}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:mvbook}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{citaltitle+stitle}% \setunit{\addspace}% \usebibmacro{cite:xref+date}% \usebibmacro{mt+mvnames+save}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{byauthor}% \newcunit \usebibmacro{cbyeditor+others}% \newcunit \usebibmacro{cpart+editor+translator}% \ifthenelse{\iffieldequalstr{relatedtype}{maintitle}\OR% \iffieldequalstr{relatedtype}{maintitlenc}}{}% {\newcunit \usebibmacro{volume+or+volumes}}% \newcunit\newblock \usebibmacro{cser+num}% \ifboolexpr{% not togl {cms@citerel}% or ( not test {\iffieldequalstr{relatedtype}{maintitle}}% and not test {\iffieldequalstr{relatedtype}{maintitlenc}}% ) or test {\iffieldundef{related}}% }% {\ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@bookcitexref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@bookcitexref}% }% {\usebibmacro{cmtitle+mstitle+vol+part+title+stitle}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{cpubl+loc+year}% \iftoggle{cms@bookpages}% {}% {\clearfield{pages}}% \usebibmacro{volfullpostnote}% \newcunit\newblock \printlist[][-\value{listtotal}]{lista}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{book:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{book:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{xref}}% Removed \addspace from each. \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\unspace% Needed for entries with langid (?) \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related:mtsave}% \usebibmacro{related}% \newcunit% \usebibmacro{finentry}}} \DeclareBibliographyDriver{cite:mvcollection}{% \usebibmacro{bibindex}% \usebibmacro{editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock% \usebibmacro{citaltitle+stitle}% \setunit{\addspace} \usebibmacro{cite:xref+date}% \usebibmacro{mt+mvnames+save}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{cpart+editor+translator}% \newcunit \usebibmacro{cbyeditor+others}% \newcunit\newblock \ifthenelse{\iffieldequalstr{relatedtype}{maintitle}\OR% \iffieldequalstr{relatedtype}{maintitlenc}}{}% {\newcunit\newblock \usebibmacro{volume+or+volumes}}% \newcunit\newblock \usebibmacro{cser+num}% \ifboolexpr{% not togl {cms@citerel}% or ( not test {\iffieldequalstr{relatedtype}{maintitle}}% and not test {\iffieldequalstr{relatedtype}{maintitlenc}}% ) or test {\iffieldundef{related}}% }% {\ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@bookcitexref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@bookcitexref}% }% {\usebibmacro{cmtitle+mstitle+vol+part+title+stitle}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{cpubl+loc+year}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{book:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{book:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{xref}}% Removed \addspace from each. \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. Only with Vol? {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\unspace% Needed for entries with langid (?) \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related:mtsave}% \usebibmacro{related}% \newcunit% \usebibmacro{finentry}}}% \DeclareBibliographyDriver{cite:mvproceedings}{% \usebibmacro{bibindex}% \usebibmacro{editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock% \usebibmacro{citaltitle+stitle}% \setunit{\addspace} \usebibmacro{cite:xref+date}% \usebibmacro{mt+mvnames+save}% \newcunit \usebibmacro{cpart+editor+translator}% \newcunit \usebibmacro{cbyeditor+others}% \newcunit\newblock \ifthenelse{\iffieldequalstr{relatedtype}{maintitle}\OR% \iffieldequalstr{relatedtype}{maintitlenc}}{}% {\newcunit\newblock \usebibmacro{volume+or+volumes}}% \newcunit\newblock \usebibmacro{cser+num}% \ifboolexpr{% not togl {cms@citerel}% or ( not test {\iffieldequalstr{relatedtype}{maintitle}}% and not test {\iffieldequalstr{relatedtype}{maintitlenc}}% ) or test {\iffieldundef{related}}% }% {\ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@bookcitexref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@bookcitexref}% }% {\usebibmacro{cmtitle+mstitle+vol+part+title+stitle}% \newcunit\newblock \usebibmacro{cnotefield}% \setunit{\addspace}\newblock% \printtext[parens]{% \usebibmacro{org+publ+loc+year}}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{book:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{book:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{xref}}% Removed \addspace from each. \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\unspace% Needed for entries with langid (?) \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related:mtsave}% \usebibmacro{related}% \newcunit% \usebibmacro{finentry}}} \DeclareBibliographyDriver{cite:mvreference}{% \usebibmacro{bibindex}% \usebibmacro{citaltitle+stitle}% \newcunit\newblock \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{bybookauthor}% \newcunit \usebibmacro{cpart+editor+translator}% \newcunit \usebibmacro{cbyeditor+others}% \ifthenelse{\iffieldequalstr{relatedtype}{maintitle}\OR% \iffieldequalstr{relatedtype}{maintitlenc}}{}% {\newcunit \usebibmacro{volume+or+volumes}}% \newcunit\newblock \usebibmacro{cser+num}% \setunit*{\addcomma\addspace}% \ifboolexpr{% not togl {cms@citerel}% or ( not test {\iffieldequalstr{relatedtype}{maintitle}}% and not test {\iffieldequalstr{relatedtype}{maintitlenc}}% ) or test {\iffieldundef{related}}% }% {\usebibmacro{cmtitle+mstitle+vol+part+btitle+bstitle}% \newcunit\newblock \usebibmacro{crefpubl+loc+year}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}% {\unspace% Needed for entries with langid (?) \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related:mtsave}% \usebibmacro{related}% \newcunit% \usebibmacro{finentry}}} \DeclareBibliographyDriver{cite:online}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock \IfBeginWith{\thefield{title}}{CCCCCC}% {}% {\usebibmacro{ctitle+stitle}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \newcunit\newblock \printlist{organization}% Rearranged for 16th ed. \setunit{\addcomma\addspace}% \usebibmacro{cnotefield}% \setunit{\addcomma\addspace}}% \usebibmacro{date}% \usebibmacro{time+stamp}% \newcunit\newblock \printfield{type}% 17th ed. \ifboolexpr{% test {\iffieldequalstr{relatedtype}{commenton}}% and togl {cms@citerel}% }% {\toggletrue{cms@relreview}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \togglefalse{cms@relreview}}% {}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iffieldundef{urlyear}% {}% {\printurldate% \ifboolexpr{% togl {cms@urltime}% and not test {\iffieldundef{urlhour}}% }% {\newcunit\printurltime}% {}}% Date fix \newcunit\newblock \iftoggle{cms@doionly}% {\iffieldundef{doi}% {}% {\printfield{doi}% \clearfield{url}}}% {\printfield{doi}}% \newcunit\newblock \usebibmacro{eprint}% \newcunit\newblock \printfield{url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldequalstr{relatedtype}{commenton}}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:patent}{% \usebibmacro{bibindex}% \usebibmacro{author+holder}% +holder? \usebibmacro{hlpunct}%\newcunit\newblock \iffieldundef{title}% {}% {\printtext{% \printfield{title}% \setunit{\subtitlepunct}% \printfield[subtitle]{subtitle}}% \setunit{\ctitleaddonpunct}% \printfield{titleaddon}}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}\newblock% \usebibmacro{cnotefield}% \setunit{\addspace}% \printtext[parens]{% \printfield{type}% \setunit*{\addspace}% \printfield{number}% \iflistundef{location}% {}% {\setunit*{\addspace}% \printtext[parens]{% \printlist[][-\value{listtotal}]{location}}}% \newcunit\newblock \printfield{version}% \newcunit \iffieldundef{origyear}% {\iffieldundef{year}% {}% {\bibstring{patentfiled}\setunit{\addspace}% Changed to filed \printdate}}% {\bibstring{patentfiled}\setunit{\addspace}% \usebibmacro{cmsorigdate}% \setunit{\finalandcomma\addspace\bibstring{and}% \addspace\bibstring{patentissued}\addspace}% \usebibmacro{date}}% \usebibmacro{caddendum}}% \usebibmacro{fullpostnote}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:performance}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock \usebibmacro{citaltitle+stitle}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \newcunit \usebibmacro{byauthor}% \newcunit\newblock \usebibmacro{cbyeditor+others}% \newcunit\newblock \printfield{howpublished}% \newcunit\newblock \printfield{type}% \newcunit\newblock \printfield{version}% \newcunit\newblock \printfield{note}% \newcunit\newblock \printfield{venue}% \newcunit\newblock% \usebibmacro{institution+organization}% \newcunit\newblock \printlist{location}% \newcunit\newblock \usebibmacro{date}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:periodical}{% \iffieldequalstr{entrysubtype}{magazine}% {\usebibmacro{bibindex}% \usebibmacro{editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{issuetitle}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}%\newblock% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield{note}% \setunit{\addcomma\addspace}\newblock \usebibmacro{periodical+date+issue}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}% {\usebibmacro{bibindex}% \usebibmacro{editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{issuetitle}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield{note}% \setunit{\addcomma\addspace}% \usebibmacro{cjournal+issue+year+pages}% \usebibmacro{eid+fullpostnote}% \newcunit\newblock \printfield{eid}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}} \DeclareBibliographyDriver{cite:proceedings}{% \usebibmacro{bibindex}% \usebibmacro{editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock% \usebibmacro{citaltitle+stitle}% \setunit{\addspace} \usebibmacro{cite:xref+date}% \newcunit \usebibmacro{cpart+editor+translator}% \newcunit \ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@bookcitexref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@bookcitexref}% }% {\usebibmacro{cmtitle+mstitle+vol+part+title+stitle}% \newcunit \usebibmacro{cbyeditor+others}% \newcunit\newblock \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \setunit{\addspace}\newblock% \printtext[parens]{% \usebibmacro{org+publ+loc+year}}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{book:xref+finentry}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {\usebibmacro{book:xref+finentry}}% \usebibmacro{finentry}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{xref}}% Removed \addspace from each. \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}}% {\ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:noterefhelper}}% {}% \ifpunctmark{.}% This seems to work. {\ifbibliography% {\setunit{\bibsentence}}{\addspace\bibsentence}}% {\ifbibliography{\unspace}{\addcomma\addspace}}% ?!? \usebibmacro{xrefprenote}% Volume fix \bookbibxrefcite{\thefield{crossref}}% \usebibmacro{xrefpostnote}% \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}}} \DeclareBibliographyDriver{cite:reference}{% \usebibmacro{bibindex}% \iffieldundef{clonesourcekey}{}{\newcunit}% \usebibmacro{citaltitle+stitle}% \newcunit\newblock \ifthenelse{\iffieldundef{maintitle}\AND\iffieldundef{booktitle}}% {\iffieldundef{edition}% {}% {\usebibmacro{edition}}}% {}% \newcunit \usebibmacro{cpart+editor+translator}% \setunit*{\addcomma\addspace}% \usebibmacro{cmtitle+mstitle+vol+part+btitle+bstitle}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{bybookauthor}% \usebibmacro{cbyeditor+others}% \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{crefpubl+loc+year}% \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:report}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock \iffieldequalstr{entrysubtype}{unpublished}% {\usebibmacro{ctitle+stitle}}% {\usebibmacro{citaltitle+stitle}}% \newcunit \usebibmacro{byauthor}% \newcunit% \printfield{type}% \newcunit \usebibmacro{series+or+shortser}% \ifthenelse{\iffieldundef{type}\AND\iffieldundef{series}}% {\newcunit}% {\setunit{\addnbspace}}% \printfield{number}% \newcunit% \usebibmacro{cnotefield}% \setunit{\addspace}\newblock% \printtext[parens]{% \usebibmacro{inst+loc+year}}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isrn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:review}{% \usebibmacro{bibindex}% \iffieldequalstr{entrysubtype}{magazine}% {\usebibmacro{cmag+news+author}}% {\usebibmacro{author/editor}}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{music+eventdate}% 17th ed. \newcunit\newblock \printeventtime% \newcunit\newblock \ifboolexpr{% ( test {\iffieldequalstr{relatedtype}{reviewof}}% or test {\iffieldequalstr{relatedtype}{commenton}}% ) and togl {cms@citerel}% }% {\toggletrue{cms@relreview}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \togglefalse{cms@relreview}}% {\printfield{title}% \setunit{\subtitlepunct}% \printfield[noformat]{subtitle}}% \setunit{\ctitleaddonpunct}% \printfield{titleaddon}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}%\newblock% \usebibmacro{cpart+editor+translator}% \ifboolexpr{% test {\iffieldundef{crossref}}% or not test {\ifentryseen{\thefield{crossref}}}% or togl {cms@citecrossref}% }% {\ifboolexpr{% test {\iffieldundef{xref}}% or not test {\ifentryseen{\thefield{xref}}}% or togl {cms@citecrossref}% }% {\iffieldequalstr{relatedtype}{commenton}% {\usebibmacro{eid+fullpostnote}% \newcunit\newblock \printfield{eid}% \newcunit\newblock \usebibmacro{caddendum}}% {\newcunit% \usebibmacro{issuetitle}% \setunit{\addcomma\addspace}% \usebibmacro{cbyeditor+others}% \setunit{\addcomma\addspace}% \printfield{note}% \setunit{\addcomma\addspace}% \iffieldequalstr{entrysubtype}{magazine}% {\usebibmacro{mag+news+date}% \newcunit\newblock \printfield{type}}% {\usebibmacro{cjournal+issue+year+pages}}% \usebibmacro{eid+fullpostnote}% \newcunit\newblock \printfield{eid}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{issn}}% {}% \usebibmacro{cite:xref+finentry}}}% {\usebibmacro{eid+fullpostnote}% \newcunit\newblock \printfield{eid}% \newcunit\newblock \usebibmacro{caddendum}}}% {\usebibmacro{eid+fullpostnote}% \newcunit\newblock \printfield{eid}% \newcunit\newblock \usebibmacro{caddendum}}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldequalstr{relatedtype}{reviewof}}% and not test {\iffieldequalstr{relatedtype}{commenton}}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:standard}{% \usebibmacro{bibindex}% \iffieldundef{entrysubtype}% {}% {\ifnameundef{author}% {\iflistundef{organization}% {}% {\printlist{organization}}}% {\usebibmacro{justauthor}}% \usebibmacro{hlpunct}}%\setunit{\addcomma\addspace}\newblock% \usebibmacro{citaltitle+stitle}% \newcunit \usebibmacro{edition}% \newcunit \usebibmacro{byauthor}% \newcunit\newblock \usebibmacro{cbyeditor+others}% \newcunit\newblock \usebibmacro{series+or+shortser}% \setunit*{\addnbspace}% \printfield{number}% \newcunit\newblock \printfield{type}% \newcunit \usebibmacro{cnotefield}% \setunit{\addspace}\newblock% \printtext[parens]{% \usebibmacro{origpubl+loc+year}%{cmsorigdate}% 16th ed. \reprintpunct% \iffieldundef{pubstate}% {}% {\iffieldbibstring{pubstate}% {\bibsstring{\thefield{pubstate}}}% {\printfield[prenote]{pubstate}}% \newcunit}% \printlist{location}% \iflistundef{organization}% {\iflistundef{publisher}% {\setunit*{\addcomma\addspace}}% {\setunit*{\addcolon\addspace}% \printlist{publisher}% \setunit*{\addcomma\addspace}}}% {\setunit*{\addcolon\addspace}% \printlist{organization}% \setunit*{\addcomma\addspace}}% \usebibmacro{date}% \setunit{\addsemicolon\addspace}% \printfield{howpublished}% \setunit*{\addspace}% \usebibmacro{music+eventdate}}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:suppbook}{% \usebibmacro{bibindex}% \usebibmacro{author}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{inforaft}% \setunit{\addspace}\newblock \usebibmacro{citaltitle+stitle}% \newcunit \iffieldundef{maintitle}% {\iffieldundef{edition}% {}% {\usebibmacro{edition}}}% {}% \newcunit \usebibmacro{bybookauthor}% \newcunit\newblock \usebibmacro{cpart+editor+translator}% \newcunit\newblock \usebibmacro{cmtitle+mstitle+vol+part+title+stitle}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{cbyeditor+others}% \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{cpubl+loc+year}% \clearfield{pages}% ?? For 16th ed. \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isbn}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyAlias{cite:suppcollection}{cite:suppbook} \DeclareBibliographyAlias{cite:suppperiodical}{cite:review} \DeclareBibliographyDriver{cite:thesis}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock \usebibmacro{ctitle+stitle}% \setunit{\addspace}\newblock% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \setunit{\addcomma\addspace}% \usebibmacro{cnotefield}% \setunit{\addspace}% \printtext[parens]{% \usebibmacro{type+inst+year}}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:unpublished}{% \usebibmacro{bibindex}% \usebibmacro{author/editor}% \usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock \usebibmacro{ctitle+stitle}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \setunit{\addcomma\addspace}% \usebibmacro{byauthor}% \newcunit\newblock% \usebibmacro{cbyeditor+others}% \setunit{\addspace}\newblock% \printtext[parens]{% \printfield{howpublished}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \printfield{eventtitle}% \setunit{\ctitleaddonpunct}% \printfield{eventtitleaddon}% \newcunit% \printfield{venue}% \newcunit% \printlist{location}% \newcunit\newblock \iffieldundef{eventyear}% {\usebibmacro{date}}% {\printeventdate}}% \usebibmacro{fullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{cite:video}{% \usebibmacro{bibindex}% \ifboolexpr{% test {\iffieldequalstr{entrysubtype}{tvepisode}}% and ( not test {\iffieldundef{title}}% and not test {\iffieldundef{booktitle}}% ) }% {\usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{btitle+bstitle}% \newcunit\newblock \usebibmacro{ctitle+stitle}% \setunit{\addspace}\newblock% \usebibmacro{language+transtitle}% \newcunit \usebibmacro{byauthor}% \newcunit \usebibmacro{cpart+editor+translator}}% {\usebibmacro{author/editor}% \usebibmacro{hlpunct}%\newcunit\newblock \usebibmacro{ctitle+stitle}% \setunit{\addspace}\newblock% \usebibmacro{language+transtitle}% \newcunit \usebibmacro{byauthor}% \newcunit \usebibmacro{cpart+editor+translator}% \newcunit \usebibmacro{chapinscore}% \usebibmacro{btitle+bstitle}}% \newcunit \iffieldundef{edition}% {}% {\usebibmacro{edition}}% \newcunit \usebibmacro{bybookauthor}% \usebibmacro{cbyeditor+others}% \iffieldundef{maintitle}% {}% {\ifthenelse{\iffieldundef{volume}\AND\iffieldundef{part}}% {\ifthenelse{\iffieldundef{title}\AND\iffieldundef{booktitle}}% {\usebibmacro{cms-in:}}% {\bibstring{in}\setunit{\addspace}}% \printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}} {\toggletrue{cms@usedvol}% \printfield{volume}% \printfield{part}% \setunit{\addspace} \bibstring{ofseries}% \setunit{\addspace} \printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}}} \newcunit \usebibmacro{volume+or+volumes}% \newcunit\newblock \usebibmacro{cser+num}% \newcunit\newblock \usebibmacro{cnotefield}% \newcunit\newblock \usebibmacro{music+eventdate}% \newcunit\newblock \printfield{usera}% \newcunit\newblock \usebibmacro{cpubl+loc+year}% \newcunit\newblock \printfield{type}% Order of this and next? \usebibmacro{volfullpostnote}% \usebibmacro{caddendum}% \newcunit\newblock \iftoggle{cms@isbn}% {\printfield{isan}}% {}% \newcunit\newblock \usebibmacro{cite+doi+url}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \newcunit\newblock \usebibmacro{pageref}% \newcunit\newblock \ifboolexpr{% togl {cms@citerel}% and not test {\iffieldundef{related}}% }% {\usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \newcunit}% {}% \usebibmacro{finentry}} %%%% List Formats %%%% \DeclareListFormat{language}{% \ifthenelse{\value{listcount}=1}% {\bibleftbracket\bibstring{inlang}%\addspace - for inflected langs. \ifbibstring{#1}% {\bibstring{#1}}% {\ifbibstring{lang#1}% {\bibstring{lang#1}}% {#1}}% \ifthenelse{\value{listtotal}=1}% {\bibrightbracket}% {}}% {\ifthenelse{\value{listcount}=\value{listtotal}}% {\multilangdelim% \ifbibstring{#1}% {\bibstring{#1}}% {\ifbibstring{lang#1}% {\bibstring{lang#1}}% {#1}}% \bibrightbracket}% {\multilangdelim% \ifbibstring{#1}% {\bibstring{#1}}% {\ifbibstring{lang#1}% {\bibstring{lang#1}}% {#1}}}}% \usebibmacro{langlist:andothers}} \DeclareListFormat{publisher}{% \ifthenelse{\value{listtotal}<2}% {#1\isdot}% {\ifthenelse{\value{listcount}=1}% {#1}% {\multipubsdelim #1\isdot}}} \DeclareListFormat[jurisdiction]{location}{% \iffieldundef{entrysubtype}% {\usebibmacro{list:delim}{#1}% #1\isdot% \usebibmacro{list:andothers}}% {\ifthenelse{\value{listcount}<\value{listtotal}}% {\mkbibparens{#1}\addspace}% {\mkbibparens{#1\isdot}}}}% \DeclareListFormat[jurisdiction]{origlocation}{% \ifthenelse{\value{listcount}<\value{listtotal}}% {#1\isdot\addcomma\addspace}% {#1\isdot}} \DeclareListFormat[jurisdiction]{origpublisher}{% \ifthenelse{\value{listcount}<\value{listtotal}}% {\mkbibparens{#1}\addspace}% {\mkbibparens{#1\isdot}}} \DeclareListFormat{periodplace}{\mkbibparens{#1}} \DeclareListFormat{lista}{% \ifthenelse{\value{listtotal}<2}% {\bibsstring{subverbo}\addspace\mkbibquote{#1\isdot}}% {\ifthenelse{\value{listcount}=1}% {\bibsstring{subverbis}\addspace\mkbibquote{#1\isdot}\addcomma}% {\ifthenelse{\value{listcount}<\value{listtotal}}% {\addspace\mkbibquote{#1\isdot}\addcomma}% {\addspace\mkbibquote{#1\isdot}}}}} %%%% Field Formats -- Title, Citetitle, Lostitle %%%% \DeclareFieldFormat{title}{\mkbibemph{#1}\isdot} \DeclareFieldFormat{citetitle}{\mkbibemph{#1}\isdot} \DeclareFieldFormat{lostitle}{\mkbibemph{#1}\isdot} \DeclareFieldFormat [article,inbook,incollection,inproceedings,online,thesis,unpublished] {title}{% \iffieldundef{title}% {}% {\mkbibquote{#1\isdot}}} \DeclareFieldFormat [article,inbook,incollection,inproceedings,online,thesis,unpublished] {citetitle}{% \iffieldundef{title}% {#1\isdot}% {\mkbibquote{#1\isdot}}} \DeclareFieldFormat [article,inbook,incollection,inproceedings,online,thesis,unpublished] {lostitle}{% \iffieldundef{title}% {#1\isdot}% {\mkbibquote{#1\isdot}}} \DeclareFieldFormat[artwork,image,inreference]{title}{% \iffieldundef{entrysubtype}% {\mkbibemph{#1}\isdot}% {#1\isdot}} \DeclareFieldFormat[artwork,image,inreference]{citetitle}{% \iffieldundef{entrysubtype}% {\mkbibemph{#1}\isdot}% {#1\isdot}} \DeclareFieldFormat[artwork,image,inreference]{lostitle}{% \iffieldundef{entrysubtype}% {\mkbibemph{#1}\isdot}% {#1\isdot}} \DeclareFieldFormat[letter]{title}{#1\isdot} \DeclareFieldFormat[patent]{title}{\MakeSentenceCase*{#1}\isdot} \DeclareFieldFormat[letter]{citetitle}{#1\isdot} \DeclareFieldFormat[patent]{citetitle}{\MakeSentenceCase*{#1}\isdot} \DeclareFieldFormat[letter]{lostitle}{#1\isdot} \DeclareFieldFormat[patent]{lostitle}{\MakeSentenceCase*{#1}\isdot} \DeclareFieldFormat{prenote}{\ifcapital{\MakeCapital{#1}}{#1}\isdot} %% comprange code moved to .sty \DeclareFieldFormat{postnote}{% Changed for page compression option \ifboolexpr{% togl {cms@comprange}% and test {\ifpages{#1}}% }% {\iffieldundef{pagination}% {\mkcomprange{#1}}% {\mkcomprange[{\mkpageprefix[pagination]}]{#1}}}% {\iffieldundef{pagination}% {#1}% {\mkpageprefix[pagination]{#1}}}}% \DeclareFieldFormat[inreference]{postnote}{% \ifboolexpr{% togl {cms@comprange}% and test {\ifpages{#1}}% }% {\iffieldundef{pagination}% {\bibsstring{subverbo}\addspace\mkbibquote{#1}}% {\mkcomprange[{\mkpageprefix[pagination]}]{#1}}}% {\iffieldundef{pagination}% {\bibsstring{subverbo}\addspace\mkbibquote{#1}}% {\mkpageprefix[pagination]{#1}}}}% \newrobustcmd*{\mkjuridprefix}[1]{% \ifboolexpr{% FIXME: Is this always right? test {\iftoggle{cms@fullnote}}% and test {\ifentrytype{jurisdiction}}% }% {\iffieldundef{issue}% {#1}% {\printtext{at}\addspace *#1}}% {\iffieldundef{issue}% {\printtext{at}\addspace #1}% FIXME: Make it a bibstring? {\ifentrytype{jurisdiction}% {\printtext{at}\addspace *#1}% {\printtext{at}\addspace #1}}}}% \DeclareFieldFormat[jurisdiction,legal,legislation]{postnote}{% \ifboolexpr{% togl {cms@comprange}% and test {\ifpages{#1}}% }% {\iffieldundef{pagination}% {\mkcomprange[\mkjuridprefix]{#1}}% {\mkcomprange[{\mkpageprefix[pagination]}]{#1}}}% {\iffieldundef{pagination}% {\mkjuridprefix{#1}}% {\mkpageprefix[pagination]{#1}}}}% \DeclareFieldFormat{pages}{% \ifboolexpr{% togl {cms@comprange}% and test {\ifpages{#1}}% }% {\iffieldundef{bookpagination}% {\mkcomprange{#1}\isdot}% {\mkcomprange[{\mkpageprefix[bookpagination]}]{#1}}}% {\iffieldundef{bookpagination}% {#1\isdot}% {\mkpageprefix[bookpagination]{#1}}}}% \DeclareListFormat{edlang}{% Required for feminine forms in some \usebibmacro{list:delim}{% languages \ifbibstring{#1}% {\bibxstring{#1}}% {\ifbibstring{ed#1}% {\bibxstring{ed#1}}% {\ifcapital{\MakeCapital{#1}}{#1}}}}% \ifbibstring{#1}% {\bibstring{#1}}% {\ifbibstring{ed#1}% {\bibstring{ed#1}}% {\ifcapital{\MakeCapital{#1}}{#1}}}% \usebibmacro{list:andothers}} \DeclareFieldFormat[suppbook,suppcollection]{title}{\mkbibemph{#1}\isdot} \DeclareFieldFormat[suppbook,suppcollection]{citetitle}{% \usebibmacro{inforaft}% \addspace% \mkbibemph{#1}\isdot} \DeclareFieldFormat[suppbook,suppcollection]{lostitle}{% \usebibmacro{inforaft}% \addspace% \mkbibemph{#1}\isdot} \DeclareFieldFormat[customc]{title}{% \iffieldundef{nameaddon}% {\mkbibemph{\bibstring{see}}% \addspace% #1}% {#1}} \DeclareFieldFormat[customc]{citetitle}{% \iffieldundef{nameaddon}% {\mkbibemph{\bibstring{see}}% \addspace% #1}% {\printfield{nameaddon}\addspace #1}} \DeclareFieldAlias[customc]{lostitle}[customc]{title} \DeclareFieldFormat[misc]{title}{% \iffieldundef{entrysubtype}% {\mkbibemph{#1}\isdot}% {\ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}} \DeclareFieldFormat[misc]{citetitle}{% \iffieldundef{entrysubtype}% {\mkbibemph{#1}\isdot}% {\ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}} \DeclareFieldFormat[misc]{lostitle}{% \iffieldundef{entrysubtype}% {\mkbibemph{#1}\isdot}% {\ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}} \DeclareFieldFormat[dataset]{title}{% \ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}} \DeclareFieldFormat[dataset]{citetitle}{% \mkbibparens{\ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}} \DeclareFieldFormat[dataset]{lostitle}{% \mkbibparens{\ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}} \DeclareFieldFormat[review,suppperiodical]{title}{% \ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}} \DeclareFieldFormat[review,suppperiodical]{citetitle}{% \ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}} \DeclareFieldFormat[review,suppperiodical]{lostitle}{% \ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}} \DeclareFieldFormat[report]{title}{% \iffieldequalstr{entrysubtype}{unpublished}% {\mkbibquote{#1\isdot}}% {\mkbibemph{#1}\isdot}}% \DeclareFieldFormat[report]{citetitle}{% \iffieldequalstr{entrysubtype}{unpublished}% {\mkbibquote{#1\isdot}}% {\mkbibemph{#1}\isdot}} \DeclareFieldFormat[report]{lostitle}{% \iffieldequalstr{entrysubtype}{unpublished}% {\mkbibquote{#1\isdot}}% {\mkbibemph{#1}\isdot}} \DeclareFieldFormat[audio,music]{title}{% \ifthenelse{\iffieldundef{booktitle}\AND\iffieldundef{entrysubtype}}% {\mkbibemph{#1}\isdot}% {\mkbibquote{#1\isdot}}} \DeclareFieldFormat[audio,music]{citetitle}{% \ifthenelse{\iffieldundef{booktitle}\AND\iffieldundef{entrysubtype}}% {\mkbibemph{#1}\isdot}% {\mkbibquote{#1\isdot}}} \DeclareFieldFormat[audio,music]{lostitle}{% \ifthenelse{\iffieldundef{booktitle}\AND\iffieldundef{entrysubtype}}% {\mkbibemph{#1}\isdot}% {\mkbibquote{#1\isdot}}} \DeclareFieldFormat[video]{title}{% \ifthenelse{\iffieldundef{booktitle}\AND\iffieldundef{entrysubtype}}% {\mkbibemph{#1}\isdot}% {\mkbibquote{#1\isdot}}} \DeclareFieldFormat[video]{citetitle}{% \ifthenelse{\iffieldundef{booktitle}\AND\iffieldundef{entrysubtype}}% {\mkbibemph{#1}\isdot}% {\ifboolexpr{% test {\iffieldequalstr{entrysubtype}{tvepisode}}% and not test {\iffieldundef{title}}% and not test {\iffieldundef{booktitle}}% and not test {\iffieldundef{shorttitle}}% }% {\mkbibemph{#1}\isdot}% {\mkbibquote{#1\isdot}}}} \DeclareFieldFormat[video]{lostitle}{% \ifthenelse{\iffieldundef{booktitle}\AND\iffieldundef{entrysubtype}}% {\mkbibemph{#1}\isdot}% {\mkbibquote{#1\isdot}}} \DeclareFieldFormat[jurisdiction]{title}{% \iftoggle{cms@running@text}% {\mkbibemph{#1}\isdot}% {#1\isdot}} \DeclareFieldFormat[legal]{title}{#1\isdot} \DeclareFieldFormat[legislation]{title}{% \iffieldequalstr{entrysubtype}{hearing}% {\mkbibemph{#1}\isdot}% {#1\isdot}} \DeclareFieldFormat[jurisdiction]{citetitle}{\mkbibemph{#1}\isdot} \DeclareFieldFormat[jurisdiction,legal]{lostitle}{#1\isdot} \DeclareFieldFormat[legislation]{lostitle}{% \iffieldequalstr{entrysubtype}{hearing}% {\mkbibemph{#1}\isdot}% {#1\isdot}} \DeclareFieldFormat[legal]{citetitle}{#1\isdot} \DeclareFieldFormat[legislation]{citetitle}{% \iffieldequalstr{entrysubtype}{hearing}% {\mkbibemph{#1}\isdot}% {#1\isdot}} %%%% Other Field Formats %%%% \DeclareFieldFormat{letterday}{\mkbibcurdinal{#1}} \DeclareFieldFormat{note}{% \ifcapital{\MakeCapital{#1}}{#1}}% \DeclareFieldFormat [audio,manual,music,patent,report,suppbook,suppcollection,thesis,video] {type}{% \ifbibstring{#1}% {\bibstring{#1}}% {\ifcapital% {\MakeCapital{#1\isdot}}% {#1\isdot}}} \DeclareFieldFormat[artwork,image,online,article,review,suppperiodical,book] {type}{% \ifcapital% {\MakeCapital{#1}}% {#1}} \DeclareFieldFormat[artwork,image,music]{howpublished}{% \ifcapital% {\MakeCapital{#1}}% {#1}} \DeclareFieldFormat[video]{usera}{% \bibstring{on}\addspace #1} \DeclareFieldFormat{version}{\bibsstring{version}\addspace #1}% \DeclareFieldFormat{url}{\url{#1}} \DeclareFieldFormat{doi}{% \url{https://doi.org/#1}} \DeclareFieldFormat[music]{date}{% Generalize userd ??? \ifthenelse{\iffieldundef{userd}\OR\NOT\iffieldundef{urlyear}% \OR\NOT\iffieldundef{eventyear}\OR\NOT\iffieldundef{origyear}}% {#1}% {\printfield{userd}\addspace #1}} \DeclareFieldFormat[video]{date}{% Generalize userd ??? \ifthenelse{\iffieldundef{userd}\OR\NOT\iffieldundef{urlyear}% \OR\NOT\iffieldundef{eventyear}}% {#1}% {\printfield{userd}\addspace #1}} \DeclareFieldFormat[artwork,image]{date}{% \iffieldundef{origyear}% {#1}% {\iftoggle{cms@switchdates}% {#1}% {\iffieldundef{userd}% {\bibstring{printed}\addspace #1}% {\printfield{userd}\addspace #1}}}} \DeclareFieldFormat[artwork,image]{origdate}{% \iffieldundef{year}% {#1}% {\iftoggle{cms@switchdates}% {\iffieldundef{userd}% {\bibstring{printed}\addspace #1}% {\printfield{userd}\addspace #1}}% {#1}}} \DeclareFieldFormat[artwork,image]{urldate}{% \ifboolexpr{% test {\iffieldundef{userd}}% or ( not test {\iffieldundef{year}}% and not test {\iffieldundef{origyear}}% ) }% {\bibstring{urlseen}\addspace #1}% {\printfield{userd}\addspace #1}} \DeclareFieldFormat{date}{% Generalize userd ??? \ifthenelse{\iffieldundef{userd}\OR\NOT\iffieldundef{urlyear}}% {#1}% {\printfield{userd}\addspace #1}} \DeclareFieldFormat{urldate}{% 16th ed. \iffieldundef{userd}% {\bibstring{urlseen}\addspace #1}% {\printfield{userd}\addspace #1}} \DeclareFieldFormat[video]{urldate}{% 16th ed. \ifthenelse{\iffieldundef{userd}\OR\NOT\iffieldundef{eventyear}}% {\bibstring{urlseen}\addspace #1}% {\printfield{userd}\addspace #1}} \DeclareFieldFormat[music]{urldate}{% 16th ed. \ifthenelse{\iffieldundef{userd}\OR\NOT\iffieldundef{eventyear}% \OR\NOT\iffieldundef{origyear}}% {\bibstring{urlseen}\addspace #1}% {\printfield{userd}\addspace #1}} \DeclareFieldFormat[music]{origdate}{% 16th ed. \iffieldequalstr{pubstate}{reprint}% Date fix {#1}% {\ifthenelse{\iffieldundef{userd}\OR\NOT\iffieldundef{eventyear}}% {\bibstring{discrecorded}\addspace #1}% Can now match gender {\printfield{userd}\addspace #1}}} \DeclareFieldFormat[music]{eventdate}{% 16th ed. \iffieldundef{userd}% {\bibstring{songrecorded}\addspace #1}% Can now match gender {\printfield{userd}\addspace #1}} \DeclareFieldFormat[video]{eventdate}{% 16th ed. \iffieldundef{userd}% {\bibstring{broadcast}\addspace #1}% {\printfield{userd}\addspace #1}} \DeclareFieldAlias{userd}{titleaddon}% 16th ed. \DeclareFieldFormat{nameaddon}{\mkbibbrackets{#1\bibsentence}}% ?! \DeclareFieldFormat[online,review,suppperiodical]{nameaddon}{#1\bibsentence} \DeclareFieldFormat[misc]{nameaddon}{% \iffieldundef{entrysubtype}% {\mkbibbrackets{#1\bibsentence}}% {#1\bibsentence}} \DeclareFieldFormat[customc]{nameaddon}{% For cross-refs \ifbibstring{#1}% {\mkbibemph{\bibstring{#1}}}% {#1}} \DeclareFieldFormat{edition}{% New in 0.8 \ifinteger{#1} {\mkbibordedition{#1}~\bibstring{edition}}% {\ifcapital {\MakeCapital{#1\isdot}}% {#1\isdot}}} \DeclareFieldFormat{year}{% To cope with abbreviation n.d. \iftoggle{cms@fullnote}% {#1\bibsentence}% {#1\isdot}}% (?) \DeclareFieldFormat[misc]{year}{#1\isdot} \DeclareFieldFormat[article]{year}{% To cope with abbreviation n.d. \iffieldequalstr{entrysubtype}{magazine}% {#1\isdot} {#1\bibsentence}} \DeclareFieldAlias[review]{year}[article]{year} \DeclareFieldAlias[periodical]{year}[article]{year} \DeclareFieldAlias[suppperiodical]{year}[article]{year} \DeclareFieldFormat{usere}{[#1]} % Better than mkbibbrackets? \DeclareFieldFormat{titleaddon}{% \ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}% \DeclareFieldAlias{booktitleaddon}{titleaddon} \DeclareFieldAlias{maintitleaddon}{titleaddon} \DeclareFieldFormat[jurisdiction,legal,legislation]{journaltitle}{% \iffieldundef{shortjournal}% {#1\isdot}% {\mkbibemph{#1}\isdot}} \DeclareFieldFormat[jurisdiction,legal,legislation]{shortjournal}{#1\isdot} \DeclareFieldFormat{journaltitle}{\mkbibemph{#1}\isdot} \DeclareFieldFormat{issuetitle}{\mkbibquote{#1\isdot}} \DeclareFieldFormat{shortjournal}{\mkbibemph{#1}\isdot} \DeclareFieldFormat[periodical]{shorttitle}{\mkbibemph{#1}\isdot} \DeclareFieldFormat{jourser}{% \ifinteger{#1}% {\mkbibordseries{#1}% \addnbspace% \bibstring{jourser}}% {\ifbibstring{#1}{\bibstring{#1}}{#1}}}% \DeclareFieldFormat{jurisdictionser}{% \ifinteger{#1}% {\mkjuridordinal{#1}}% {\ifbibstring{#1}{\bibstring{#1}}{#1}}}% \DeclareFieldFormat{legislationser}{% \iffieldequalstr{entrysubtype}{hansard}% {\ifinteger{#1}% {\addspace\mkbibparens{\mkjuridordinal{#1}\addspace\bibsstring{jourser}}}% {\ifbibstring{#1}% {\addspace\mkbibparens{\bibstring{#1}}}% {\addspace\mkbibparens{#1}}}}% {\iffieldequalstr{entrysubtype}{uk}% {\addspace #1\isdot}% {\addcomma\addspace #1\isdot}}}% \DeclareFieldFormat{legalser}{\addspace #1\isdot}% \DeclareFieldFormat{hansardser}{% \ifinteger{#1}% {\mkbibparens{\mkjuridordinal{#1}\addspace\bibsstring{jourser}}}% {\ifbibstring{#1}{\mkbibparens{\bibstring{#1}}}{\mkbibparens{#1}}}}% \DeclareFieldFormat{journum}{% Revised for 0.9.5 \ifboolexpr{% test {\ifnumerals{#1}}% and not test {\ifnumeral{#1}}% }% {\bibstring{numbers}\addspace #1}% {\bibstring{number}\addspace #1}}% \DeclareFieldFormat{juridnum}{\bibcpstring{number}\addspace #1}% \DeclareFieldFormat{jourvol}{#1} \DeclareFieldFormat{sernum}{% \ifnumeral{#1}% {\addnbspace #1}% {\addcomma\addspace #1}} \DeclareFieldFormat{series}{#1\isdot} \DeclareFieldFormat{shortseries}{#1\isdot} \DeclareFieldFormat{addendum}{% \ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}} \DeclareFieldFormat[jurisdiction,legal,legislation]{addendum}{% \ifcapital{\mkbibparens{\MakeCapital{#1\isdot}}}{\mkbibparens{#1\isdot}}} % This works better here than in the entrytail macro -- userf use is % no longer a problem, though the page breaking still isn't ideal. \DeclareFieldFormat{annotation}{\par\nobreak \vskip \bibitemsep #1} \DeclareFieldFormat{part}{% xref revision ??? \ifnumerals{#1}% {\addcomma\addspace\bibstring{partvolume}~#1}% {\addcomma\addspace\ifcapital{\MakeCapital{#1}}{#1}}} \global\let\cmsnrpart\RN \DeclareFieldFormat{nrpart}{\bibsstring{part}~\cmsnrpart{#1}}% Noterefs \DeclareFieldFormat{nrchapter}{\bibsstring{chapter}~#1}% \DeclareFieldFormat{xrefpart}{% xref revision ??? \ifnumerals{#1}% {\bibstring{partvolume}~#1}% {\ifcapital{\MakeCapital{#1}}{#1}}} \DeclareFieldFormat[legal,legislation]{part}{% \ifnumerals{#1}% {\bibsstring{part}~#1}% {#1\isdot}}% \DeclareFieldFormat[legal,legislation]{chapter}{c\adddotspace #1}% \DeclareFieldFormat[music]{chapter}{\bibstring{track}~#1} %% This tries to get hyperlinks from shortened cross-ref'd notes to %% %% long notes working properly. Used in short and shorthand cites. %% \DeclareFieldFormat{cmshyperlink}{% Obsolete? \iffieldundef{crossref}% {\iffieldundef{xref}% {\bibhyperlink{\thefield{entrykey}}{#1}}% {\ifboolexpr{(( test {\ifentrytype{book}}% or test {\ifentrytype{bookinbook}}% or test {\ifentrytype{collection}}% or test {\ifentrytype{proceedings}}% ) and not togl {cms@bookcitexref}% ) or (( test {\ifentrytype{inbook}}% or test {\ifentrytype{letter}}% or test {\ifentrytype{incollection}}% or test {\ifentrytype{inproceedings}}% ) and not togl {cms@citecrossref}% ) }% {\bibhyperlink{\thefield{xref}}{#1}}% {\bibhyperlink{\thefield{entrykey}}{#1}}}}% {\ifboolexpr{(( test {\ifentrytype{book}}% or test {\ifentrytype{bookinbook}}% or test {\ifentrytype{collection}}% or test {\ifentrytype{proceedings}}% ) and not togl {cms@bookcitexref}% ) or (( test {\ifentrytype{inbook}}% or test {\ifentrytype{letter}}% or test {\ifentrytype{incollection}}% or test {\ifentrytype{inproceedings}}% ) and not togl {cms@citecrossref}% ) }% {\bibhyperlink{\thefield{crossref}}{#1}}% {\bibhyperlink{\thefield{entrykey}}{#1}}}} \newrobustcmd*{\cmshyper}[1]{% \ifbibliography% {\ifboolexpr{% test {\ifentryinbib{\thefield{entrykey}}}% and not togl {blx@skipbib}% }% {\printtext[bibhyperref]{#1}}% {#1}}% {\iftoggle{cms@allshort}% {\iftoggle{blx@skipbib}{#1}{\printtext[bibhyperref]{#1}}}% {\printtext[bibhyperlink]{#1}}}}% \newrobustcmd*{\cmsshhyper}[1]{% \iffootnote% {\iftoggle{cms@allshort}% {\iftoggle{blx@skipbib}{#1}{\printtext[bibhyperref]{#1}}}% {\printtext[bibhyperlink]{#1}}}% {\ifboolexpr{% test {\ifentryinbib{\thefield{entrykey}}}% and not togl {blx@skipbib}% }% {\printtext[bibhyperref]{#1}}% {\iftoggle{cms@allshort}% {#1}% {\printtext[bibhyperlink]{#1}}}}}% \DeclareFieldAlias[review]{volume}[article]{volume} \DeclareFieldAlias[suppperiodical]{volume}[article]{volume} %%%% Related field formats from biblatex.def %%%% \DeclareFieldFormat{related:origpubas}{#1}% This and next remove parens \DeclareFieldFormat{related:origpubin}{#1} \DeclareFieldFormat{relatedstring:default}{% For notes + bib \ifboolexpr{% test {\iffieldundef{relatedstring}}% or test {\iffieldbibstring{relatedstring}}% }% {#1}% {\ifcapital% {\MakeCapital{#1}}% {#1}}% \ifentrytype{jurisdiction}% {\newcunit}% {\printunit{\relatedpunct}}}% Issue w/ printunit. Our bug? \DeclareFieldFormat{relatedstring:reprintfrom}{% For notes + bib \ifboolexpr{% test {\iffieldundef{relatedstring}}% or test {\iffieldbibstring{relatedstring}}% }% {#1}% {\ifcapital% {\MakeCapital{#1}}% {#1}}% \addspace}% %%%% Commands, for users and internal %%%% \renewcommand*{\multicitedelim}{\addsemicolon\addspace} \renewcommand*{\iffinalcitedelim}{% \ifnumequal{\value{textcitecount}}{\value{textcitetotal}-1}} \renewcommand*{\subtitlepunct}{% Follows CMS16 spec. \ifboolexpr{% test {\ifterm}% and not test {\ifcsdef{@cmsst}}% }% {\addspace}% {\addcolon\addspace% \global\csundef{@cmsst}}% } \newcommand*{\classicpunct}{% 17th ed. \ifboolexpr{% ( test {\iffieldequalstr{entrysubtype}{classical}}% and test {\iffieldundef{labeltitle}}% ) or test {\ifentrytype{letter}}% or test {\ifentrytype{dataset}}% }% {\setunit*{\addspace}}% {\setunit*{\addcomma\addspace}}} \newcommand*{\reprintpunct}{% \iftoggle{cms@fullnote}% {\setunit*{\addsemicolon\addspace}}% {\setunit*{\addperiod\addspace}}} \newcommand*{\encypunct}{% for named entries in an encyclopedia \iftoggle{cms@fullnote}% {\ifentrytype{book}% {\ifthenelse{\iffieldundef{addendum}\AND\iffieldundef{doi}\AND \iffieldundef{isbn}\AND\iffieldundef{url}}% {\ifthenelse{\value{multicitecount} < \value{multicitetotal}}% {}% {\addperiod}}% {\addcomma}}% {\ifnameundef{author}% {\ifthenelse{\iffieldundef{addendum}\AND\iffieldundef{doi}\AND \iffieldundef{isbn}\AND\iffieldundef{url}}% {\ifthenelse{\value{multicitecount} < \value{multicitetotal}}% {}% {\addperiod}}% {\addcomma}}% {}}}% {\ifentrytype{book}% {\addperiod}% {\ifnameundef{author}% {\addperiod}% {}}}}% \newcommand*{\postvolpunct}{\addcolon}% For vol:page customization \newcommand*{\parttrans}{% \iftoggle{cms@fullnote}% {\bibstring{cbytranslator}\addspace}% {\bibstring{bytranslator}\addspace}}% \protected\def\partedit#1{% \ifcat\noexpand~\noexpand#1% \ifundef{\cms@tempb}{}{\appto{\cms@tempb}{#1}}% \def\cms@tempa{\futurelet\cms@tempa\partedit}% \else% \ifx\addnbspace#1% \ifundef{\cms@tempb}{}{\appto{\cms@tempb}{#1}}% \def\cms@tempa{\futurelet\cms@tempa\partedit}% \else% \ifx\addspace#1% \ifundef{\cms@tempb}{}{\appto{\cms@tempb}{#1}}% \def\cms@tempa{\futurelet\cms@tempa\partedit}% \else% \if#1H% \appto{\cms@tempb}{#1}% \def\cms@tempa{\futurelet\cms@tempa\partedit}% \else% \if#1h% \appto{\cms@tempb}{#1}% \def\cms@tempa{\futurelet\cms@tempa\partedit}% \else% \def\cms@tempa{\part@edit@i\lbx@initnamehook{#1}% \csuse{cms@tempb}#1\csundef{cms@tempb}}% \fi% \fi% \fi% \fi% \fi% \cms@tempa% }% \newcommand*{\part@edit@i}{% \iftoggle{cms@fullnote}% {\bibstring{cbyeditor}\addspace}% {\bibstring{byeditor}\addspace}}% \newcommand*{\partcomp}{% \iftoggle{cms@fullnote}% {\bibstring{cbycompiler}\addspace}% {\bibstring{bycompiler}\addspace}}% \newcommand*{\parteditandcomp}{% \iftoggle{cms@fullnote}% {\bibstring{cbyeditorcp}\addspace}% {\bibstring{byeditorcp}\addspace}}% \newcommand*{\parttransandcomp}{% \iftoggle{cms@fullnote}% {\bibstring{cbytranslatorcp}\addspace}% {\bibstring{bytranslatorcp}\addspace}}% \newcommand*{\partedittransandcomp}{% \iftoggle{cms@fullnote}% {\bibstring{cbyeditortrcp}\addspace}% {\bibstring{byeditortrcp}\addspace}}% \newcommand*{\parteditandtrans}{% \iftoggle{cms@fullnote}% {\bibstring{cbyeditortr}\addspace}% {\bibstring{byeditortr}\addspace}}% \newcommand*{\reprint}{% \iftoggle{cms@fullnote}% {\bibsstring{reprint}}% {\bibstring{reprint}}}% \newcommand*{\multipubsdelim}{\addnbspace/\addspace} \newcommand*{\multilocsdelim}{% \ifthenelse{\value{listcount}<\value{liststop}}% {\ifthenelse{\numexpr\value{listcount}+1<\value{liststop}}% {\addcomma\addspace}% {\ifthenelse{\value{liststop}>2}% {\addcomma\addspace\bibstring{and}\addspace}% {\addspace\bibstring{and}\addspace}}}% {}}% \newcommand*{\multilangdelim}{% \ifthenelse{\value{listtotal}<3}% {\addspace\bibstring{and}\addspace}% {\ifthenelse{\value{listcount}<\value{listtotal}}% {\addcomma\addspace}% {\addcomma\addspace\bibstring{and}\addspace}}}% \renewcommand*{\postnotedelim}{% \ifboolexpr{% test {\ifciteibid}% and ( test {\ifentrytype{jurisdiction}}% or test {\ifentrytype{legal}}% or test {\ifentrytype{legislation}}% ) }% {\addspace}% {\iftoggle{cms@shortnote}% {\iffieldequalstr{entrysubtype}{classical}% {\DeclareNumChars*{abcdeABCDE:}% Makes classical \iffieldpages{postnote}% test more accurate. See 17.253. {\addspace}% {\addcomma\addspace}\DeclareNumChars{.}}% {\addcomma\addspace}}% 16th ed -- no more volumes test. {\iftoggle{cms@fullnote}% {\ifthenelse{\(\ifentrytype{article}\OR \ifentrytype{review}\OR \ifentrytype{periodical}\OR \ifentrytype{suppperiodical}\)\AND\NOT \iffieldequalstr{entrysubtype}{magazine}}% {\addcolon\addspace}% {\addcomma\addspace}}% {\addcomma\addspace}}}}% \newcommand*{\postnotewrapper}{% \iftoggle{cms@modpostnote}% {\ifboolexpr{% test {\iffieldstart{postnote}{,}}% or test {\iffieldstart{postnote}{\bibrangessep}}% }% {\addcomma}% w/ or w/o \addspace? {\ifboolexpr{% test {\iffieldstart{postnote}{;}}% or test {\iffieldstart{postnote}{:}}% or test {\iffieldstart{postnote}{.}}% }% {}{\postnotedelim}}}% {\postnotedelim}}% \newrobustcmd*{\iffieldstart}[2]{% Philipp Lehman's code, from \begingroup% comp.text.tex \edef\@tempa{% \long\def\noexpand\iffieldstart@i####1\detokenize{#2}####2}% \@tempa\@nil{\endgroup\ifblank{##1}}% \savefield*{#1}{\@tempa}% \expandafter\iffieldstart@i\detokenize \expandafter\expandafter\expandafter{% \expandafter\@tempa\detokenize{#2}}\@nil} \newcommand*{\editordelim}{% \ifboolexpr{% test {\iffieldequalstr{editortype}{none}}% and not togl {cms@fullnote}% }% {\newunit}%\addperiod\addspace {\newcunit}}%\addcomma\addspace \newcommand*{\nameadelim}{% \ifboolexpr{% test {\iffieldequalstr{nameatype}{none}}% and not togl {cms@fullnote}% }% {\newunit}%\addperiod\addspace {\newcunit}}%\addcomma\addspace \DeclareDelimFormat{dateeradelim}{\addnbspace}% \DeclareDelimFormat{dateaddelim}{\addnbspace}% \DeclareListFormat{cfromoriglanguage}{% Needed for notes, to provide \begingroup% final {by}. \blx@bibstringnormal% \usebibmacro{list:delim}{% \ifbibstring{from#1}% {\bibxlstring{cfrom#1}}% {\ifbibstring{clang#1}% {\bibxlstring{lang#1}}% {#1}}}% \ifbibstring{cfrom#1}% {\ifboolexpr{% test {\ifnumless{\value{listcount}}{\value{liststop}}}% or test {\ifmoreitems}% }% {\bibstring{from#1}}% {\bibstring{cfrom#1}}}% {\ifbibstring{lang#1}% {\biblstring{lang#1}}% {#1}}% \usebibmacro{list:andotherlangs}% \endgroup} \newbibmacro*{list:andotherlangs}{% Final {by} after {andmore} \ifboolexpr{% test {\ifnumequal{\value{listcount}}{\value{liststop}}}% and test {\ifmoreitems}% }% {\ifnumgreater{\value{liststop}}{1}% {\finalandcomma}% {}% \printdelim{andmoredelim}\bibstring{andmore}\addspace\bibstring{by}}% {}} \newcommand*{\lbx@cfromlang}{% Because the cbytranslator string can't \iffieldundef{userf}% have {by} in it unless there's an origlanguage. {\iflistundef{origlanguage}% {\unspace}% {\printlist[cfromoriglanguage]{origlanguage}}}% {\unspace}}% \renewcommand*{\lbx@fromlang}{% \iffieldundef{userf}% {\iflistundef{origlanguage}% {\unspace}% {\printlist[lfromoriglanguage]{origlanguage}}}% {\unspace}}% \renewcommand*{\lbx@lfromlang}{% \iffieldundef{userf}% {\iflistundef{origlanguage}% {\unspace}% {\printlist[lfromoriglanguage]{origlanguage}}}% {\unspace}}% \renewcommand*{\lbx@sfromlang}{% \iffieldundef{userf}% {\iflistundef{origlanguage}% {\unspace}% {\printlist[sfromoriglanguage]{origlanguage}}}% {\unspace}}% %%%% Formatting macros, called both by cbx and bbx %%%% \newbibmacro*{finentry}{%{\finentry} To make annotated bibliography \togglefalse{cms@switchdates}% \ifbibliography {\usebibmacro{entrytail}}% {}% \finentry} \newbibmacro*{book:xref+finentry}{% FIXME \ifthenelse{\iffieldundef{crossref}\OR\ifbibliography}% {\ifthenelse{\iffieldundef{xref}\OR\ifbibliography}% {}% {\iftoggle{cms@bookcitexref}% {\cms@citetracker@xref}% {\bibhypertarget{\thefield{xref}}% {\cms@citetracker@xref}}}}% {\iftoggle{cms@bookcitexref}% {\cms@citetracker@crossref}% {\bibhypertarget{\thefield{crossref}}% {\cms@citetracker@crossref}}}}% \newbibmacro*{cite:xref+finentry}{% FIXME \ifthenelse{\iffieldundef{crossref}\OR\ifbibliography}% {\ifthenelse{\iffieldundef{xref}\OR\ifbibliography}% {}% {\iftoggle{cms@citecrossref}% {\cms@citetracker@xref}% {\bibhypertarget{\thefield{xref}}% {\cms@citetracker@xref}}}}% {\iftoggle{cms@citecrossref}% {\cms@citetracker@crossref}% {\bibhypertarget{\thefield{crossref}}% {\cms@citetracker@crossref}}}}% \newbibmacro*{allshort+firstcite+xref}{% \ifboolexpr{% ( togl {cms@citecrossref}% and togl {cms@bookcitexref}% ) or not togl {cms@allshort}% }% {}% {\ifciteseen% {}% {\iffieldundef{crossref}% {\iffieldundef{xref}% {}% {\cms@citetracker@xref}}% {\cms@citetracker@crossref}}}}% \def\cms@citetracker@crossref{% cf. \blx@citetracker@global \ifbool{citetracker}% {\xifinlistcs\abx@field@crossref{blx@bsee@\the\c@refsection}% {}% {\listcsxadd{blx@bsee@\the\c@refsection}\abx@field@crossref% \iffieldundef{clonesourcekey}% {\cms@save@locdata{crossref}}{}}}% {}}% \def\cms@citetracker@xref{% cf. \blx@citetracker@global \ifbool{citetracker}% {\xifinlistcs\abx@field@xref{blx@bsee@\the\c@refsection}% {}% {\listcsxadd{blx@bsee@\the\c@refsection}\abx@field@xref% \iffieldundef{clonesourcekey}% {\cms@save@locdata{xref}}{}}}% {}}% \def\cms@citetracker@clonesourcekey{% \ifbool{citetracker}% {\xifinlistcs\abx@field@clonesourcekey{blx@bsee@\the\c@refsection}% {}% {\listcsxadd{blx@bsee@\the\c@refsection}\abx@field@clonesourcekey% \cms@save@locdata{clonesourcekey}}}% {}}% \newbibmacro*{entrytail}{% From reading.bbx, for annotated bibliography \newunit\newblock \iftoggle{cms@annotation}% {\usebibmacro{annotation}% \newunit\newblock}% {}}% \newbibmacro*{author+holder}{% \ifnameundef{author}% {}% {\printnames{author}% \ifthenelse{\ifnameundef{holder}\OR% \ifnamesequal{author}{holder}}% {}% {\setunit{\addspace}% \printtext[parens]{\printnames{holder}}}}} \renewbibmacro*{byauthor}{% MT fix \ifnameundef{author}% {}% {\ifboolexpr{% test {\ifuseauthor}% and not test {\ifcsempty{abx@macro@author/editor}}% }% {}% {\bibstring{byauthor}\addspace% \printnames[byauthor]{author}}}} \newbibmacro*{byauthorpunct}{% \ifthenelse{\ifuseauthor\OR\ifnameundef{author}}% {\addperiod\addspace}% {\newcunit}} \renewbibmacro*{bybookauthor}{% \ifnameundef{bookauthor}% {}% {\ifnamesequal{author}{bookauthor}% {}% {\bibstring{byauthor}\addspace\printnames[default]{bookauthor}% \newcunit\newblock}}} \newbibmacro*{music+bookauthor}{% \ifnameundef{bookauthor}% {}% {\ifnamesequal{author}{bookauthor}% {}% {\printnames[default]{bookauthor}% \newcunit\newblock}}} \newbibmacro*{editorpunct}{% \ifthenelse{\(\iffieldundef{booktitle}\AND% \iffieldundef{maintitle}\AND\iffieldundef{issuetitle}\)% \OR\iffieldsequal{booktitle}{title}% Changed these for crossrefed \OR\iffieldsequal{maintitle}{title}}% entries. Create problems? {\ifboolexpr{% test {\ifentrytype{video}}% Change for Video type? Appears or togl {cms@mtvolpunct}% }% {\newcunit\newblock}% to treat italicized title as booktitle in {\newunit\newblock}}% available examples. Added issuetitle 0.9.9c. {\newcunit\newblock}} \newbibmacro*{edition}{% \printfield{edition}% \clearfield{edition}}% \newbibmacro*{version}{% \printfield{version}% \clearfield{version}}% \newbibmacro*{inforaft}{% \ifnameundef{introduction}% {\ifnameundef{afterword}% {\ifnameundef{foreword}% {\printfield{type}}% {\bibstring{forewordto}% \clearname{foreword}}}% 16th ed. {\bibstring{afterwordto}% \clearname{afterword}}}% {\bibstring{introductionto}% \clearname{introduction}}} \newbibmacro*{langlist:andothers}{% \ifthenelse{\value{listcount}=\value{liststop}\AND% \ifmoreitems}% {\ifnum\value{liststop}>1 \finalandcomma\fi% \andmoredelim\bibstring{andmore}\bibrightbracket}% {}}% \newbibmacro*{mag+news+author}{% \ifnameundef{author}% {\ifboolexpr{% test {\iffieldequals{journaltitle}{\bbx@lasthash}}% and not test {\iffirstonpage}% and togl {cms@namedash}% }% {\printtext{\bibnamedash}}% {\usebibmacro{journal+sub}% \setunit*{\addspace}% \printlist[periodplace]{location}% \savefield{journaltitle}{\bbx@lasthash}}}% {\ifuseauthor% {\usebibmacro{author}}% {}}}% \newbibmacro*{cmag+news+author}{% \ifnameundef{author}% {}% 16th ed. {\ifuseauthor% {\usebibmacro{author}}% {}}}% \newbibmacro*{type+inst+year}{% \printfield{type}% \newcunit \printlist{institution}% \setunit*{\addcomma\addspace}% \usebibmacro{date}}% Instead of cmsyear \newbibmacro*{institution+organization}{% \iflistundef{organization}% {\iflistundef{institution}% {}% {\printlist{institution}}}% {\printlist{organization}% \newcunit% \printlist{institution}}} \newbibmacro*{misc+institution+organization}{% 17th ed. \iffieldundef{number}% {\iflistundef{organization}% {\iflistundef{institution}% {}% {\printlist{institution}}}% {\printlist{organization}% \newcunit% \printlist{institution}}}% {\iflistundef{organization}% {\iflistundef{institution}% {\newcunit\printfield{number}}% {\newcunit\printfield{number}% \iftoggle{cms@fullnote}% {\newcunit}% {\newunit}% \printlist{institution}}}% {\iflistundef{institution}% {\newcunit\printfield{number}% \iftoggle{cms@fullnote}% {\newcunit}% {\newunit}% \printlist{organization}}% {\printlist{organization}% \newcunit% \printfield{number}% \newcunit% \printlist{institution}}}}} \newbibmacro*{bibauthor+org}{% \ifnameundef{author}% {\ifnameundef{editor}% {\iflistundef{organization}% {}% {\ifboolexpr{% test {\iflistequals{organization}{\bbx@lasthash}}% and not test {\iffirstonpage}% and togl {cms@namedash}% }% {\printtext{\bibnamedash}}% {\printlist{organization}% \savelist{organization}{\bbx@lasthash}}}}% {\usebibmacro{editor}}}% {\usebibmacro{author/editor}}} \newbibmacro*{author+org}{% \ifnameundef{author}% {\ifnameundef{editor}% {\iflistundef{organization}% {}% {\printlist{organization}}}% {\usebibmacro{editor}}}% {\usebibmacro{author/editor}}} \renewbibmacro*{bytypestrg}[2]{% From biblatex.def \iffieldundef{#1type}% {\bibstring{by#2}}% {\ifbibxstring{by\thefield{#1type}}% {\bibstring{by\thefield{#1type}}}% {\printtext[note]{\thefield{#1type}}}}}% \newbibmacro*{cbytypestrg}[2]{% \iffieldundef{#1type}% {\bibstring{cby#2}}% {\ifbibxstring{cby\thefield{#1type}}% {\bibstring{cby\thefield{#1type}}}% {\printtext[note]{\thefield{#1type}}}}}% \newbibmacro*{cbyeditor}{% \ifnameundef{editor}% {}% {\usebibmacro{cbytypestrg}{editor}{editor}% \setunit{\addspace}% \printnames[byeditor]{editor}% \newcunit}% \usebibmacro{cbyeditorx}} \newbibmacro*{cbyeditorx}{% \ifnameundef{editora}% {}% {\usebibmacro{cbytypestrg}{editora}{editor}% \setunit{\addspace}% \printnames[byeditora]{editora}% \newcunit}% \ifnameundef{editorb}% {}% {\usebibmacro{cbytypestrg}{editorb}{editor}% \setunit{\addspace}% \printnames[byeditorb]{editorb}% \newcunit}% \ifnameundef{editorc}% {}% {\usebibmacro{cbytypestrg}{editorc}{editor}% \setunit{\addspace}% \printnames[byeditorc]{editorc}% \newcunit}} \newbibmacro*{cbytranslator}{% \ifnameundef{translator}% {}% {\bibstring{cbytranslator}% \addspace% \printnames[bytranslator]{translator}}} \newbibmacro*{cbycompiler}{% \ifnameundef{namec}% {}% {\bibstring{cbycompiler}\addspace% \printnames[bycompiler]{namec}}} \newbibmacro*{cbyredactor}{% \ifnameundef{redactor}% {}% {\bibstring{cbyredactor}\addspace% \printnames[byredactor]{redactor}}} \newbibmacro*{cwithcommentator}{% \ifnameundef{commentator}% {}% {\bibsstring{withcommentator}\addspace% \printnames[withcommentator]{commentator}}} \newbibmacro*{cwithannotator}{% \ifnameundef{annotator}% {}% {\bibsstring{withannotator}\addspace% \printnames[withannotator]{annotator}}} \newbibmacro*{cwithintroduction}{% \ifnameundef{introduction}% {}% {\bibstring{withintroduction}\addspace% \printnames[withintroduction]{introduction}}} \newbibmacro*{cwithforeword}{% \ifnameundef{foreword}% {}% {\bibstring{withforeword}\addspace% \printnames[withforeword]{foreword}}} \newbibmacro*{cwithafterword}{% \ifnameundef{afterword}% {}% {\bibstring{withafterword}\addspace% \printnames[withafterword]{afterword}}} \newbibmacro*{cbyeditor+others}{% \ifthenelse{\NOT\ifnameundef{editor}\AND% \(\iffieldundef{editortype}\OR% \iffieldequalstr{editortype}{editor}\)}% {\def\@tempa{cbyeditor}% \ifnamesequal{editor}{translator}% {\edef\@tempa{\@tempa tr}% \clearname{translator}}% {}% \ifnamesequal{editor}{namec}% {\edef\@tempa{\@tempa cp}% \clearname{namec}}% {}% \ifnamesequal{editor}{commentator}% {\edef\@tempa{\@tempa co}% \clearname{commentator}}% {\ifnamesequal{editor}{annotator}% {\edef\@tempa{\@tempa an}% \clearname{annotator}}% {}}% \ifnamesequal{editor}{introduction}% {\edef\@tempa{\@tempa in}% \clearname{introduction}}% {\ifnamesequal{editor}{foreword}% {\edef\@tempa{\@tempa fo}% \clearname{foreword}}% {\ifnamesequal{editor}{afterword}% {\edef\@tempa{\@tempa af}% \clearname{afterword}}% {}}}% \bibstring{\@tempa}\addspace% \setunit here? \printnames[byeditor]{editor}% \clearname{editor}% \newcunit% \usebibmacro{cbyeditorx}}% {\usebibmacro{cbyeditor}}% \usebibmacro{cbytranslator+others}} \newbibmacro*{cbytranslator+others}{% \ifnameundef{translator}% {}% {\def\@tempa{cbytranslator}% \ifnamesequal{translator}{namec}% {\edef\@tempa{\@tempa cp}% \clearname{namec}}% {}% \ifnamesequal{translator}{commentator}% {\edef\@tempa{\@tempa co}% \clearname{commentator}}% {\ifnamesequal{translator}{annotator}% {\edef\@tempa{\@tempa an}% \clearname{annotator}}% {}}% \ifnamesequal{translator}{introduction}% {\edef\@tempa{\@tempa in}% \clearname{introduction}}% {\ifnamesequal{translator}{foreword}% {\edef\@tempa{\@tempa fo}% \clearname{foreword}}% {\ifnamesequal{translator}{afterword}% {\edef\@tempa{\@tempa af}% \clearname{afterword}}% {}}}% \bibstring{\@tempa}\addspace% \printnames[bytranslator]{translator}% \clearname{translator}% \newcunit}% \usebibmacro{cbycompiler+others}} \newbibmacro*{cbycompiler+others}{% \ifnameundef{namec}% {}% {\def\@tempa{cbycompiler}% \ifnamesequal{namec}{commentator}% {\edef\@tempa{\@tempa co}% \clearname{commentator}}% {\ifnamesequal{namec}{annotator}% {\edef\@tempa{\@tempa an}% \clearname{annotator}}% {}}% \ifnamesequal{namec}{introduction}% {\edef\@tempa{\@tempa in}% \clearname{introduction}}% {\ifnamesequal{namec}{foreword}% {\edef\@tempa{\@tempa fo}% \clearname{foreword}}% {\ifnamesequal{namec}{afterword}% {\edef\@tempa{\@tempa af}% \clearname{afterword}}% {}}}% \bibstring{\@tempa}\addspace% \printnames[bycompiler]{namec}% \clearname{namec}% \newcunit}% \usebibmacro{cbyothers}} \newbibmacro*{cbyothers}{% \usebibmacro{cbytranslator}% \setunit*{\addcomma\addspace}% \usebibmacro{cbycompiler}% \setunit*{\addcomma\addspace}% \usebibmacro{cbyredactor}% \setunit*{\addcomma\addspace}% \usebibmacro{cwithcommentator}% \setunit*{\addcomma\addspace}% \usebibmacro{cwithannotator}% \setunit*{\addcomma\addspace}% \usebibmacro{cwithintroduction}% \setunit*{\addcomma\addspace}% \usebibmacro{cwithforeword}% \setunit*{\addcomma\addspace}% \usebibmacro{cwithafterword}} \newbibmacro*{part+editor+translator}{% \ifnameundef{namea}% {\ifnameundef{nameb}% {}% {\bibstring{bytranslator}\addspace% \printnames[bytranslator]{nameb}}}% {\ifthenelse{\iffieldundef{nameatype}\OR% \iffieldequalstr{nameatype}{editor}}% {\ifnamesequal{namea}{nameb}% {\bibstring{byeditortr}\addspace% \printnames[byeditor]{namea}}% {\bibstring{byeditor}\addspace% \printnames[byeditor]{namea}% \ifnameundef{nameb}% {}% {\usebibmacro{related:mtpunct}%\newunit% MT fix \bibstring{bytranslator}\addspace% \printnames[bytranslator]{nameb}}}}% {\usebibmacro{bytypestrg}{namea}{editor}% \setunit{\addspace}% \printnames[byeditor]{namea}% \ifnameundef{nameb}% {}% {\usebibmacro{related:mtpunct}%\newunit% MT fix \bibstring{bytranslator}\addspace% \printnames[bytranslator]{nameb}}}}} \newbibmacro*{cpart+editor+translator}{% \ifnameundef{namea}% {\ifnameundef{nameb}% {}% {\bibstring{cbytranslator}\addspace% \printnames[bytranslator]{nameb}}}% {\ifthenelse{\iffieldundef{nameatype}\OR% \iffieldequalstr{nameatype}{editor}}% {\ifnamesequal{namea}{nameb}% {\bibstring{cbyeditortr}\addspace% \printnames[byeditor]{namea}}% {\bibstring{cbyeditor}\addspace% Need this \space here? \printnames[byeditor]{namea}% \ifnameundef{nameb}% {}% {\newcunit% \bibstring{cbytranslator}\addspace% \printnames[bytranslator]{nameb}}}}% {\usebibmacro{cbytypestrg}{namea}{editor}% \setunit{\addspace}% \printnames[byeditor]{namea}% \ifnameundef{nameb}% {}% {\newcunit% \bibstring{cbytranslator}\addspace% \printnames[bytranslator]{nameb}}}}} \newbibmacro*{cms-in:}{% Fix for 0.9a compat. \iftoggle{cms@origpublished}% {}% Removed the cms@crspace test -- fixed a bug I had introduced {\bibstring{in}% \setunit{\addspace}}} \newbibmacro*{bibxref-in:}{% \iffieldundef{volume}% {\ifcsdef{cbx@incollvol}% {\restorefield{volume}{\cbx@incollvol}\toggletrue{cms@xrefvol}% \ifcsdef{cbx@incollpart}% {\restorefield{part}{\cbx@incollpart}}% {}% \ifboolexpr{% test {\IfBeginWith{\thefield{entrytype}}{mv}}% and not test {\IfBeginWith{\thefield{relatedtype}}{maintitl}}% }% {\printfield{volume}% \clearfield{volume}% \global\let\cbx@incollvol\undefined% Volume fix \printfield{part}% \clearfield{part}% \global\let\cbx@incollpart\undefined% Volume fix \setunit{\addspace}% \bibstring{ofseries}% \setunit{\addspace}}% {\bibstring{in}\setunit{\addspace}}}% {\iffieldundef{part}% {\ifcsdef{cbx@incollpart}% {\restorefield{part}{\cbx@incollpart}\toggletrue{cms@xrefpart}}% {}}% {}% \ifboolexpr{% test {\IfBeginWith{\thefield{entrytype}}{mv}}% and not test {\IfBeginWith{\thefield{relatedtype}}{maintitl}}% }% {\printfield[xrefpart]{part}% \clearfield{part}% \global\let\cbx@incollpart\undefined% Volume fix \setunit{\addspace}% \bibstring{ofseries}% \setunit{\addspace}}% {\bibstring{in}\setunit{\addspace}}}}% {\iffieldundef{part}% {\ifcsdef{cbx@incollpart}% {\restorefield{part}{\cbx@incollpart}\toggletrue{cms@xrefpart}}% {}}% {}% \ifthenelse{\ifentrytype{mvbook}\OR\ifentrytype{mvcollection}\OR% \ifentrytype{mvproceedings}\OR\ifentrytype{mvreference}}% {\printfield{volume}% \clearfield{volume}% \global\let\cbx@incollvol\undefined% Volume fix \printfield{part}% \clearfield{part}% \global\let\cbx@incollpart\undefined% Volume fix \setunit{\addspace}% \bibstring{ofseries}% \setunit{\addspace}}% {\bibstring{in}\setunit{\addspace}}}}% \newbibmacro*{chapincoll}{% \iffieldundef{chapter}% {}% {\printfield{chapter}\addspace% \clearfield{chapter}}}% \newbibmacro*{xrefchapincoll}{% \iffieldundef{chapter}% {\printtext{\relax}}% {\printfield{chapter}\addspace% \clearfield{chapter}}}% \newbibmacro*{chapinscore}{% \iffieldundef{chapter}% {\ifboolexpr{% not test {\iffieldundef{eventyear}}% and not test {\iffieldundef{booktitle}}% and test {\ifentrytype{audio}}% and not togl {cms@origpublished}% }% {\bibstring{in}\setunit{\addspace}}% {}}% {\printfield{chapter}\clearfield{chapter}% \iffieldundef{booktitle}% {}% {\addspace\bibstring{of}\setunit{\addspace}}}}% \newbibmacro*{chap+as+track}{% \iffieldundef{chapter}% {\ifboolexpr{% not test {\iffieldundef{booktitle}}% and not togl {cms@origpublished}% }% {\bibstring{on}\setunit{\addspace}}% {}}% {\printfield{chapter}\clearfield{chapter}% \iffieldundef{booktitle}% {}% {\addspace\bibstring{on}\setunit{\addspace}}}}% \newbibmacro*{caddendum}{% New macros for 16th ed. field exclusion \ifboolexpr{% togl {cms@addendum}% and not test {\iffieldundef{addendum}}% }% {\newcunit\printfield{addendum}}% {}}% \newbibmacro*{cnotefield}{% \iftoggle{cms@notefield}% {\printfield{note}}% {}}% \newbibmacro*{cser+num}{% \iftoggle{cms@bookseries}% {\usebibmacro{series+or+shortser}% \printfield[sernum]{number}}% {}}% \newbibmacro*{ser+num}{% \usebibmacro{series+or+shortser}% \printfield[sernum]{number}} \newbibmacro*{series+or+shortser}{% \iffieldundef{shortseries}% {\printfield{series}}% {\ifboolexpr{% ( test {\ifcitation}% and togl {cms@citeshser}% ) or ( test {\ifbibliography}% and togl {cms@bibshser}% ) }% {\printfield{shortseries}}% {\printfield{series}}}} \newbibmacro*{music+origdate}{% \iffieldequalstr{pubstate}{reprint}% 17th ed. {}% {\iffieldundef{origyear}% {}% {\usebibmacro{cmsorigdate}}% \iffieldundef{pubstate}% {}% {\iffieldbibstring{pubstate}% {\iftoggle{cms@fullnote}% {\newcunit \bibsstring{\thefield{pubstate}}}% {\newunit \biblstring{\thefield{pubstate}}}}% {\iftoggle{cms@fullnote}% {\newcunit}% {\newunit}% \printfield[prenote]{pubstate}}}}}% Date fix \newbibmacro*{music+eventdate}{% \iffieldundef{eventyear}% {}% {\printeventdate}}% Date fix \newbibmacro*{ctitle+stitle}{% New test here for related entries. \iffieldundef{title}% {}% {\printtext[title]{% \printfield[tnoformat]{title}% \setunit{\subtitlepunct}% \printfield[stnoformat]{subtitle}}}% \setunit{\ctitleaddonpunct}% \printfield{titleaddon}}% \newbibmacro*{citaltitle+stitle}{% New test, as above. \iffieldundef{title}% {}% {\printtext[title]{% \printfield[tnoformat]{title}% \setunit{\subtitlepunct}% \printfield[stnoformat]{subtitle}}}% \setunit{\ctitleaddonpunct}% \printfield{titleaddon}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \newcunit\newblock} \newbibmacro*{title+stitle}{% \printtext[title]{% \printfield[noformat]{title}% \setunit{\subtitlepunct}% \printfield[noformat]{subtitle}}% \setunit{\ptitleaddonpunct}% \printfield{titleaddon}}% \newbibmacro*{italtitle+stitle}{% \printtext[title]{% \printfield[noformat]{title}% \setunit{\subtitlepunct}% \printfield[noformat]{subtitle}}% \setunit{\ptitleaddonpunct}% \printfield{titleaddon}% \setunit{\addspace}% \usebibmacro{language+transtitle}% \newunit\newblock} \newbibmacro*{mag+news+title}{% \printtext[title]{% \printfield[noformat]{title}% \setunit{\subtitlepunct}% \printfield[noformat]{subtitle}}% \setunit{\ptitleaddonpunct}% \ifboolexpr{% test {\iffieldequalstr{relatedtype}{reviewof}}% and togl {cms@related}% }% {\usebibmacro{related:init}% \usebibmacro{related}}% {\printfield{titleaddon}}% }% \newbibmacro*{cmag+news+title}{% \printtext[title]{% \printfield[noformat]{title}% \setunit{\subtitlepunct}% \printfield[noformat]{subtitle}}% \setunit{\ctitleaddonpunct}% \ifboolexpr{% test {\iffieldequalstr{relatedtype}{reviewof}}% and togl {cms@citerel}% }% {\toggletrue{cms@relreview}% \usebibmacro{related:init}% \usebibmacro{related:noterefhelper}% \usebibmacro{related}% \togglefalse{cms@relreview}}% {\printfield{titleaddon}}% }% \newbibmacro*{clegis+news+title}{% \ifthenelse{\iffieldundef{title}\AND\iffieldundef{subtitle}\AND% \iffieldundef{titleaddon}}% {}% {\printtext[title]{% \printfield[noformat]{title}% \setunit{\subtitlepunct}% \printfield[noformat]{subtitle}}% \setunit{\ctitleaddonpunct}% \printfield{titleaddon}% }}% \newbibmacro*{language+transtitle}{% \iffieldundef{usere}% {\printlist[][-\value{listtotal}]{language}}% {\printfield{usere}}} \newbibmacro*{issuetitle}{% \iffieldundef{issuetitle}% {}% {\ifthenelse{\ifentrytype{article}\OR% \ifentrytype{review}\OR% \ifentrytype{suppperiodical}}% This test is for {\usebibmacro{cms-in:}}% periodical entries {}% \printtext[issuetitle]{% \printfield[itnoformat]{issuetitle}% \setunit{\subtitlepunct}% \printfield[sitnoformat]{issuesubtitle}}}} \newbibmacro*{btitle+bstitle}{% \iffieldundef{booktitle}% {}% {\ifthenelse{\ifentrytype{audio}\OR\ifentrytype{music}\OR% \ifentrytype{video}}% {}% {\usebibmacro{cms-in:}}% \printtext[booktitle]{% \printfield[btnoformat]{booktitle}% \setunit{\subtitlepunct}% \printfield[sbtnoformat]{booksubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{booktitleaddon}}}% \newbibmacro*{publ+loc+year}{% Revised for reprint (17th ed.) \iffieldundef{pubstate}% {}% {\iffieldequalstr{pubstate}{reprint}% {\ifentrytype{video}% {}% {\bibstring{reprint}% \newcunit}}% {\iffieldbibstring{pubstate}% {\bibstring{\thefield{pubstate}}% \newcunit}% {\printfield[prenote]{pubstate}% \newcunit}}}% \printlist{location}% \iflistundef{publisher}% {\setunit*{\addcomma\addspace}}% {\setunit*{\addcolon\addspace}}% \printlist{publisher}% \setunit*{\addcomma\addspace}% \usebibmacro{date}% } \newbibmacro*{origpubl+loc+year}{% 16th ed. \printlist{origlocation}% \iflistundef{origpublisher}% {\setunit*{\addcomma\addspace}}% {\setunit*{\addcolon\addspace}}% \printlist{origpublisher}% \setunit*{\addcomma\addspace}% \usebibmacro{cmsorigdate}% } \newbibmacro*{howpubl+loc+year}{% Revised for reprint (17th ed) \usebibmacro{cmsorigdate}% \reprintpunct% \iffieldundef{pubstate}% {}% {\iffieldbibstring{pubstate}% {\iftoggle{cms@fullnote}% {\bibsstring{\thefield{pubstate}}}% {\biblstring{\thefield{pubstate}}}}% {\printfield[prenote]{pubstate}}% \newcunit}% \printlist{location}% \iffieldundef{howpublished}% {\setunit*{\addcomma\addspace}}% {\setunit*{\addcolon\addspace}}% \printfield{howpublished}% \setunit*{\addcomma\addspace}% \usebibmacro{date}% } \newbibmacro*{inst+loc+year}{% Revised for reprint (17th ed) \usebibmacro{origpubl+loc+year}% 16th ed. \reprintpunct% \iffieldundef{pubstate}% {}% {\iffieldbibstring{pubstate}% {\iftoggle{cms@fullnote}% {\bibsstring{\thefield{pubstate}}}% {\biblstring{\thefield{pubstate}}}}% {\printfield[prenote]{pubstate}}% \newcunit}% \printlist{location}% \iflistundef{institution}% {\setunit*{\addcomma\addspace}}% {\setunit*{\addcolon\addspace}}% \printlist{institution}% \setunit*{\addcomma\addspace}% \usebibmacro{date}% }% \newbibmacro*{cpubl+loc+year}{% Revised for reprint \ifboolexpr{% test {\iflistundef{location}}% and test {\iflistundef{publisher}}% and test {\iffieldundef{year}}% and test {\iffieldundef{pubstate}}% 17th ed }% {}% {\setunit{\addspace}% \printtext[parens]{% \usebibmacro{origpubl+loc+year}% \setunit*{\addsemicolon\addspace}% \iffieldundef{pubstate}% 17th ed {}% {\iffieldequalstr{pubstate}{reprint}% {\ifentrytype{video}% {}% {\bibsstring{reprint}% \newcunit}}% {\iffieldbibstring{pubstate}% {\bibsstring{\thefield{pubstate}}% \newcunit}% {\printfield[prenote]{pubstate}% \newcunit}}}% \printlist{location}% \iflistundef{publisher}% {\setunit*{\addspace}}% {\setunit*{\addcolon\addspace}}% \printlist{publisher}% \setunit{\addcomma\addspace}% \usebibmacro{date}}}}% \newbibmacro*{crefpubl+loc+year}{% 17th ed. \ifboolexpr{% test {\iflistundef{location}}% and test {\iflistundef{publisher}}% and test {\iffieldundef{year}}% and test {\iffieldundef{pubstate}}% and test {\iffieldundef{note}}% }% {}% {\setunit{\addspace}% \printtext[parens]{% \usebibmacro{origpubl+loc+year}% \setunit*{\addsemicolon\addspace}% \iffieldundef{pubstate}% {}% {\iffieldequalstr{pubstate}{reprint}% {\ifentrytype{video}% {}% {\bibsstring{reprint}% \newcunit}}% {\iffieldbibstring{pubstate}% {\bibsstring{\thefield{pubstate}}% \newcunit}% {\printfield[prenote]{pubstate}% \newcunit}}}% \usebibmacro{cnotefield}% \setunit*{\addcomma\addspace}% \printlist{location}% \iflistundef{publisher}% {\setunit*{\addspace}}% {\setunit*{\addcolon\addspace}}% \printlist{publisher}% \setunit{\addcomma\addspace}% \usebibmacro{date}}}}% \newbibmacro*{cpubletter+loc+year}{% \ifboolexpr{% test {\iflistundef{location}}% and test {\iflistundef{publisher}}% and test {\iffieldundef{year}}% }% {}% {\setunit{\addspace}% \printtext[parens]{% \printlist{location}% \iflistundef{publisher}% {\setunit*{\addspace}}% {\setunit*{\addcolon\addspace}}% \printlist{publisher}% \setunit{\addcomma\addspace}% \usebibmacro{date}}}}% Changed for 0.9 \newbibmacro*{originally+published+as}{% Punctuation fix now in \iffieldundef{userf}% \origfullcite for 0.8e. {\iffieldundef{reprinttitle}% {}% {\usebibmacro{begrelated}% \bibstring{reprintfrom}% ? \origpublcite{\thefield{reprinttitle}}% \usebibmacro{endrelated}% \newunit}}% {\usebibmacro{begrelated}% \iflistundef{origlanguage}% {\bibstring{origpub}% \origfullcite{\thefield{userf}}% \usebibmacro{endrelated}% \newunit}% {\iftoggle{cms@postposit}% {\bibstring{origedition}% \setunit{\addspace}% \printlist[edlang]{origlanguage}% \addcolon% \origfullcite{\thefield{userf}}% \usebibmacro{endrelated}% \newunit}% {\printlist[edlang]{origlanguage}% \setunit{\addspace}% \bibstring{origedition}% \origfullcite{\thefield{userf}}% \usebibmacro{endrelated}% \newunit}}}} \newbibmacro*{org+publ+loc+year}{% What was wrong with \ifthenelse here? \usebibmacro{origpubl+loc+year}%{cmsorigdate}% 16th ed. \reprintpunct% \iffieldundef{pubstate}% {}% {\iffieldbibstring{pubstate}% {\iftoggle{cms@fullnote}% {\bibsstring{\thefield{pubstate}}}% {\biblstring{\thefield{pubstate}}}}% {\printfield[prenote]{pubstate}}% \newcunit}% \printlist{location}% \iflistundef{organization}% {\iflistundef{publisher}% {\setunit*{\addcomma\addspace}}% {\setunit*{\addcolon\addspace}}}% {\setunit*{\addcolon\addspace}}% \printlist{organization}% \setunit*{\addcomma\addspace}% \printlist{publisher}% \setunit*{\addcomma\addspace}% \usebibmacro{date}} \newbibmacro*{cjournal+issue+year+pages}{% \ifentrytype{periodical}% {\usebibmacro{cperiodical+ser+vol+num}}% {\usebibmacro{cjournal+ser+vol+num}}% \ifboolexpr{% 16th ed. test {\iffieldundef{issue}}% and test {\iffieldundef{year}}% and not togl {cms@switchdates}% }% {\iffieldundef{number}% {\ifthenelse{\iffieldundef{pagination}\AND% \iffieldundef{bookpagination}\AND\iffieldundef{eid}}% {\setunit{\postvolpunct}}% {\setunit{\addcolon\addspace}}}% {\addcomma\addspace}}% {\ifthenelse{\iffieldundef{volume}\AND\iffieldundef{number}}% 16th ed. {\newcunit% \iffieldundef{issue}% {\usebibmacro{number+or+month}}% {\printfield{issue}% \setunit{\addspace}% \usebibmacro{cmsyear}}% \addcomma\addspace}% {\setunit{\addspace}% \printtext[parens]{% parens is the default here \iffieldundef{issue}% {\usebibmacro{number+or+month}}% {\printfield{issue}% \setunit{\addspace}% \usebibmacro{cmsyear}}}}}} \newbibmacro*{letter+date}{% New for 0.9 \iflistundef{origlocation}% {}% {\printlist{origlocation}% \newcunit\newblock}% \iftoggle{cms@switchdates}% {\ifthenelse{\iffieldundef{year}\AND\iffieldundef{month}\AND% \iffieldundef{season}}% {}% {\cms@datelong{}}}% {\ifthenelse{\iffieldundef{origyear}\AND\iffieldundef{origmonth}\AND% \iffieldundef{origseason}}% {}% {\cms@datelong{orig}}}} \newbibmacro*{unpubl+letter+date}{% For Misc entries \iffieldundef{venue}% {}% {\printfield{venue}% \newcunit\newblock}% \iftoggle{cms@switchdates}% {\ifthenelse{\iffieldundef{year}\AND\iffieldundef{month}\AND% \iffieldundef{season}}% {}% {\cms@datelong{}}}% {\ifthenelse{\iffieldundef{origyear}\AND\iffieldundef{origmonth}\AND% \iffieldundef{origseason}}% {\printdate}% For interviews and other dated non-letters. {\cms@datelong{orig}}}} \newbibmacro*{music+pubstate}{% \iffieldequalstr{pubstate}{reprint}% {\iftoggle{cms@switchdates}% {\iffieldundef{year}% {}% {\printtext{% 16th ed. \usebibmacro{choosepubstring}% \printdate}}}% {\iffieldundef{origyear}% {}% {\printtext{% 16th ed. \usebibmacro{choosepubstring}% \printorigdate}}}}% {}}% \newbibmacro*{choosepubstring}{% \ifthenelse{\ifentrytype{video}\OR% \ifentrytype{music}}% {\bibstring{origreleaseyear}}% {\bibstring{origpubyearalt}}}% \renewbibmacro*{date}{% New for 0.9 \iftoggle{cms@switchdates}% {\printorigdate}% {\printdate}} \newbibmacro*{time+stamp}{% 17th ed. \iftoggle{cms@switchdates}% {\iffieldundef{orighour}% {}% {\newcunit\printorigtime}}% {\iffieldundef{hour}% {}% {\newcunit\printtime}}} \newbibmacro{cite:xref+date}{% \ifboolexpr{% togl {cms@omitxrefdate}% or togl {cms@bookcitexref}% or test {\iffieldundef{crossref}}% or test {\iffieldundef{maintitle}}% or (( test {\iffieldundef{year}}% or togl {cms@switchdates}% ) and (test {\iffieldundef{origyear}}% or not togl {cms@switchdates}% )) or not test {\ifentryseen{\thefield{crossref}}}% }% {\ifboolexpr{% togl {cms@omitxrefdate}% or togl {cms@bookcitexref}% or test {\iffieldundef{xref}}% or test {\iffieldundef{maintitle}}% or (( test {\iffieldundef{year}}% or togl {cms@switchdates}% ) and (test {\iffieldundef{origyear}}% or not togl {cms@switchdates}% )) or not test {\ifentryseen{\thefield{xref}}}% }% {}% {\printtext[parens]{\usebibmacro{date}}}}% {\printtext[parens]{\usebibmacro{date}}}} \newbibmacro*{cmsorigdate}{% New for 0.9 \iftoggle{cms@switchdates}% {\printdate}% {\printorigdate}} \newbibmacro*{cmsyear}{% \iftoggle{cms@switchdates}% {\printorigdateextra}% \printfield{origyear} {\printdateextra}}% \printfield{year} \newbibmacro*{number+or+month}{% \iffieldundef{number}% {\usebibmacro{date}}% {\iftoggle{cms@numbermonth}% {\usebibmacro{date}}% {\usebibmacro{cmsyear}}}} \newcommand*{\cms@datelong}[1]{% Modified for 17th ed. \begingroup \protected\def\mkbibdatelong##1##2##3{% \iffieldundef{##3}% {}% {\iftoggle{cms@ukord}% {\mkbibordinal{\thefield{##3}}}% {\stripzeros{\thefield{##3}}}% \iffieldundef{##2}{}{\nobreakspace}}% \iffieldundef{##2}% {}% {\mkbibmonth{\thefield{##2}}% \iffieldundef{##1}{}{\space}}% \iffieldbibstring{##1}% {\bibstring{\thefield{##1}}}% {\cmsdateeraprintpre{##1}\stripzeros{\thefield{##1}}}}% \cms@mkbibrangetrunc{long}{#1}% \endgroup}% \newrobustcmd*{\letterdatelong}{% For users: 17th ed. \ifboolexpr{% test {\ifdefstring{\blx@languagename}{american}}% or test {\ifdefstring{\blx@languagename}{english}}% i.e., no babel }% {\iftoggle{cms@switchdates}% {\cms@datelong{}}% {\cms@datelong{orig}}}% {\iftoggle{cms@switchdates}% {\printdate}% {\printorigdate}}}% \newbibmacro*{cjournal+ser+vol+num}{% \usebibmacro{journal+sub}% \setunit*{\addspace}% \printlist[periodplace]{location}% \setunit*{\addspace}% \iffieldundef{series}% {}% {\newcunit% \printfield[jourser]{series}% \newcunit}%\setunit*{\addspace}? \printfield[jourvol]{volume}% \setunit{\addcomma\addspace}% need * here? \printfield[journum]{number}}% Moved eid for 17th ed. \newbibmacro*{cperiodical+ser+vol+num}{% For periodical entries, \ifboolexpr{% article subtype not test {\iffieldundef{shorttitle}}% and (( test {\ifcitation}% and togl {cms@citejtabb}% ) or ( test {\ifbibliography}% and togl {cms@bibjtabb}% )) }% {\clearlist{location}\printtext[shorttitle]{% \printfield[tnoformat]{shorttitle}}}% {\printtext[title]{% \printfield[tnoformat]{title}% \setunit{\subtitlepunct}% \printfield[stnoformat]{subtitle}}}% \setunit*{\addspace}% \printlist[periodplace]{location}% \setunit*{\addspace}% \iffieldundef{series}% {}% {\newcunit% \printfield[jourser]{series}% \newcunit}%\setunit*{\addspace}? \printfield[jourvol]{volume}% \setunit{\addcomma\addspace}% need * here? \printfield[journum]{number}}% Move eid field for 17th ed. \newbibmacro*{journal+sub}{% \iffieldundef{journaltitle}% {}% {\ifboolexpr{% not test {\iffieldundef{shortjournal}}% and (( test {\ifcitation}% and togl {cms@citejtabb}% ) or ( test {\ifbibliography}% and togl {cms@bibjtabb}% )) }% {\clearlist{location}\printtext[shortjournal]{% \printfield[jtsnoformat]{shortjournal}}}% {\printtext[journaltitle]{% \printfield[jtnoformat]{journaltitle}% \setunit{\subtitlepunct}% \printfield[sjtnoformat]{journalsubtitle}}}}}% \newbibmacro*{cite+doi+url}{% 16th ed. \iftoggle{cms@url@innotes}% {\ifboolexpr{% Fix printing of urldate when url=false togl {cms@url}% and not test {\iffieldundef{urlyear}}% }% {\printurldate% \ifboolexpr{% 17th ed. togl {cms@urltime}% and not test {\iffieldundef{urlhour}}% }% {\newcunit\printurltime}% {}}% Date fix {}% \newcunit\newblock \iftoggle{cms@doionly}% {\iffieldundef{doi}% {}% {\printfield{doi}% \clearfield{url}}}% {\ifboolexpr{% togl {cms@doi}% and not test {\iffieldundef{doi}}% }% {\printfield{doi}}% {}}% \newcunit\newblock \ifboolexpr{% togl {cms@eprint}% and not test {\iffieldundef{eprint}}% }% {\usebibmacro{eprint}}% {}% \newcunit\newblock \ifboolexpr{% togl {cms@url}% and not test {\iffieldundef{url}}% }% {\printfield{url}}% {}}% {}}% \newbibmacro*{chap+pag}{% \printfield{chapter}% \setunit*{\addcomma\addspace}% \printfield{pages}} \newbibmacro*{mag+news+date}{% 17th ed. \iftoggle{cms@fullnote}% {\usebibmacro{cmag+date+issue}}% {\ifnameundef{author}% {\iffieldundef{maintitle}% {\newunit\newblock}% Punctuation differs after title and jtitle {\printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}% \newcunit\newblock}% \printfield{usera}% \setunit*{\addcomma\addspace}\newblock% \usebibmacro{date+issue}}% {\usebibmacro{mag+date+issue}}}} \newbibmacro*{date+issue}{% \iffieldundef{issue}% {\iffieldundef{number}% {\usebibmacro{date}% \usebibmacro{time+stamp}}% 17th ed. {\iftoggle{cms@numbermonth}% For exclusion of month {\usebibmacro{date}}% {\usebibmacro{cmsyear}}% \setunit{\addcomma\addspace}% \printfield[journum]{number}}}% {\printfield{issue}% \setunit{\addspace}% \usebibmacro{cmsyear}}} \newbibmacro*{cmag+date+issue}{% \usebibmacro{journal+sub}% \setunit*{\addspace}% \printlist[periodplace]{location}% \newcunit\newblock \iffieldundef{maintitle}% {}% {\printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}} \newcunit\newblock \printfield{usera}% For network ID and possible section of newspaper. \newcunit\newblock \usebibmacro{date+issue}} \newbibmacro*{mag+date+issue}{% \usebibmacro{journal+sub}% \setunit*{\addspace}% \printlist[periodplace]{location}% \newunit\newblock \iffieldundef{maintitle}% {}% {\printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}} \newcunit\newblock \printfield{usera}% For network ID and possible section of newspaper. \newcunit\newblock \usebibmacro{date+issue}} \newbibmacro*{periodical+date+issue}{% For periodical type & \ifboolexpr{% magazine subtype not test {\iffieldundef{shorttitle}}% and (( test {\ifcitation}% and togl {cms@citejtabb}% ) or ( test {\ifbibliography}% and togl {cms@bibjtabb}% )) }% {\clearlist{location}\printtext[shorttitle]{% \printfield[tnoformat]{shorttitle}}}% {\printtext[title]{% \printfield[tnoformat]{title}% \setunit{\subtitlepunct}% \printfield[stnoformat]{subtitle}}}% \setunit*{\addspace}% \printlist[periodplace]{location}% \iftoggle{cms@fullnote}{\newcunit}{\newunit}% \iffieldundef{maintitle}% {}% {\printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}} \newcunit\newblock \printfield{usera}% For network ID and possible section of newspaper. \newcunit\newblock \usebibmacro{date+issue}} \newbibmacro*{cmtitle+mstitle+vol+part+title+stitle}{% \iffieldundef{maintitle}% {}% {\ifthenelse{\iffieldundef{volume}\AND\iffieldundef{part}}% {\iffieldundef{title}% {\usebibmacro{cms-in:}}% {\bibstring{in}\setunit{\addspace}}% \printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}}% {\toggletrue{cms@usedvol}% \printfield{volume}% \printfield{part}% \setunit{\addspace}% \bibstring{ofseries}% \setunit{\addspace}% \printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}}}} \newbibmacro*{cmtitle+mstitle+vol+part+btitle+bstitle}{% \usebibmacro{btitle+bstitle}% \newcunit% MT Fix \iffieldundef{maintitle}% {}% {\ifthenelse{\(\iffieldundef{volume}\AND\iffieldundef{part}\)\OR% \(\iffieldundef{booktitle}\AND\NOT\ifentrytype{bookinbook}\)}% {\iffieldundef{booktitle}% Fix for origpublin ??? {\usebibmacro{cms-in:}}% {\bibstring{in}\setunit{\addspace}}% \printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}% \toggletrue{cms@vol}}% InIn fix {\toggletrue{cms@usedvol}% \printfield{volume}% \printfield{part}% \setunit{\addspace}% \bibstring{ofseries}% \setunit{\addspace}% \printtext[maintitle]{% \printfield[mtnoformat]{maintitle}% \setunit{\subtitlepunct}% \printfield[smtnoformat]{mainsubtitle}}% \setunit{\ctitleaddonpunct}% \printfield{maintitleaddon}}}} \newbibmacro*{backref+check}{% \ifbibliography% {\backtrackerfalse}% {}}% \newbibmacro*{cite:postnote}{% \iftoggle{cms@loccit}% {}% {\usebibmacro{postnote}}} \newbibmacro*{semel:postnote}{% Fix to print postnote only once \printfield{postnote}% Old form broke \ifloccit \global\let\cms@pnsaved\abx@field@postnote% \global\let\abx@field@postnote\undefined% \AtNextCitekey{\ifciteibid{}{\global\let\cms@pnsaved\undefined}}}% \renewbibmacro*{postnote}{% \iftoggle{cms@fullnote}% {\global\togglefalse{cms@shortnote}% \global\togglefalse{cms@fullnote}}% {\IfBeginWith{\thefield{entrytype}}{mv}% {\usebibmacro{crossref:volume+postnote}}% {\iftoggle{cms@printshhand}% {\iffieldundef{postnote}% {\iffieldundef{shorthand}% {\global\togglefalse{cms@printshhand}% \global\togglefalse{cms@shortnote}% \global\togglefalse{cms@fullnote}}% {\setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \global\togglefalse{cms@printshhand}% \global\togglefalse{cms@shortnote}% \global\togglefalse{cms@fullnote}}}% {\iffieldundef{shorthand}% {\postnotewrapper%delim% \usebibmacro{semel:postnote}% \global\togglefalse{cms@printshhand}% \global\togglefalse{cms@shortnote}% \global\togglefalse{cms@fullnote}}% {\postnotewrapper%delim% \usebibmacro{semel:postnote}% \setunit{\shorthandpunct}% \usebibmacro{cms:shorthandintro}% \global\togglefalse{cms@printshhand}% \global\togglefalse{cms@shortnote}% \global\togglefalse{cms@fullnote}}}}% {\iffieldundef{postnote}% {\usebibmacro{print+noteref}% \global\togglefalse{cms@shortnote}% \global\togglefalse{cms@fullnote}}% {\postnotewrapper%delim% \usebibmacro{semel:postnote}% \usebibmacro{print+noteref}% \global\togglefalse{cms@shortnote}% \global\togglefalse{cms@fullnote}}}}}}% \newbibmacro*{fullpostnote}{% \iffieldundef{postnote}% {\iffieldundef{chapter}% {\iffieldundef{pages}% {}% {\postnotedelim% \printfield{pages}}}% {\postnotedelim% \printfield{chapter}}}% {\postnotewrapper%delim% Don't need \ifbibliography test w/ following \usebibmacro{semel:postnote}}} \newbibmacro*{eid+fullpostnote}{% \iffieldundef{postnote}% {\iffieldundef{chapter}% {\iffieldundef{pages}% {\iffieldundef{eid}% {}% {\postnotedelim% \printfield{eid}% \clearfield{eid}}}% {\postnotedelim% \printfield{pages}}}% {\postnotedelim% \printfield{chapter}}}% {\postnotewrapper% \usebibmacro{semel:postnote}}} \newbibmacro*{juridpostnote}{% \iftoggle{cms@fullnote}% {\iffieldundef{issue}% {\iffieldundef{shortjournal}% {\setunit{\addcomma\addspace}}% {\ifthenelse{\iffieldundef{part}\AND\iffieldundef{chapter}}% {\setunit{\addspace}}% {\ifpunctmark{*}{\setunit{\addspace}}{\newcunit}}}% \printfield{pages}% \iffieldundef{postnote}% {}% {\ifthenelse{\ifentrytype{legislation}\OR\ifentrytype{legal}}% {\newcunit}% {\setunit*{\addcomma\addspace}}% \usebibmacro{semel:postnote}}}% {\iffieldundef{postnote}% {\iffieldundef{pages}% {}% {\newcunit% \printfield{pages}}}% {\newcunit% \usebibmacro{semel:postnote}}}}% {\iffieldundef{issue}% {\iffieldundef{postnote}% {\iffieldundef{pages}% {}% {\iffieldundef{shortjournal}% {\setunit{\addcomma\addspace}}% {\ifthenelse{\iffieldundef{part}\AND\iffieldundef{chapter}}% {\setunit{\addspace}}% {\ifpunctmark{*}{\setunit{\addspace}}{\newcunit}}}% \printfield{pages}}}% {\iffieldundef{shortjournal}% {\setunit{\addcomma\addspace}}% {\ifthenelse{\iffieldundef{part}\AND\iffieldundef{chapter}}% {\setunit{\addspace}}% {\ifpunctmark{*}{\setunit{\addspace}}{\newcunit}}}% \usebibmacro{semel:postnote}}}% See below for alternate test here {\iffieldundef{postnote}% {\iffieldundef{pages}% {}% {\newcunit% \printfield{pages}}}% {\newcunit% \usebibmacro{semel:postnote}}}% \global\togglefalse{cms@fullnote}% \global\togglefalse{cms@shortnote}}}% \newbibmacro*{volfullpostnote}{% \iftoggle{cms@postvol}% {\ifboolexpr{( test {\iffieldundef{volume}}% and test {\iffieldundef{part}}% ) or togl {cms@usedvol}% }% {\usebibmacro{fullpostnote}}% {\iffieldundef{postnote}% {\iffieldundef{chapter}% {\iffieldundef{pages}% {\newcunit\printfield{volume}% \printfield{part}}% {\iffieldundef{part}% {\ifthenelse{\iffieldnums{pages}\AND% \iffieldundef{bookpagination}\AND\iffieldnums{volume}}% {\newcunit\printfield[default]{volume}% \postvolpunct% \printfield{pages}}% {\newcunit\printfield{volume}% \addcomma\addspace% \printfield{pages}}}% {\newcunit\printfield{volume}% \printfield{part}% \addcomma\addspace% \printfield{pages}}}}% {\newcunit\printfield{volume}% \printfield{part}% \newcunit \printfield{chapter}}}% {\iffieldundef{part}% {\ifthenelse{\iffieldnums{postnote}\AND% \iffieldundef{pagination}\AND\iffieldnums{volume}}% {\newcunit\printfield[default]{volume}% \postvolpunct% \usebibmacro{semel:postnote}}% {\newcunit\printfield{volume}% \addcomma\addspace% \usebibmacro{semel:postnote}}}% {\newcunit\printfield{volume}% \printfield{part}% \addcomma\addspace% \usebibmacro{semel:postnote}}}}}% {\usebibmacro{fullpostnote}}% \global\togglefalse{cms@usedvol}}% \newbibmacro*{volume+or+volumes}{% Volume fix (modified) \ifboolexpr{ ( test {\iffieldundef{maintitle}}% or togl {cms@vol}% ) and not togl {cms@postvol}% and not togl {cms@usedvol}% }% {\global\togglefalse{cms@vol}% \ifthenelse{\iffieldundef{volume}\AND\iffieldundef{part}}% {\printfield{volumes}}% {\printfield{volume}% \printfield{part}}}% {\ifboolexpr{% togl {cms@hidevolumes}% and ( not test {\iffieldundef{volume}}% or not test {\iffieldundef{part}}% or togl {cms@usedvol}% ) }% {\global\togglefalse{cms@vol}}% {\global\togglefalse{cms@vol}% \printfield{volumes}}}} \newbibmacro*{crossref:volume+postnote}{% \IfBeginWith{\thefield{entrytype}}{mv}% {\usebibmacro{extract+mt+vol}}% {}% \ifcsdef{cbx@incollpgn}% {\restorefield{pagination}{\cbx@incollpgn}}% {}% \ifcsdef{cbx@incollbkpgn}% {\restorefield{bookpagination}{\cbx@incollbkpgn}}% {}% \iffieldundef{volume}% Volume fix (unfinished) {\ifcsdef{cbx@incollvol}% {\restorefield{volume}{\cbx@incollvol}% \ifcsdef{cbx@incollpart}{\restorefield{part}{\cbx@incollpart}}{}% \iffieldundef{postnote}% {\ifcsdef{cbx@incollpages}% {\restorefield{pages}{\cbx@incollpages}% \usebibmacro{pages+cref+print}}% {\iffieldundef{pages}% {\newcunit\printfield{volume}\printfield{part}}% {\usebibmacro{pages+cref+print}}}}% {\usebibmacro{postnote+cref+print}}}% {\iffieldundef{part}% {\ifcsdef{cbx@incollpart}% {\restorefield{part}{\cbx@incollpart}% \iffieldundef{postnote}% {\ifcsdef{cbx@incollpages}% {\restorefield{pages}{\cbx@incollpages}% \usebibmacro{pages+cref+print}}% {\iffieldundef{pages}% {\newcunit\printfield{volume}\printfield{part}}% {\usebibmacro{pages+cref+print}}}}% {\usebibmacro{postnote+cref+print}}}% {\ifcsdef{cbx@incollpages}% {\restorefield{pages}{\cbx@incollpages}% \usebibmacro{fullpostnote}}% {\usebibmacro{fullpostnote}}}}% {\iffieldundef{postnote}% {\ifcsdef{cbx@incollpages}% {\restorefield{pages}{\cbx@incollpages}% \usebibmacro{pages+cref+print}}% {\iffieldundef{pages}% {\newcunit\printfield{volume}\printfield{part}}% {\usebibmacro{pages+cref+print}}}}% {\usebibmacro{postnote+cref+print}}}}}% {\iffieldundef{part}% {\ifcsdef{cbx@incollpart}% {\restorefield{part}{\cbx@incollpart}}% {}}% {}% \iffieldundef{maintitle}% More elaborate test ??? {\iffieldundef{postnote}% {\ifcsdef{cbx@incollpages}% {\restorefield{pages}{\cbx@incollpages}% \usebibmacro{pages+cref+print}}% {\iffieldundef{pages}% {\newcunit\printfield{volume}\printfield{part}}% {\usebibmacro{pages+cref+print}}}}% {\usebibmacro{postnote+cref+print}}}% {\ifboolexpr{% test {\ifcsdef{cbx@incollvol}}% and ( not test {\iffieldequalcs{volume}{cbx@incollvol}}% or togl {cms@xrefvol}% Necessary ??? ) }% {\restorefield{volume}{\cbx@incollvol}% \iffieldundef{part}% {\ifcsdef{cbx@incollpart}{\restorefield{part}{\cbx@incollpart}}{}}% {\ifboolexpr{% test {\ifcsdef{cbx@incollpart}}% and ( not test {\iffieldequalcs{part}{cbx@incollpart}}% or togl {cms@xrefpart}% ) }% {\clearfield{part}\restorefield{part}{\cbx@incollpart}}% {\clearfield{part}}}% \iffieldundef{postnote}% {\ifcsdef{cbx@incollpages}% {\restorefield{pages}{\cbx@incollpages}% \usebibmacro{pages+cref+print}}% {\iffieldundef{pages}% {\newcunit\printfield{volume}\printfield{part}}% {\usebibmacro{pages+cref+print}}}}% {\usebibmacro{postnote+cref+print}}}% {\ifboolexpr{% test {\ifcsdef{cbx@incollpart}}% and ( not test {\iffieldequalcs{part}{cbx@incollpart}}% or togl {cms@xrefpart}% ) }% {\iffieldundef{postnote}% {\ifcsdef{cbx@incollpages}% {\restorefield{pages}{\cbx@incollpages}% \printfield{part}\newcunit\printfield{pages}}% {\iffieldundef{pages}% {\printfield{part}}% {\printfield{part}\newcunit\printfield{pages}}}}% {\printfield{part}\newcunit\usebibmacro{semel:postnote}}}% {\ifcsdef{cbx@incollpages}% {\restorefield{pages}{\cbx@incollpages}% \usebibmacro{fullpostnote}}% {\usebibmacro{fullpostnote}}}}}}% \usebibmacro{print+noteref}}% \newbibmacro*{pages+cref+print}{% Reusable chunk for above \iffieldundef{part}% {\ifthenelse{\iffieldnums{pages}\AND% \iffieldundef{bookpagination}\AND\iffieldnums{volume}}% {\newcunit\printfield[default]{volume}% \postvolpunct% \printfield{pages}}% {\newcunit\printfield{volume}% \addcomma\addspace% \printfield{pages}}}% {\newcunit\printfield{volume}% \printfield{part}% \addcomma\addspace% \printfield{pages}}} \newbibmacro*{postnote+cref+print}{% Reusable chunk for above \iffieldundef{part}% {\ifthenelse{\iffieldnums{postnote}\AND% \iffieldundef{pagination}\AND\iffieldnums{volume}}% {\newcunit\printfield[default]{volume}% \postvolpunct% \usebibmacro{semel:postnote}}% {\newcunit\printfield{volume}% \addcomma\addspace% \usebibmacro{semel:postnote}}}% {\newcunit\printfield{volume}% \printfield{part}% \addcomma\addspace% \usebibmacro{semel:postnote}}} \newbibmacro*{inreffullpostnote}{% \global\togglefalse{cms@usedvol}% \iffieldundef{postnote}% {\iffieldundef{chapter}% {\iffieldundef{pages}% {\newcunit%\addcomma\addspace% Change to axe spurious comma \printlist[][-\value{listtotal}]{lista}}% {\postnotedelim% \printfield{pages}}}% {\postnotedelim% \printfield{chapter}}}% {\postnotewrapper%delim% \usebibmacro{semel:postnote}}} \newbibmacro*{xrefprenote}{% \ifboolexpr{% Kludgy fix for spurious idem test {\ifdefvoid{\blx@idemtracker}}% or test {\ifbibliography}% }% {}{\blx@idemtracker}% \iffieldundef{volume}{}{\savefield{volume}{\cbx@incollvol}}% \iffieldundef{pages}{}{\savefield{pages}{\cbx@incollpages}}% \iffieldundef{part}{}{\savefield{part}{\cbx@incollpart}}% \iffieldundef{pagination}{}{\savefield{pagination}{\cbx@incollpgn}}% \iffieldundef{bookpagination}{}{\savefield{bookpagination}% {\cbx@incollbkpgn}}% The next line saves the child's backrefs \iflistundef{pageref}{}{\savelist{pageref}{\cbx@incollpgref}}}% \newbibmacro*{xrefpostnote}{% \iftoggle{cms@xrefurl}% {\ifbibliography% {\usebibmacro{bib+doi+url}}% {\usebibmacro{cite+doi+url}}}% {}% \ifcsdef{cbx@incollpgref}% Here we print and clear the child's {\restorelist{pageref}{\cbx@incollpgref}% backrefs \newunit% \usebibmacro{pageref}% \global\let\cbx@incollpgref\undefined}% {}% \togglefalse{cms@xrefvol}% \togglefalse{cms@xrefpart}% \global\togglefalse{cms@usedvol}% \global\let\cbx@incollvol\undefined% Volume fix \global\let\cbx@incollpages\undefined% \global\let\cbx@incollpart\undefined% \global\let\cbx@incollpgn\undefined% \global\let\cbx@incollbkpgn\undefined}% \newbibmacro*{hlpunct}{% \iftoggle{cms@headlessnote}% {}% {\newcunit\newblock}} \newbibmacro*{journalprenote}{% \iffieldundef{prenote}% {\bibsentence}% {\usebibmacro{prenote}}} \newbibmacro*{choose+surname}{% \ifboolexpr{% test {\ifciteseen}% and not togl {cms@noneshort}% }% {}% {\printnames{labelname}\savefield{fullhash}{\bbx@lasthash}% \ifthenelse{\iffieldequalstr{labelnamesource}{shortauthor}\OR% \iffieldequalstr{labelnamesource}{author}}% {\clearname{author}}% {\iffieldequalstr{labelnamesource}{shorteditor}% {\ifnameundef{namea}% {\newcunit\usebibmacro{editstrg}}% {\newcunit\usebibmacro{parteditstrg}}}%% {\iffieldequalstr{labelnamesource}{editor}% {\newcunit\usebibmacro{editstrg}}% {\iffieldequalstr{labelnamesource}{translator}% {\newcunit\usebibmacro{transstrg}}% {\iffieldequalstr{labelnamesource}{namea}% {\newcunit\usebibmacro{parteditstrg}}% {\iffieldequalstr{labelnamesource}{nameb}% {\newcunit\usebibmacro{parttransstrg}}% {\iffieldequalstr{labelnamesource}{namec}% {\newcunit\usebibmacro{compilestrg}}% {}}}}}}}}}% \newbibmacro*{clear+labelname}{% \iffieldequalstr{labelnamesource}{shortauthor}% {\clearname{author}\clearname{shortauthor}}% {\iffieldequalstr{labelnamesource}{shorteditor}% {\ifnameundef{namea}% {\clearname{editor}\clearname{shorteditor}}% {\clearname{namea}\clearname{shorteditor}}}% {\clearname{\thefield{labelnamesource}}}}} \@ifpackagelater{biblatex}{2012/11/20}% for biblatex 2.4 {\DeclareLabelname{\field{shortauthor} \field{author}% \field{shorteditor} \field{namea} \field{editor}% \field{nameb} \field{translator} \field{namec}}}% {\DeclareLabelname{shortauthor,author,shorteditor,namea,% editor,nameb,translator,namec}} \DeclareLabeltitle[legislation]{% \field{shorttitle}% \field{titleaddon}% \field{title}}% \DeclareDataInheritance{collection}{suppcollection}{% \inherit{title}{title} \inherit{subtitle}{subtitle} \inherit{titleaddon}{titleaddon}} \DeclareDataInheritance{mvbook}{incollection}{% \inherit{title}{maintitle} \inherit{subtitle}{mainsubtitle} \inherit{titleaddon}{maintitleaddon} \noinherit{shorttitle} \noinherit{sorttitle} \noinherit{indextitle} \noinherit{indexsorttitle} } \DeclareDataInheritance{book,collection}{letter}{% \inherit{title}{booktitle} \inherit{subtitle}{booksubtitle} \inherit{titleaddon}{booktitleaddon} \noinherit{shorttitle} \noinherit{sorttitle} \noinherit{indextitle} \noinherit{indexsorttitle} } \DeclareDataInheritance{book}{incollection}{% \inherit{title}{booktitle} \inherit{subtitle}{booksubtitle} \inherit{titleaddon}{booktitleaddon} \noinherit{shorttitle} \noinherit{sorttitle} \noinherit{indextitle} \noinherit{indexsorttitle} } \DeclareDataInheritance{mvbook,mvcollection}{letter}{% \inherit{title}{maintitle} \inherit{subtitle}{mainsubtitle} \inherit{titleaddon}{maintitleaddon} \noinherit{shorttitle} \noinherit{sorttitle} \noinherit{indextitle} \noinherit{indexsorttitle} } \DeclareDataInheritance{mvcollection}{book}{% MT revision \inherit{title}{maintitle} \inherit{subtitle}{mainsubtitle} \inherit{titleaddon}{maintitleaddon} \noinherit{shorttitle} \noinherit{sorttitle} \noinherit{indextitle} \noinherit{indexsorttitle} } \AtEndPreamble{% \iftoggle{cms@blogurl}% 17th ed. blogs w/ comments {\DeclareDataInheritance{article}{review,suppperiodical}{% \inherit{url}{url}% }}{}% \@ifpackageloaded{endnotes}% {\patchcmd\theendnotes {\enoteformat} {\toggletrue{cms@endnote}\enoteformat} {} {\blx@err@patch{'endnotes' package}}}% {}}% \DeclareDataInheritance{*}{*}{% \noinherit{namea} \noinherit{nameb} \noinherit{nameatype} \noinherit{sortyear} \noinherit{sortname} \noinherit{sorttitle} \noinherit{urlyear} \noinherit{urlmonth} \noinherit{urlday} \noinherit{urlseason} \noinherit{urlhour} \noinherit{urlminute} \noinherit{doi} \noinherit{eprint} \noinherit{eprinttype} \noinherit{url}} \DeclareDataInheritance{mvbook,mvcollection,mvproceedings,mvreference}% {*}{% ??? \noinherit{year} \noinherit{month} \noinherit{day} \noinherit{season} \noinherit{endyear} \noinherit{endmonth} \noinherit{endday} \noinherit{endseason} \noinherit{origyear} \noinherit{origmonth} \noinherit{origday} \noinherit{origseason} \noinherit{origendyear} \noinherit{origendmonth} \noinherit{origendday} \noinherit{origendseason}} \DeclareSortingTemplate{cms}{% Updated for biblatex > 3.7 \sort{ \field{presort} } \sort[final]{ \field{sortkey} } \sort{ \field{sortname} \field{author} \field{namea} \field{editor} \field{nameb} \field{translator} \field{namec} \field{sorttitle} \field{journaltitle} \field{organization} \field{title} } \sort{ \field{sorttitle} \field{title} } \sort{ \field{sortyear} \field{year} } \sort{ \field[padside=left,padwidth=4,padchar=0]{volume} \literal{0000} } } \DeclareSortExclusion{misc,online}{organization} \DeclareSortExclusion{inreference,mvreference,reference}{% author,editor,namea,nameb,namec,translator} \DeclareSortingTemplate{shortjournal}{% \sort{ \field{shortjournal} } } \DeclareSortingTemplate{shortseries}{% \sort{ \field{shortseries} } } \newbibmacro*{compilestrg}{% \ifthenelse{\value{namec}>1\OR\ifandothers{namec}}% {\bibstring{compilers}}% {\bibstring{compiler}}% \clearname{namec}}% \newbibmacro*{transstrg}{% \ifthenelse{\value{translator}>1\OR\ifandothers{translator}}% {\ifnamesequal{translator}{namec}% {\bibstring{transcompilers}% \clearname{namec}}% {\bibstring{translators}}}% {\ifnamesequal{translator}{namec}% {\bibstring{transcompiler}% \clearname{namec}}% {\bibstring{translator}}}% \clearname{translator}}% \newbibmacro*{parttransstrg}{% \ifthenelse{\value{nameb}>1\OR\ifandothers{nameb}}% {\ifnamesequal{nameb}{namec}% {\bibstring{transcompilers}% \clearname{namec}}% {\bibstring{translators}}}% {\ifnamesequal{nameb}{namec}% {\bibstring{transcompiler}% \clearname{namec}}% {\bibstring{translator}}}% \clearname{nameb}}% \newbibmacro*{editstrg}{% Test added for 0.9 \ifthenelse{\iffieldundef{editortype}\OR% \iffieldequalstr{editortype}{editor}}% {\ifthenelse{\value{editor}>1\OR\ifandothers{editor}}% {\ifthenelse{\ifnamesequal{editor}{translator}\AND% \ifnamesequal{editor}{namec}}% {\bibstring{editortranscompilers}% \clearname{translator}% \clearname{namec}}% {\ifnamesequal{editor}{namec}% {\bibstring{editorcompilers}% \clearname{namec}}% {\ifnamesequal{editor}{translator}% {\bibstring{editortranslators}% \clearname{translator}}% {\bibstring{editors}}}}}% {\ifthenelse{\ifnamesequal{editor}{translator}\AND% \ifnamesequal{editor}{namec}}% {\bibstring{editortranscompiler}% \clearname{translator}% \clearname{namec}}% {\ifnamesequal{editor}{namec}% {\bibstring{editorcompiler}% \clearname{namec}}% {\ifnamesequal{editor}{translator}% {\bibstring{editortranslator}% \clearname{translator}}% {\bibstring{editor}}}}}}% {\ifbibxstring{\thefield{editortype}}% {\ifthenelse{\value{editor}>1\OR\ifandothers{editor}}% {\bibstring{\thefield{editortype}s}}% {\bibstring{\thefield{editortype}}}}% {\printtext[note]{\thefield{editortype}}}}% \clearname{editor}}% \newbibmacro*{parteditstrg}{% \ifthenelse{\iffieldundef{nameatype}\OR% \iffieldequalstr{nameatype}{editor}}% {\ifthenelse{\value{namea}>1\OR\ifandothers{namea}}% {\ifthenelse{\ifnamesequal{namea}{nameb}\AND% \ifnamesequal{namea}{namec}}% {\bibstring{editortranscompilers}% \clearname{nameb}% \clearname{namec}}% {\ifnamesequal{namea}{namec}% {\bibstring{editorcompilers}% \clearname{namec}}% {\ifnamesequal{namea}{nameb}% {\bibstring{editortranslators}% \clearname{nameb}}% {\bibstring{editors}}}}}% {\ifthenelse{\ifnamesequal{namea}{nameb}\AND% \ifnamesequal{namea}{namec}}% {\bibstring{editortranscompiler}% \clearname{nameb}% \clearname{namec}}% {\ifnamesequal{namea}{namec}% {\bibstring{editorcompiler}% \clearname{namec}}% {\ifnamesequal{namea}{nameb}% {\bibstring{editortranslator}% \clearname{nameb}}% {\bibstring{editor}}}}}}% {\ifbibxstring{\thefield{nameatype}}% {\ifthenelse{\value{namea}>1\OR\ifandothers{namea}}% {\bibstring{\thefield{nameatype}s}}% {\bibstring{\thefield{nameatype}}}}% {\printtext[note]{\thefield{nameatype}}}}% \clearname{namea}}% \newbibmacro*{clearorigin}{% \toggletrue{cms@origcite}% \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}}% {\ifnameundef{bookauthor}% {\savefield{fullhash}{\bbx@lasthash}% \clearname{author}}% {\ifnamesequal{author}{bookauthor}% {\clearname{bookauthor}% \savefield{fullhash}{\bbx@lasthash}% \clearname{author}}% {\savefield{fullhash}{\bbx@lasthash}% \clearname{author}}}}% {\clearname{author}}}% \newbibmacro*{clearpublin}{% \toggletrue{cms@origcite}% \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}}% {\ifnameundef{bookauthor}% {\savefield{fullhash}{\bbx@lasthash}% \clearname{author}}% {\ifnamesequal{author}{bookauthor}% {\clearname{bookauthor}% \savefield{fullhash}{\bbx@lasthash}% \clearname{author}}% {\savefield{fullhash}{\bbx@lasthash}% \clearname{author}}}}% {\clearname{author}}% \ifthenelse{\ifentrytype{collection}\OR\ifentrytype{proceedings}\OR% \ifentrytype{mvcollection}\OR\ifentrytype{mvproceedings}}% {}% {\clearname{namea}% \clearname{nameb}}% \clearfield{nameaddon}% \ifthenelse{\(\ifentrytype{periodical}\OR\ifentrytype{mvbook}\OR% \ifentrytype{mvcollection}\OR\ifentrytype{mvproceedings}\OR% \ifentrytype{mvreference}\OR\ifentrytype{collection}\OR% \ifentrytype{proceedings}\OR\ifentrytype{reference}\OR% \ifentrytype{suppbook}\OR\ifentrytype{suppcollection}\)\OR% \(\(\ifentrytype{audio}\OR\ifentrytype{music}\OR% \ifentrytype{video}\)\AND\(\iffieldundef{booktitle}\AND% \iffieldundef{entrysubtype}\)\)}% Song w/o album? {}% {\clearfield{title}% \clearfield{subtitle}% \clearfield{titleaddon}% \clearfield{usere}% \clearlist{language}% \ifentrytype{music}% {\clearfield{note}\clearfield{howpublished}\clearfield{eventyear}% \clearfield{eventmonth}}% {}}% \ifentrytype{letter}% {\iftoggle{cms@switchdates}% {\clearfield{year}\clearfield{month}\clearfield{season}}% {\clearfield{origyear}\clearfield{origmonth}\clearfield{origseason}}% \clearfield{origlocation}}% {}% \clearfield{reprinttitle}% } %%%% Related macros from biblatex.def %%%% \renewcommand*{\begrelateddelim}{% \ifcitation{\newcunitpunct}% {\ifboolexpr{% togl {cms@fullnote}% or togl {cms@shortnote}% }% {\newcunitpunct}% {\newunitpunct}}}% \newcommand*{\begrelateddelimreviewof}{% \ifcitation{\newcunitpunct}% {\ifboolexpr{% togl {cms@fullnote}% or togl {cms@shortnote}% }% {\newcunitpunct}% {\newunitpunct}}} \newbibmacro*{related:reviewof}[1]{% \iftoggle{cms@shortnote}% {\entrydata*{#1}{% \cmsrelhyper{\printfield[citetitle]{labeltitle}}}}% {\entrydata*{#1}{% \printtext[cmsdefrelhypertarget]{% \let\newunit\newcunit% \iffieldundef{title}% {}% {\printtext[title]{% \printfield[tnoformat]{title}% \setunit{\subtitlepunct}% \printfield[stnoformat]{subtitle}}}% \newcunit% \ifnameundef{author}% {\newcunit% \ifbibliography% {\usebibmacro{byeditor+others}}% {\usebibmacro{cbyeditor+others}}}% {\bibstring{byauthor}\addspace% \printnames[byauthor]{author}% \ifbibliography% {\newcunit\usebibmacro{byeditor+others}}% {\newcunit\usebibmacro{cbyeditor+others}}}% \setunit{\ctitleaddonpunct}% \printfield{titleaddon}}}}}% \newbibmacro*{related:commenton}[1]{% \iftoggle{cms@shortnote}% {\entrydata*{#1}{% \iffieldequalstr{authortype}{anon}% {\bibleftbracket\printnames{labelname}% \bibrightbracket\classicpunct}% {\iffieldequalstr{authortype}{anon?}% {\bibleftbracket\printnames{labelname}?% \bibrightbracket\classicpunct}% {\cmsrelnamehyper{\printnames{labelname}}% \isdot\classicpunct}}% \usebibmacro{cms+relextra+test}}}% {\ifbibliography% {\entrydata*{#1}{% \ifentryinbib{\strfield{clonesourcekey}}% {\iffieldequalstr{authortype}{anon}% {\bibleftbracket\printnames{labelname}% \bibrightbracket\classicpunct}% {\iffieldequalstr{authortype}{anon?}% {\bibleftbracket\printnames{labelname}?% \bibrightbracket\classicpunct}% {\printnames{labelname}% \isdot\classicpunct}}% \usebibmacro{cms+relextra+test}}% {\usebibmacro{at+every+item}\toggletrue{cms@fullnote}% \iffieldundef{savedyear}{}{\clearfield{year}}% \iffieldundef{savedmonth}{}{\clearfield{month}}% \iffieldundef{savedseason}{}{\clearfield{season}}% \iffieldundef{savedurl}{}{\clearfield{url}}% \iffieldundef{savedaddendum}{}{\clearfield{addendum}}% \usebibmacro{bib:related:full}}}}% {\entrydata*{#1}{% \ifentryseen{\thefield{clonesourcekey}}% {\iffieldequalstr{authortype}{anon}% {\bibleftbracket\printnames{labelname}% \bibrightbracket\classicpunct}% {\iffieldequalstr{authortype}{anon?}% {\bibleftbracket\printnames{labelname}?% \bibrightbracket\classicpunct}% {\cmsrelnamehyper{\printnames{labelname}}% \isdot\classicpunct}}% \usebibmacro{cms+relextra+test}}% {\usebibmacro{at+every+item}% \iffieldundef{savedurl}{}{\clearfield{url}}% \iffieldundef{savedaddendum}{}{\clearfield{addendum}}% \listcsxadd{blx@bsee@\the\c@refsection}{\strfield{clonesourcekey}}% \usebibmacro{cite:related:full}}}}}} % Used inside previous to allow chains of relatedtype "commenton" % entries to mimic online thread structure. In particular it stops % the printing of auto-generated title fields. \newbibmacro*{cms+relextra+test}{% \ifboolexpr{% test {\iffieldequalstr{relatedtype}{commenton}}% and ( test {\ifentrytype{review}}% or test {\ifentrytype{suppperiodical}}% or ( test {\ifentrytype{online}}% and test {\IfBeginWith{\thefield{title}}{CCCCCC}}% )) }% {\entrydata{\thefield{clonesourcekey}}{% \ifboolexpr{% test {\iffieldundef{extratitle}}% and test {\iffieldundef{extraname}}% }% {}% {\ifcsundef{cms@xfield}% {\ifentrytype{online}% {\setunit{\addspace}% \printtext[parens]{% \printdate% \iffieldundef{hour}% {}% {\newcunit\printtime}}}% {\setunit{\addspace}% \printtext[parens]{% \printeventdate% \iffieldundef{eventhour}% {}% {\newcunit\printeventtime}}}}% {\setunit{\shortextrapunct}% \usebibmacro{shortnote+extrafield}}}}}% {\cmsrelhyper{\printfield[citetitle]{labeltitle}}}} \newrobustcmd*{\cmsrelnamehyper}[1]{% \ifhyperref% {\ifboolexpr{% test {\iffieldequalstr{relatedtype}{commenton}}% and ( test {\ifentrytype{review}}% or test {\ifentrytype{suppperiodical}}% or ( test {\ifentrytype{online}}% and test {\IfBeginWith{\thefield{title}}{CCCCCC}}% )) }% {\iffieldequalstr{savedrelatedtype}{commenton}% {\iftoggle{cms@allshort}% {#1}% {\bibhyperlink{\strfield{clonesourcekey}}{#1}}}% {\cmsrelhyper{#1}}}% {#1}}% {#1}} \renewbibmacro*{related:origpubas}[1]{% \entrydata*{#1}{% \usebibmacro{at+every+item}% \usebibmacro{cite:origfull}}}% \renewbibmacro*{related:reprintfrom}[1]{% \entrydata*{#1}{% \usebibmacro{at+every+item}% \nopunct% ??? \usebibmacro{cite:origpubl}}}% \renewbibmacro*{related:bytranslator}[1]{% \entrydata{#1}{% \usebibmacro{at+every+item}% \renewbibmacro*{name:hook}[1]{% \ifnumequal{\value{listcount}}{1}% {\begingroup \mkrelatedstring% \lbx@initnamehook{#1}% \endgroup} {}}% \printnames[bytranslator]{translator}% \setunit*{\addspace\bibstring[\mkrelatedstring]{astitle}\addspace}% \clearname{translator}% \usebibmacro{cite:origfull}}}% \renewbibmacro*{related:default}[1]{% \entrydata*{#1}{% \printtext[cmsdefrelhypertarget]{% \usedriver% {\ifnameundef{savedauthor}% {\ifnameundef{savededitor}% {}% {\ifnamesequal{editor}{savededitor}% {\iftoggle{cms@headlessnote}% {}% {\clearname{editor}}}% {}}}% {\ifnamesequal{author}{savedauthor}% {\iftoggle{cms@headlessnote}% {}% {\clearname{author}}}% {}}% \usebibmacro{at+every+item}% \renewbibmacro*{related:init}{}% \DeclareNameAlias{sortname}{default}% \renewbibmacro*{pageref}{}% \toggletrue{cms@fullnote}% \togglefalse{cms@shortnote}}%\nopunct {cite:\thefield{entrytype}}}}}% \newbibmacro*{related:maintitle}[1]{% \entrydata*{#1}{% \ifthenelse{\ifentrytype{mvbook}\OR\ifentrytype{mvcollection}\OR% \ifentrytype{mvproceedings}\OR\ifentrytype{mvreference}}% {\iffieldundef{volumes}{}{\savefield*{volumes}{\cms@mtvolumes}}% \bibstring{in}\nopunct}% {\ifcsdef{cms@mtvolumes}{\restorefield{savedvolumes}{\cms@mtvolumes}}{}% \ifthenelse{\iffieldundef{volume}\AND\iffieldundef{part}}% {\ifthenelse{\iffieldundef{volumes}\AND\iffieldundef{savedvolumes}}% {\bibsstring{thiscite}\nopunct}% {\iffieldundef{volumes}% {\printfield[volumes]{savedvolumes}}% {\printfield{volumes}\clearfield{volumes}}% \newcunit\bibsstring{thiscite}% \nopunct}}% {\iffieldundef{volume}% {\printfield[xrefpart]{part}\usebibmacro{mt:ofvols}}% {\iffieldundef{part}% {\printfield{volume}\usebibmacro{mt:ofvols}}% {\printfield{volume}\usebibmacro{mt:ofvols}\printfield{part}}}}% \ifcsdef{cms@mtpages}{\restorefield{pages}{\cms@mtpages}}{}% \ifcsdef{cms@mtpagination}{\restorefield{bookpagination}% {\cms@mtpagination}}{}% \ifcsdef{cms@mtchapter}{\restorefield{chapter}{\cms@mtchapter}}{}% \ifcsdef{cms@mtauthor}% {\savename*{author}{\cms@mtsecauthor}% \ifcsequal{cms@mtauthor}{cms@mtsecauthor}% {\clearname{author}}% {}}% {}% \ifcsdef{cms@mteditor}% {\savename*{editor}{\cms@mtseceditor}% \ifcsequal{cms@mteditor}{cms@mtseceditor}% {\clearname{editor}}% {}}% {}% \ifcsdef{cms@mttranslator}% {\savename*{translator}{\cms@mtsectranslator}% \ifcsequal{cms@mttranslator}{cms@mtsectranslator}% {\clearname{translator}}% {}}% {}% \ifcsdef{cms@mtnamec}% {\savename*{namec}{\cms@mtsecnamec}% \ifcsequal{cms@mtnamec}{cms@mtsecnamec}% {\clearname{namec}}% {}}% {}}% \ifbibliography% {\printtext[cmsdefrelhypertarget]{% \usedriver% {\ifnameundef{savedauthor}% {\ifnameundef{savededitor}% {\ifnameundef{savedtranslator}% {\ifnameundef{savednamec}% {}% {\ifnamesequal{namec}{savednamec}% {\clearname{namec}}% {}}}% {\ifnamesequal{translator}{savedtranslator}% {\clearname{translator}}% {}}}% {\ifnamesequal{editor}{savededitor}% {\clearname{editor}}% {}}}% {\ifnamesequal{author}{savedauthor}% {\clearname{author}}% {}}% \clearfield{volume}\clearfield{part}% \clearfield{maintitle}%\clearfield{volumes}% \clearfield{crossref}\clearfield{xref}% \usebibmacro{at+every+item}% \renewbibmacro*{related:init}{}% \DeclareNameAlias{sortname}{default}% \renewbibmacro*{pageref}{}% \renewbibmacro*{editor}{}% \renewbibmacro*{author/editor}{}% \clearfield{nameaddon}% \toggletrue{cms@mtvolpunct}}% {\thefield{entrytype}}}}% {\printtext[cmsdefrelhypertarget]{% \usedriver% {\ifnameundef{savedauthor}% {\ifnameundef{savededitor}% {\ifnameundef{savedtranslator}% {\ifnameundef{savednamec}% {}% {\ifnamesequal{namec}{savednamec}% {\clearname{namec}}% {}}}% {\ifnamesequal{translator}{savedtranslator}% {\clearname{translator}}% {}}}% {\ifnamesequal{editor}{savededitor}% {\clearname{editor}}% {}}}% {\ifnamesequal{author}{savedauthor}% {\clearname{author}}% {}}% \clearfield{volume}\clearfield{part}% \clearfield{maintitle}%\clearfield{volumes}% \clearfield{crossref}\clearfield{xref}% \usebibmacro{at+every+item}% \renewbibmacro*{related:init}{}% \DeclareNameAlias{sortname}{default}% \renewbibmacro*{pageref}{}% \renewbibmacro*{editor}{}% \renewbibmacro*{author/editor}{}% \clearfield{nameaddon}% \toggletrue{cms@fullnote}% \togglefalse{cms@shortnote}}% {cite:\thefield{entrytype}}}}}}% \newbibmacro*{mt:ofvols}{% MT -- used by previous \iftoggle{cms@hidevolumes}% {\clearfield{volumes}}% {\ifthenelse{\iffieldundef{volumes}\AND\iffieldundef{savedvolumes}}% {}% {\addspace\bibstring{of}\addspace% \iffieldundef{volumes}% {\printfield[default]{savedvolumes}}% {\printfield[default]{volumes}\clearfield{volumes}}}}}% \newbibmacro*{extract+mt+vol}{% MT fix \ifthenelse{\iffieldequalstr{relatedtype}{maintitle}\OR% \iffieldequalstr{relatedtype}{maintitlenc}}% {\setcounter{cms@reviewcount}{\value{instcount}}% \ifthenelse{\iffieldundef{volume}\AND\iffieldundef{part}}% {\entrydata{\thefield{related}}{% \iffieldundef{volume}{}{\savefield{volume}{\cms@mtvolume}}% \iffieldundef{part}{}{\savefield{part}{\cms@mtpart}}}}% {}% \ifcsundef{cms@mtvolume}{}{\restorefield{volume}{\cms@mtvolume}}% \ifcsundef{cms@mtpart}{}{\restorefield{part}{\cms@mtpart}}% \csgundef{cms@mtvolume}\csgundef{cms@mtpart}}% {}} \newbibmacro*{extract+clonekey+note}{% \entrydata{\thefield{related}}{% \ifboolexpr{% test {\ifentryseen{\thefield{clonesourcekey}}}% and not togl {cms@citecrossref}% }% {\savefield{clonesourcekey}{\cms@shortmtkey}}% {}}\iftoggle{cms@noterefs}{\addtocounter{instcount}{-1}}{}}% \newbibmacro*{extract+clonekey+bib}{% \entrydata{\thefield{related}}{% \ifboolexpr{% test {\ifentryinbib{\strfield{clonesourcekey}}}% and not togl {cms@bibcrossref}% }% {\savefield{clonesourcekey}{\cms@shortmtkey}}% {}}}% \letbibmacro*{related:maintitlenc}{related:maintitle}% MT fix \renewbibmacro*{related:multivolume}[1]{% \entrydata*{#1}{% \usebibmacro{at+every+item}% \ifthenelse{\iffieldundef{volume}\AND\iffieldundef{part}}% {}% {\printtext{% \printfield{volume}% \printfield{part}}% \setunit{\addcolon\addspace}}% \usebibmacro{ctitle+stitle}% \ifboolexpr{% test {\ifnamesequal{author}{savedauthor}}% or test {\ifnameundef{author}}% }% {}% {\usebibmacro{bytypestrg}{author}{author}% \setunit{\addspace}% \printnames[byauthor]{author}% \newcunit\newblock}% \ifboolexpr{% test {\ifnamesequal{namea}{savednamea}}% or test {\ifnameundef{namea}}% }% {\ifboolexpr{% test {\ifnamesequal{editor}{savededitor}}% or test {\ifnameundef{editor}}% }% {\ifboolexpr{% test {\ifnamesequal{nameb}{savednameb}}% or test {\ifnameundef{nameb}}% }% {}% {\bibstring{cbytranslator}\addspace% \printnames[bytranslator]{nameb}\newcunit}}% {\usebibmacro{cbyeditor+others}% \newcunit}}% {\usebibmacro{cpart+editor+translator}% \newcunit}% \usebibmacro{date}}}% \renewbibmacro*{related:origpubin}[1]{% \entrydata*{#1}{% \usebibmacro{at+every+item}% \usebibmacro{cmsyear}% \ifboolexpr{% test {\iflistsequal{publisher}{savedpublisher}}% or test {\iflistundef{publisher}}% }% {}% {\midsentence% Why is this kludge necessary? \setunit{\addspace\bibstring[\mkrelatedstring]{bypublisher}\space}% \printlist{publisher}% \setunit{\addcomma\space}% \iflistsequal{location}{savedlocation}% {}% {\printlist{location}}}}} \DeclareFieldFormat{title:hook}{% \begingroup \mkrelatedstring% \ifboolexpr{% togl {cms@otherlang}% and not test {\iffieldundef{langid}}% }% {\unspace}{}% \ifdefstring{\blx@main@language}{french}% {}% {\iftoggle{smartof}% {\let\lbx@inittitlehook\lbx@fr@smartof}% {}}% \lbx@inittitlehook{#1}% \endgroup \mkbibemph{#1}} \DeclareFieldFormat{ititle:hook}{% \begingroup \mkrelatedstring% \ifboolexpr{% togl {cms@otherlang}% and not test {\iffieldundef{langid}}% }% {\unspace}{}% \ifdefstring{\blx@main@language}{french}% {}% {\iftoggle{smartof}% {\let\lbx@inittitlehook\lbx@fr@smartof}% {}}% \lbx@inittitlehook{#1}% \endgroup \mkbibquote{#1}} \DeclareFieldFormat{chapter:hook}{% \begingroup \mkrelatedstring% \ifboolexpr{% togl {cms@otherlang}% and not test {\iffieldundef{langid}}% }% {\unspace}{}% \ifdefstring{\blx@main@language}{french}% {}% {\iftoggle{smartof}% {\let\lbx@inittitlehook\lbx@fr@smartof}% {}}% \lbx@inittitlehook{\bibstring{chapter}}% \endgroup \bibstring{chapter}~#1\addspace\bibstring{in}}% \DeclareFieldFormat{avchapter:hook}{% \begingroup \mkrelatedstring% \ifboolexpr{% togl {cms@otherlang}% and not test {\iffieldundef{langid}}% }% {\unspace}{}% \ifdefstring{\blx@main@language}{french}% {}% {\iftoggle{smartof}% {\let\lbx@inittitlehook\lbx@fr@smartof}% {}}% \lbx@inittitlehook{\bibstring{chapter}}% \endgroup \bibstring{chapter}~#1}% \DeclareFieldFormat{muschapter:hook}{% \begingroup \mkrelatedstring% \ifboolexpr{% togl {cms@otherlang}% and not test {\iffieldundef{langid}}% }% {\unspace}{}% \ifdefstring{\blx@main@language}{french}% {}% {\iftoggle{smartof}% {\let\lbx@inittitlehook\lbx@fr@smartof}% {}}% \lbx@inittitlehook{\bibstring{track}}% \endgroup \bibstring{track}~#1}% \DeclareFieldFormat{sitnoformat}{#1} \DeclareFieldFormat{sjtnoformat}{#1} \DeclareFieldFormat{stnoformat}{#1} \DeclareFieldFormat{sbtnoformat}{#1} \DeclareFieldFormat{smtnoformat}{#1} \DeclareFieldFormat{itnoformat}{#1} \DeclareFieldFormat{jtnoformat}{#1} \DeclareFieldFormat{jtsnoformat}{#1} \DeclareFieldFormat{tnoformat}{#1} \DeclareFieldFormat{btnoformat}{#1} \DeclareFieldFormat{mtnoformat}{#1} \providetoggle{cms@otherlang} \apptocmd\blx@opt@autolang@other% {\toggletrue{cms@otherlang}}% {\blx@info@noline{Patching 'autolang=other' option}} {\PackageWarningNoLine{biblatex-chicago}% {Upgrading biblatex to >v2.7a recommended,\MessageBreak especially if you are using the "related"\MessageBreak functionality}} \newbibmacro*{cms:titlehook}{% Needed for full drivers in reprintfrom \ifthenelse{\iffieldundef{chapter}\OR\NOT\(\ifentrytype{audio}\OR% \ifentrytype{inbook}\OR\ifentrytype{incollection}\OR% \ifentrytype{inproceedings}\OR\ifentrytype{letter}\OR% \ifentrytype{music}\OR\ifentrytype{video}\)}% {\iffieldundef{issuetitle}% {\iffieldundef{title}% {\iffieldundef{booktitle}% {\iffieldundef{journaltitle}% Switched order for 17th ed. {\iffieldundef{maintitle}% {}% {\DeclareFieldAlias{mtnoformat}{title:hook}% \DeclareFieldAlias{smtnoformat}{title}% \DeclareFieldAlias{maintitle}{default}}}% {\DeclareFieldAlias{jtnoformat}{title:hook}% \DeclareFieldAlias{sjtnoformat}{title}% \DeclareFieldAlias{journaltitle}{default}% \DeclareFieldAlias{shortjournal}{series}% \DeclareFieldAlias{jtsnoformat}{title:hook}}}% {\DeclareFieldAlias{btnoformat}{title:hook}% \DeclareFieldAlias{sbtnoformat}{title}% \DeclareFieldAlias{booktitle}{default}}}% {\DeclareFieldAlias{tnoformat}{title:hook}% \DeclareFieldAlias{stnoformat}{citetitle}% \DeclareFieldAlias[video]{title}{default}% \DeclareFieldAlias[audio]{title}{default}% \DeclareFieldAlias[music]{title}{default}% \DeclareFieldAlias{title}{default}% \DeclareFieldAlias[periodical]{shorttitle}{series}}}% {\iffieldundef{issuesubtitle}% {\DeclareFieldAlias{itnoformat}{ititle:hook}% \DeclareFieldAlias{issuetitle}{default}}% {\DeclareFieldAlias{issuetitle}{ititle:hook}}}}% {\ifthenelse{\ifentrytype{audio}\OR\ifentrytype{music}\OR% \ifentrytype{video}}% {\iffieldundef{title}% {\ifentrytype{music}% {\DeclareFieldAlias[music]{chapter}{muschapter:hook}}% {\DeclareFieldAlias{chapter}{avchapter:hook}}}% {\DeclareFieldAlias{tnoformat}{title:hook}% \DeclareFieldAlias{stnoformat}{citetitle}% \DeclareFieldAlias[video]{title}{default}% \DeclareFieldAlias[audio]{title}{default}% \DeclareFieldAlias[music]{title}{default}}}% {\DeclareFieldAlias{chapter}{chapter:hook}}}}% \newbibmacro*{cite:origfull}{% \printtext[cmsdefrelhypertarget]{% \usedriver {\DeclareNameAlias{sortname}{default}\clearfield{postnote}% \clearname{author}\clearfield{userf}\clearfield{shorthand}% \toggletrue{cms@fullnote}\toggletrue{cms@headlessnote}% \frenchspacing}% {cite:\thefield{entrytype}}}} \newbibmacro*{cite:origpubl}{% \printtext[cmsdefrelhypertarget]{% \usedriver {\DeclareNameAlias{sortname}{default}\clearfield{postnote}% \usebibmacro{clearpublin}\clearfield{shorthand}% \toggletrue{cms@fullnote}\toggletrue{cms@headlessnote}% \toggletrue{cms@origpublished}\frenchspacing% \usebibmacro{cms:titlehook}}% {cite:\thefield{entrytype}}}} \newbibmacro*{cite:related:full}{% \printtext[cmsdefrelhypertarget]{% \usedriver {\DeclareNameAlias{sortname}{default}\frenchspacing}% {cite:\thefield{entrytype}}}}% \newbibmacro*{bib:related:full}{% \printtext[cmsdefrelhypertarget]{% \usedriver {\DeclareNameAlias{sortname}{default}\frenchspacing}% {\thefield{entrytype}}}}% \DeclareFieldFormat{cmsdefrelhypertarget}{% \ifhyperref% {\ifbibliography% {\ifentryinbib{\strfield{clonesourcekey}}% {#1}% {\hypertarget{cite.\the\c@refsection @\thefield{clonesourcekey}}{#1}}}% {\bibhypertarget{\thefield{clonesourcekey}}{#1}}}% {#1}} \newrobustcmd*{\cmsrelhyper}[1]{% \ifhyperref% {\ifbibliography% {\ifentryinbib{\strfield{clonesourcekey}}% {\bibhyperref[\strfield{clonesourcekey}]{#1}}% {#1}}% {\iftoggle{cms@allshort}% {\IfSubStr{\thefield{savedoptions}}{skipbib}% {\bibhyperref[\strfield{clonesourcekey}]{#1}}%% {\bibhyperref[\thefield{savedentrykey}]{#1}}}% {\iftoggle{cms@fullnote}% {\ifentryseen{\thefield{clonesourcekey}}% {\bibhyperlink{\strfield{clonesourcekey}}{#1}}% {#1}}% {\bibhyperlink{\thefield{savedentrykey}}{#1}}}}}% {#1}}% \newbibmacro*{at+every+item}{% \ifboolexpr{% test {\iffieldundef{origyear}}% or test {\iffieldundef{year}}% or not test {\iffieldint{year}}% or togl {cms@switchdates}% }% {}% {\ifboolexpr{% Needed for open-ended ranges test {\iffieldundef{endyear}}% or not test {\iffieldnum{endyear}}% }% {\ifthenelse{\thefield{origyear}>\thefield{year}}% {\toggletrue{cms@switchdates}}% {}}% {\ifthenelse{\thefield{origyear}>\thefield{endyear}}% {\toggletrue{cms@switchdates}}% {}}}}% \endinput