summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex-contrib/windycity/windycity.bbx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/biblatex-contrib/windycity/windycity.bbx')
-rw-r--r--macros/latex/contrib/biblatex-contrib/windycity/windycity.bbx542
1 files changed, 409 insertions, 133 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/windycity/windycity.bbx b/macros/latex/contrib/biblatex-contrib/windycity/windycity.bbx
index f0ebc54803..7ec01ff0a4 100644
--- a/macros/latex/contrib/biblatex-contrib/windycity/windycity.bbx
+++ b/macros/latex/contrib/biblatex-contrib/windycity/windycity.bbx
@@ -1,4 +1,4 @@
-% Last modified: Sat 04 Dec 2021 01:25:10 PM CST
+% Last modified: Wed 03 May 2023 06:54:57 PM CDT
% Permission is granted to copy, distribute and/or modify this
% software under the terms of the LaTeX Project Public License (LPPL),
@@ -11,7 +11,7 @@
% implied warranties of merchantability and fitness for a particular
% purpose.
-\ProvidesFile{windycity.bbx}[2021/12/04 Windy City bibliography style
+\ProvidesFile{windycity.bbx}[2023/05/03 Windy City bibliography style
for biblatex]
\@ifpackagelater{biblatex}{2019/08/17}
{}
@@ -142,20 +142,20 @@
\settoggle{swapauth}{#1}}%
\providetoggle{swaptrans}
-\providetoggle{swaptrans:booktitle}
\providetoggle{swaptrans:bookbooktitle}
+\providetoggle{swaptrans:booktitle}
\providetoggle{swaptrans:issuetitle}
\providetoggle{swaptrans:maintitle}
\providetoggle{swaptrans:series}
\providetoggle{swaptrans:title}
\DeclareBiblatexOption{entry}[boolean]{swaptrans}[true]{%
\settoggle{swaptrans:title}{#1}%
- \settoggle{swaptrans:booktitle}{#1}%
- \settoggle{swaptrans:bookbooktitle}{#1}}%
-\DeclareBiblatexOption{entry}[boolean]{swaptrans:booktitle}[true]{%
+ \settoggle{swaptrans:bookbooktitle}{#1}%
\settoggle{swaptrans:booktitle}{#1}}%
\DeclareBiblatexOption{entry}[boolean]{swaptrans:bookbooktitle}[true]{%
\settoggle{swaptrans:bookbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{swaptrans:booktitle}[true]{%
+ \settoggle{swaptrans:booktitle}{#1}}%
\DeclareBiblatexOption{entry}[boolean]{swaptrans:issuetitle}[true]{%
\settoggle{swaptrans:issuetitle}{#1}}%
\DeclareBiblatexOption{entry}[boolean]{swaptrans:maintitle}[true]{%
@@ -187,6 +187,250 @@
\DeclareBiblatexOption{entry,global}[boolean]{url}[true]{%
\settoggle{url}{#1}}%
+% Options for formatting titles and other fields:
+
+\providetoggle{emph:blogtitle}
+\providetoggle{emph:booktitle}
+\providetoggle{emph:bookbooktitle}
+\providetoggle{emph:issuetitle}
+\providetoggle{emph:journaltitle}
+\providetoggle{emph:labeltitle}
+\providetoggle{emph:maintitle}
+\providetoggle{emph:origtitle}
+\providetoggle{emph:shortbooktitle}
+\providetoggle{emph:shorthand}
+\providetoggle{emph:shortmaintitle}
+\providetoggle{emph:title}
+\providetoggle{emph}
+\DeclareBiblatexOption{entry}[boolean]{emph:blogtitle}[true]{%
+ \settoggle{emph:blogtitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:bookbooktitle}[true]{%
+ \settoggle{emph:bookbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:booktitle}[true]{%
+ \settoggle{emph:booktitle}{#1}%
+ \settoggle{emph:shortbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:issuetitle}[true]{%
+ \settoggle{emph:issuetitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:journal}[true]{%
+ \settoggle{emph:journaltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:journaltitle}[true]{%
+ \settoggle{emph:journaltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:maintitle}[true]{%
+ \settoggle{emph:maintitle}{#1}%
+ \settoggle{emph:shortmaintitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:origtitle}[true]{%
+ \settoggle{emph:origtitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:shortbooktitle}[true]{%
+ \settoggle{emph:shortbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:shorthand}[true]{%
+ \settoggle{emph:shorthand}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:shortmaintitle}[true]{%
+ \settoggle{emph:shortmaintitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:shorttitle}[true]{%
+ \settoggle{emph:labeltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph:title}[true]{%
+ \settoggle{emph:title}{#1}%
+ \settoggle{emph:labeltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{emph}[true]{%
+ \settoggle{emph:title}{#1}%
+ \settoggle{emph:labeltitle}{#1}}%
+
+\providetoggle{ifcapital:blogtitle}
+\providetoggle{ifcapital:booktitle}
+\providetoggle{ifcapital:bookbooktitle}
+\providetoggle{ifcapital:issuetitle}
+\providetoggle{ifcapital:journaltitle}
+\providetoggle{ifcapital:labeltitle}
+\providetoggle{ifcapital:maintitle}
+\providetoggle{ifcapital:origtitle}
+\providetoggle{ifcapital:shortbooktitle}
+\providetoggle{ifcapital:shorthand}
+\providetoggle{ifcapital:shortmaintitle}
+\providetoggle{ifcapital:title}
+\providetoggle{ifcapital}
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:blogtitle}[true]{%
+ \settoggle{ifcapital:blogtitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:bookbooktitle}[true]{%
+ \settoggle{ifcapital:bookbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:booktitle}[true]{%
+ \settoggle{ifcapital:booktitle}{#1}%
+ \settoggle{ifcapital:shortbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:issuetitle}[true]{%
+ \settoggle{ifcapital:issuetitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:journal}[true]{%
+ \settoggle{ifcapital:journaltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:journaltitle}[true]{%
+ \settoggle{ifcapital:journaltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:maintitle}[true]{%
+ \settoggle{ifcapital:maintitle}{#1}%
+ \settoggle{ifcapital:shortmaintitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:origtitle}[true]{%
+ \settoggle{ifcapital:origtitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:shortbooktitle}[true]{%
+ \settoggle{ifcapital:shortbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:shorthand}[true]{%
+ \settoggle{ifcapital:shorthand}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:shortmaintitle}[true]{%
+ \settoggle{ifcapital:shortmaintitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:shorttitle}[true]{%
+ \settoggle{ifcapital:labeltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital:title}[true]{%
+ \settoggle{ifcapital:title}{#1}%
+ \settoggle{ifcapital:labeltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{ifcapital}[true]{%
+ \settoggle{ifcapital:title}{#1}%
+ \settoggle{ifcapital:labeltitle}{#1}}%
+
+\providetoggle{noformat:blogtitle}
+\providetoggle{noformat:booktitle}
+\providetoggle{noformat:bookbooktitle}
+\providetoggle{noformat:issuetitle}
+\providetoggle{noformat:journaltitle}
+\providetoggle{noformat:labeltitle}
+\providetoggle{noformat:maintitle}
+\providetoggle{noformat:origtitle}
+\providetoggle{noformat:shortbooktitle}
+\providetoggle{noformat:shorthand}
+\providetoggle{noformat:shortmaintitle}
+\providetoggle{noformat:title}
+\providetoggle{noformat}
+\DeclareBiblatexOption{entry}[boolean]{noformat:blogtitle}[true]{%
+ \settoggle{noformat:blogtitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:bookbooktitle}[true]{%
+ \settoggle{noformat:bookbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:booktitle}[true]{%
+ \settoggle{noformat:booktitle}{#1}%
+ \settoggle{noformat:shortbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:issuetitle}[true]{%
+ \settoggle{noformat:issuetitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:journal}[true]{%
+ \settoggle{noformat:journaltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:journaltitle}[true]{%
+ \settoggle{noformat:journaltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:maintitle}[true]{%
+ \settoggle{noformat:maintitle}{#1}%
+ \settoggle{noformat:shortmaintitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:origtitle}[true]{%
+ \settoggle{noformat:orig}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:shortbooktitle}[true]{%
+ \settoggle{noformat:shortbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:shorthand}[true]{%
+ \settoggle{noformat:shorthand}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:shortmaintitle}[true]{%
+ \settoggle{noformat:shortmaintitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:shorttitle}[true]{%
+ \settoggle{noformat:labeltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat:title}[true]{%
+ \settoggle{noformat:labeltitle}{#1}%
+ \settoggle{noformat:title}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{noformat}[true]{%
+ \settoggle{noformat:labeltitle}{#1}%
+ \settoggle{noformat:title}{#1}}%
+
+\providetoggle{quotes:blogtitle}
+\providetoggle{quotes:booktitle}
+\providetoggle{quotes:bookbooktitle}
+\providetoggle{quotes:issuetitle}
+\providetoggle{quotes:journaltitle}
+\providetoggle{quotes:labeltitle}
+\providetoggle{quotes:maintitle}
+\providetoggle{quotes:origtitle}
+\providetoggle{quotes:shortbooktitle}
+\providetoggle{quotes:shorthand}
+\providetoggle{quotes:shortmaintitle}
+\providetoggle{quotes:title}
+\providetoggle{quotes}
+\DeclareBiblatexOption{entry}[boolean]{quotes:blogtitle}[true]{%
+ \settoggle{quotes:blogtitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:bookbooktitle}[true]{%
+ \settoggle{quotes:bookbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:booktitle}[true]{%
+ \settoggle{quotes:booktitle}{#1}%
+ \settoggle{quotes:shortbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:issuetitle}[true]{%
+ \settoggle{quotes:issuetitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:journal}[true]{%
+ \settoggle{quotes:journaltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:journaltitle}[true]{%
+ \settoggle{quotes:journaltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:maintitle}[true]{%
+ \settoggle{quotes:maintitle}{#1}%
+ \settoggle{quotes:shortmaintitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:origtitle}[true]{%
+ \settoggle{quotes:origtitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:shortbooktitle}[true]{%
+ \settoggle{quotes:shortbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:shorthand}[true]{%
+ \settoggle{quotes:shorthand}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:shortmaintitle}[true]{%
+ \settoggle{quotes:shortmaintitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:shorttitle}[true]{%
+ \settoggle{quotes:labeltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes:title}[true]{%
+ \settoggle{quotes:labeltitle}{#1}%
+ \settoggle{quotes:title}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{quotes}[true]{%
+ \settoggle{quotes:labeltitle}{#1}%
+ \settoggle{quotes:title}{#1}}%
+
+\providetoggle{sentencecase:blogtitle}
+\providetoggle{sentencecase:booktitle}
+\providetoggle{sentencecase:bookbooktitle}
+\providetoggle{sentencecase:issuetitle}
+\providetoggle{sentencecase:journaltitle}
+\providetoggle{sentencecase:labeltitle}
+\providetoggle{sentencecase:maintitle}
+\providetoggle{sentencecase:origtitle}
+\providetoggle{sentencecase:shortbooktitle}
+\providetoggle{sentencecase:shorthand}
+\providetoggle{sentencecase:shortmaintitle}
+\providetoggle{sentencecase:title}
+\providetoggle{sentencecase}
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:blogtitle}[true]{%
+ \settoggle{sentencecase:blogtitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:bookbooktitle}[true]{%
+ \settoggle{sentencecase:bookbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:booktitle}[true]{%
+ \settoggle{sentencecase:booktitle}{#1}%
+ \settoggle{sentencecase:shortbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:issuetitle}[true]{%
+ \settoggle{sentencecase:issuetitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:journal}[true]{%
+ \settoggle{sentencecase:journaltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:journaltitle}[true]{%
+ \settoggle{sentencecase:journaltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:maintitle}[true]{%
+ \settoggle{sentencecase:maintitle}{#1}%
+ \settoggle{sentencecase:shortmaintitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:origtitle}[true]{%
+ \settoggle{sentencecase:origtitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:shortbooktitle}[true]{%
+ \settoggle{sentencecase:shortbooktitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:shorthand}[true]{%
+ \settoggle{sentencecase:shorthand}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:shortmaintitle}[true]{%
+ \settoggle{sentencecase:shortmaintitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:shorttitle}[true]{%
+ \settoggle{sentencecase:labeltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase:title}[true]{%
+ \settoggle{sentencecase:title}{#1}%
+ \settoggle{sentencecase:labeltitle}{#1}}%
+\DeclareBiblatexOption{entry}[boolean]{sentencecase}[true]{%
+ \settoggle{sentencecase:title}{#1}%
+ \settoggle{sentencecase:labeltitle}{#1}}%
+\DeclareBiblatexOption{global}[boolean]{sentencecase}[true]{%
+ \settoggle{sentencecase:blogtitle}{#1}%
+ \settoggle{sentencecase:booktitle}{#1}%
+ \settoggle{sentencecase:bookbooktitle}{#1}%
+ \settoggle{sentencecase:issuetitle}{#1}%
+ \settoggle{sentencecase:journaltitle}{#1}%
+ \settoggle{sentencecase:labeltitle}{#1}%
+ \settoggle{sentencecase:maintitle}{#1}%
+ \settoggle{sentencecase:origtitle}{#1}%
+ \settoggle{sentencecase:shortbooktitle}{#1}%
+ \settoggle{sentencecase:shortmaintitle}{#1}%
+ \settoggle{sentencecase:title}{#1}}%
+
% For setting 'minbibnames' and such, see CMOS, 17th ed., 14.76 and
% 15.29. For 'citetracker' and 'loccittracker', 'constrict' is too
% strict but seems to work well for 'ibidtracker'.
@@ -386,7 +630,7 @@
}
\DeclareStyleSourcemap{
\maps[datatype=bibtex]{
- \map[overwrite=false]{
+ \map[overwrite]{
\pertype{inreference}
\pertype{reference}
\step[notfield=author, final]
@@ -554,6 +798,7 @@
\let\anona\empty
\let\anonb\empty
\let\crossreflist\empty
+\let\title@format\empty
\let\pluga\empty
\let\plugb\empty
\let\xtitle\empty
@@ -623,9 +868,22 @@
{\indexnames{labelname}}%
{}}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% Field Formats for Names %%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%
+%% Field Formats %%
+%%%%%%%%%%%%%%%%%%%%%
+
+% Generic formats:
+
+\DeclareFieldFormat{brackets}{\mkbibbrackets{#1}}
+\DeclareFieldFormat{capital}{\MakeCapital{#1}}
+\DeclareFieldFormat{emph}{\mkbibemph{#1}}
+\DeclareFieldFormat{ifcapital}{\ifcapital{\MakeCapital{#1}}{#1}}
+\DeclareFieldFormat{noformat}{#1}
+\DeclareFieldFormat{parens}{\mkbibparens{#1}}
+\DeclareFieldFormat{quotes}{\mkbibquote{#1}}
+\DeclareFieldFormat{sentencecase}{\MakeSentenceCase{#1}}
+
+% Name formats (defaults set in biblatex.def):
\DeclareNameAlias{author}{sortname}
\DeclareNameAlias{afterword}{sortname}
@@ -712,33 +970,32 @@
\ifdefvoid{#3}{}{ #3}%
\ifdefvoid{#4}{}{, #4}}}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% Field Formats for Titles %%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Title formats:
-\DeclareFieldFormat{blogtitle}{\mkbibemph{#1}}
-\DeclareFieldFormat{bookbooktitle}{\mkbibemph{#1}}
-\DeclareFieldFormat{booktitle}{\mkbibemph{#1}}
-\DeclareFieldFormat{journaltitle}{\mkbibemph{#1}}
-\DeclareFieldFormat{labeltitle}{\mkbibemph{#1}}
-\DeclareFieldFormat{maintitle}{\mkbibemph{#1}}
-\DeclareFieldFormat{shortbooktitle}{\mkbibemph{#1}}
-\DeclareFieldFormat{title}{\mkbibemph{#1}}
+\DeclareFieldAlias{blogtitle}{emph}
+\DeclareFieldAlias{bookbooktitle}{emph}
+\DeclareFieldAlias{booktitle}{emph}
+\DeclareFieldAlias{journaltitle}{emph}
+\DeclareFieldAlias{labeltitle}{emph}
+\DeclareFieldAlias{maintitle}{emph}
+\DeclareFieldAlias{shortbooktitle}{emph}
+\DeclareFieldAlias{shortmaintitle}{emph}
+\DeclareFieldAlias{title}{emph}
\DeclareIndexFieldFormat{indextitle}{%
\usebibmacro{index:title}{\index}{\mkbibemph{#1}}}
\renewbibmacro*{index:title}[2]{%
\usebibmacro{index:field}{#1}{\thefield{indexsorttitle}}{#2}}%
-\DeclareFieldFormat{blogtitleaddon}{\mkbibparens{#1}}
-\DeclareFieldFormat{journaltitleaddon}{\mkbibbrackets{#1}}
-\DeclareFieldFormat{titleaddon}{\mkbibbrackets{#1}}
+\DeclareFieldAlias{blogtitleaddon}{parens}
+\DeclareFieldAlias{journaltitleaddon}{brackets}
+\DeclareFieldAlias{titleaddon}{brackets}
\DeclareFieldFormat[article,incollection,online,reference,review,thesis]
{title}{\mkbibquote{#1}}
\DeclareFieldFormat[article,incollection,online,reference,review,thesis]
{labeltitle}{\mkbibquote{#1}}
-\DeclareIndexFieldFormat[article,incollection,online,reference,review,thesis]
+\DeclareIndexFieldFormat[article,incollection,reference,review,thesis]
{indextitle}{\usebibmacro{index:title}{\index}{\mkbibquote{#1}}}
\DeclareFieldFormat[letter,misc,patent]{title}{#1}
@@ -746,13 +1003,13 @@
\DeclareIndexFieldFormat[letter,misc,patent]
{indextitle}{\usebibmacro{index:title}{\index}{#1}}
-\DeclareFieldAlias[inbook]{title}{title}
-\DeclareFieldAlias[inbook]{labeltitle}{labeltitle}
+\DeclareFieldAlias[inbook]{title}{emph}
+\DeclareFieldAlias[inbook]{labeltitle}{emph}
\DeclareIndexFieldAlias[inbook]{indextitle}{indextitle}
-\DeclareFieldAlias[book]{origtitle}{title}
+\DeclareFieldAlias[book]{origtitle}{emph}
\DeclareFieldFormat{chapter}{\bibstring{chapter}\space #1}
-\DeclareFieldFormat{issuetitle}{\ifcapital{\MakeCapital{#1}}{#1}}
+\DeclareFieldAlias{issuetitle}{noformat}
\DeclareFieldFormat[unpublished]
{title}{\usebibmacro{unpublished:format}{#1}}
@@ -766,20 +1023,18 @@
{\mkbibquote{#1}}%
{#1}}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% Other Field Formats %%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Other field formats:
-\DeclareFieldFormat{addendum}{\ifcapital{\MakeCapital{#1}}{#1}}%
+\DeclareFieldAlias{addendum}{ifcapital}
\DeclareFieldFormat{annotation}{\\[\bibitemsep] #1}
\DeclareFieldAlias{doi}{url}
\DeclareFieldFormat{edition}{%
\ifinteger{#1}
{\mkbibordedition{#1}~\bibstring{edition}}%
{\ifcapital{\MakeCapital{#1}}{#1}}}
-\DeclareFieldFormat{endmonth}{\mkbibmonth{#1}}%
-\DeclareFieldFormat{howpublished}{\ifcapital{\MakeCapital{#1}}{#1}}%
-\DeclareFieldFormat{issue}{\MakeCapital{#1}}% always capitalize
+\DeclareFieldAlias{endmonth}{month}
+\DeclareFieldAlias{howpublished}{ifcapital}
+\DeclareFieldAlias{issue}{capital}
\DeclareFieldFormat{journum}{%
\ifnumeral{#1}
{no\adddotspace\printfield{number}}%
@@ -789,28 +1044,58 @@
and test {\iffieldundef{bookyear}}}
{\biblcstring{#1}}%
{\ifbibstring{#1}{\bibstring{#1}}{\stripzeros{#1}}}}
-\DeclareListFormat{location}{#1}%
+\DeclareListFormat{location}{#1}
\DeclareFieldFormat{month}{\mkbibmonth{#1}}%
-\DeclareFieldFormat{note}{\ifcapital{\MakeCapital{#1}}{#1}}%
-\DeclareFieldFormat{pages}{#1}
+\DeclareFieldAlias{note}{ifcapital}
+\DeclareFieldAlias{pages}{noformat}
\DeclareFieldFormat{part}{\bibstring{part}\space#1}
-\DeclareFieldFormat{postnote}{#1}
+\DeclareFieldAlias{postnote}{noformat}
\DeclareListFormat{publisher}{#1}
-\DeclareFieldFormat{pubstate}{\ifcapital{\MakeCapital{#1}}{#1}}%
-\DeclareFieldFormat{season}{\MakeCapital{#1}}% always capitalize
-\DeclareFieldFormat{series}{\ifcapital{\MakeCapital{#1}}{#1}}
+\DeclareFieldAlias{pubstate}{ifcapital}
+\DeclareFieldAlias{season}{capital}% deprecated
+\DeclareFieldAlias{series}{ifcapital}
+\DeclareFieldAlias{yeardivision}{capital}
% A shorthand should be italicized if the title that it abbreviates is
% also italicized. See CMOS, 17th ed., 14.60. Set italics for it in
% the bibliography database with '\emph{}' or '\mkbibemph{}'.
-\DeclareFieldFormat{shorthand}{#1}
-\DeclareFieldFormat{shorthandintro}{\ifcapital{\MakeCapital{#1}}{#1}}%
-\DeclareFieldFormat{shorthandwidth}{#1}
-\DeclareFieldFormat{type}{\ifcapital{\MakeCapital{#1}}{#1}}%
+\DeclareFieldAlias{shorthand}{noformat}
+\DeclareFieldFormat[article,incollection,online,reference,review,thesis]
+ {shorthand}{\mkbibquote{#1}}
+\DeclareFieldAlias{shorthandintro}{ifcapital}
+\DeclareFieldAlias{type}{ifcapital}
\DeclareFieldFormat{url}{\url{#1}}
\DeclareFieldFormat{urldate}{\bibstring{urlseen}\space#1}
+\newbibmacro*{test:format}[2]{%
+ \iftoggle{noformat:#1}
+ {\iftoggle{ifcapital:#1}
+ {\usebibmacro{print:#2}{#1}{noformat}{ifcapital}}%
+ {\iftoggle{sentencecase:#1}
+ {\usebibmacro{print:#2}{#1}{noformat}{sentencecase}}%
+ {\usebibmacro{print:#2}{#1}{noformat}{noformat}}}}
+ {\iftoggle{sentencecase:#1}
+ {\iftoggle{emph:#1}
+ {\usebibmacro{print:#2}{#1}{emph}{sentencecase}}%
+ {\iftoggle{quotes:#1}
+ {\usebibmacro{print:#2}{#1}{quotes}{sentencecase}}%
+ {\usebibmacro{print:#2}{#1}{#1}{sentencecase}}}}
+ {\iftoggle{emph:#1}
+ {\iftoggle{ifcapital:#1}
+ {\usebibmacro{print:#2}{#1}{emph}{ifcapital}}%
+ {\usebibmacro{print:#2}{#1}{emph}{noformat}}}
+ {\iftoggle{quotes:#1}
+ {\iftoggle{ifcapital:#1}
+ {\usebibmacro{print:#2}{#1}{quotes}{ifcapital}}%
+ {\usebibmacro{print:#2}{#1}{quotes}{noformat}}}
+ {\iftoggle{ifcapital:#1}
+ {\usebibmacro{print:#2}{#1}{#1}{ifcapital}}%
+ {\usebibmacro{print:#2}{#1}{#1}{noformat}}}}}}}
+
+\newbibmacro*{print:field}[3]{%
+ \printtext[#2]{\printfield[#3]{#1}}}
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Bibliography Aliases %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1464,20 +1749,23 @@
\iffieldundef{#1title}
{}
{\renewcommand*{\xtitle}{#1}%
- \iftoggle{shortlinks}
- {\printtext[bibhyperref]{%
- \usebibmacro{title+subtitle}{#1}}}
- {\usebibmacro{title+subtitle}{#1}}%
+ \usebibmacro{title+shortlinks}{#1}%
\usebibmacro{titleaddon}{#1}%
\clearfield{#1title}}}
-\newbibmacro*{title+subtitle}[1]{%
- \printtext[#1title]{%
- \printfield[noformat]{#1title}%
- \iffieldundef{#1subtitle}
+\newbibmacro*{title+shortlinks}[1]{%
+ \iftoggle{shortlinks}
+ {\printtext[bibhyperref]{%
+ \usebibmacro{test:format}{#1title}{title}}}
+ {\usebibmacro{test:format}{#1title}{title}}}
+
+\newbibmacro*{print:title}[3]{%
+ \printtext[#2]{%
+ \printfield[#3]{#1}%
+ \iffieldundef{\xtitle subtitle}
{}
{\subtitlepunct
- \printfield[noformat]{#1subtitle}}%
+ \printfield[#3]{\xtitle subtitle}}%
\isdot}}%
\newbibmacro*{titleaddon}[1]{%
@@ -1486,11 +1774,6 @@
{\addspace% '\space' has issues with quotation marks
\printfield{#1titleaddon}}}
-\newbibmacro*{shorttitle+shortlinks}{%
- \iftoggle{shortlinks}
- {\printtext[bibhyperref]{\usebibmacro{shorttitle+crossref}{}}}
- {\usebibmacro{shorttitle+crossref}{}}}
-
\newbibmacro*{shorttitle+crossref}[1]{%
\ifboolexpr{ togl {collection:#1bk}
and togl {swapvol}}
@@ -1501,11 +1784,13 @@
{\usebibmacro{shorttitle}{label}}}}
\newbibmacro*{shorttitle}[1]{%
+ \renewcommand*{\xtitle}{#1}%
+ \clearfield{#1subtitle}%
\ifstrequal{#1}{label}
- {\printfield[\thefield{entrytype}]{labeltitle}\isdot}%
+ {\usebibmacro{title+shortlinks}{label}}%
{\iffieldundef{short#1title}
- {\printfield[#1title]{#1title}\isdot}%
- {\printfield[#1title]{short#1title}\isdot}}}
+ {\usebibmacro{title+shortlinks}{#1}}%
+ {\usebibmacro{title+shortlinks}{short#1}}}}
\renewbibmacro*{booktitle}{%
\iffieldundef{booktitle}
@@ -1648,28 +1933,25 @@
\newbibmacro*{issue+month+etc}[1]{%
\iffieldundef{year}
- {\setunit{\space}%
- \iffieldundef{month}
- {\usebibmacro{pubstate}{parens}}%
- {\printtext[parens]{\printdate}}}
+ {\ifstrequal{#1}{parens}
+ {\setunit{\space}}%
+ {\setunit{\addcomma\space}}%
+ \usebibmacro{pubstate}{#1}}%
{\ifboolexpr{ test {\iffieldundef{volume}}
and test {\iffieldundef{number}}}
- {\iffieldundef{journal}
- {}
- {\setunit{\addcomma\space}}%
- \iffieldundef{month}
+ {\iffieldundef{month}
{\usebibmacro{issue+season+year}}%
{\usebibmacro{reflist+year+day}%
\printdate}}%
{\iffieldundef{month}
- {\usebibmacro{reflist+issue+season}}%
- {\ifstrequal{#1}{noparens}
- {\usebibmacro{reflist+year+day}%
- \newunit
- \usebibmacro{pubstate}{date}}%
- {\usebibmacro{reflist+year+day}%
- \setunit{\space}%
- \printtext[parens]{\printdate}}}}}}
+ {\setunit{\space}%
+ \usebibmacro{reflist+issue+season}}%
+ {\usebibmacro{reflist+year+day}%
+ \ifstrequal{#1}{parens}
+ {\setunit{\space}%
+ \printtext[parens]{\printdate}}%
+ {\newunit
+ \usebibmacro{pubstate}{date}}}}}}
\newbibmacro*{pubstate}[1]{%
\iftoggle{authposition}
@@ -1694,21 +1976,27 @@
\setunit{\addcomma\space}}%
{\ifstrequal{#1}{parens}
{\printtext[parens]{\printfield{pubstate}}}
- {\printfield{pubstate}}}}}% needs '%'
- \clearfield{pubstate}}}}
+ {\printfield{pubstate}}}}}}}}
\newbibmacro*{labeldate+date}[1]{%
\ifstrequal{#1}{label}
{\printlabeldate}%
{\ifstrequal{#1}{date}
- {\printdate}%
+ {\ifboolexpr{ test {\iffieldundef{year}}
+ and test {\iffieldundef{month}}}
+ {\iffieldundef{yeardivision}
+ {\printfield{season}}% deprecated
+ {\printfield{yeardivision}}}
+ {\printdate}}%
{}}}
\newbibmacro*{reflist+year+day}{%
\ifboolexpr{ togl {bibliography}
and togl {reflist}
- and test {\iffieldundef{day}}}
- {\iffieldundef{endyear}
+ and test {\iffieldundef{day}}
+ and test {\iffieldundef{season}}% deprecated
+ and test {\iffieldundef{yeardivision}}}
+ {\iffieldundef{endyear}
{\clearfield{year}}%
{\iffieldsequal{year}{endyear}
{\clearfield{year}%
@@ -1716,32 +2004,28 @@
{}}}
{}}
-% Treat 'season' as an alternative for 'issue'.
+% Treat 'yeardivision' and 'season' as alternatives for 'issue'.
+
+\newbibmacro*{issue+season+year}{%
+ \iffieldundef{issue}
+ {\usebibmacro{labeldate+date}{date}}%
+ {\ifboolexpr{ test {\iffieldundef{season}}% deprecated
+ and test {\iffieldundef{yeardivision}}}
+ {\printfield{issue}%
+ \setunit{\addspace}% not '\addspace'
+ \printfield{year}}%
+ {\usebibmacro{labeldate+date}{date}}}}
\newbibmacro*{reflist+issue+season}{%
\ifboolexpr{ togl {bibliography}
and togl {reflist}}
{\ifboolexpr{ test {\iffieldundef{issue}}
- and test {\iffieldundef{season}}}
+ and test {\iffieldundef{season}}% deprecated
+ and test {\iffieldundef{yeardivision}}}
{}
- {\setunit{\space}%
- \iffieldundef{issue}
- {\printtext[parens]{\printfield{season}}}
- {\printtext[parens]{\printfield{issue}}}}}
- {\setunit{\space}%
- \printtext[parens]{\usebibmacro{issue+season+year}}}}
-
-\newbibmacro*{issue+season+year}{%
- \ifboolexpr{ test {\iffieldundef{issue}}
- and test {\iffieldundef{season}}}
- {\printfield{year}}%
- {\iffieldundef{issue}
- {\printfield{season}%
- \space
- \printfield{year}}%
- {\printfield{issue}%
- \space
- \printfield{year}}}}
+ {\clearfield{year}%
+ \printtext[parens]{\usebibmacro{issue+season+year}}}}
+ {\printtext[parens]{\usebibmacro{issue+season+year}}}}
% Per CMOS, 17th ed., 14.119, print the publication year of the
% last-mentioned title.
@@ -1784,23 +2068,14 @@
{}
{\textendash\printfield{#1endyear}}}
-\newbibmacro*{month+season+year}{%
- \ifboolexpr{ togl {reflist}
+\newbibmacro*{year+month+day}[1]{%
+ \ifboolexpr{ togl {bibliography}
+ and togl {reflist}
and test {\iffieldundef{month}}
- and test {\iffieldundef{season}}}
+ and test {\iffieldundef{season}}% deprecated
+ and test {\iffieldundef{yeardivision}}}
{}
- {\iffieldundef{year}
- {\printlabeldate}% for 'n.d.'
- {\printdate
- \clearfield{year}}}}
-
-\newbibmacro*{year+month+day}{%
- \iffieldundef{year}
- {}
- {\iffieldundef{month}
- {\usebibmacro{reflist+year+day}%
- \printdate}%
- {\printdate}}}
+ {\usebibmacro{labeldate+date}{#1}}}
% For reference lists.
@@ -1936,12 +2211,12 @@
{\newunit}%
{\setunit{\addcomma\space}}%
\iffieldequalstr{type}{newsmag}
- {\usebibmacro{issue+month+etc}{noparens}%
+ {\usebibmacro{issue+month+etc}{}%
\usebibmacro{periodical:number}}%
{\usebibmacro{periodical:number}%
\iffieldequalstr{pubstate}{prepub}
- {\usebibmacro{issue+month+etc}{noparens}}%
- {\usebibmacro{issue+month+etc}{}}}% needs '%'
+ {\usebibmacro{issue+month+etc}{}}%
+ {\usebibmacro{issue+month+etc}{parens}}}% needs '%'
\toggletrue{edshift}%
\usebibmacro{edition}{noformat}}%
@@ -1957,7 +2232,8 @@
{\ifboolexpr{test {\iffieldundef{number}}
and test {\iffieldundef{month}}
and test {\iffieldundef{issue}}
- and test {\iffieldundef{season}}}
+ and test {\iffieldundef{season}}% deprecated
+ and test {\iffieldundef{yeardivision}}}
{\setunit{\addcolon}%
\printfield{pages}}%
{\setunit{\addcolon\space}%
@@ -1975,7 +2251,7 @@
\usebibmacro{author+bookauthor+etc}%
\usebibmacro{title+titleaddon}{}%
\newunit
- \usebibmacro{month+season+year}%
+ \usebibmacro{year+month+day}{date}%
\usebibmacro{type+typeaddon}%
\usebibmacro{note}%
\newunit
@@ -2108,7 +2384,7 @@
\usebibmacro{institution+venue}%
\printlist{location}%
\setunit*{\addcomma\space}%
- \usebibmacro{year+month+day}}%
+ \usebibmacro{year+month+day}{date}}%
\newbibmacro*{type+typeaddon}{%
\iffieldundef{type}
@@ -2141,7 +2417,7 @@
\usebibmacro{title+titleaddon}{}%
\usebibmacro{type+typeaddon}%
\setunit{\addcomma\space}%
- \usebibmacro{month+season+year}%
+ \usebibmacro{year+month+day}{label}%
\iffieldundef{type}
{\newunit
\usebibmacro{unpublished:collection}}%
@@ -2199,7 +2475,8 @@
{\ifboolexpr{ togl {bibliography}
and togl {reflist}
and test {\iffieldundef{issue}}
- and test {\iffieldundef{season}}
+ and test {\iffieldundef{season}}% deprecated
+ and test {\iffieldundef{yeardivision}}
and test {\iffieldundef{month}}
and not test {\iffieldundef{volume}}}
{\setunit{\space}%
@@ -2431,10 +2708,9 @@
\newbibmacro*{loc+pub+year}{%
\usebibmacro{loc+pub+etc}{}%
- \setunit{\addcomma\space}%
- \usebibmacro{month+season+year}%
- \setunit{\addcomma\space}%
- \usebibmacro{pubstate}{}}%
+ \iffieldundef{pubstate}
+ {\usebibmacro{year+month+day}{date}}%
+ {\usebibmacro{pubstate}{}}}
% Thanks to David Fussner's biblatex-chicago for pointing me to this
% command by Philipp Lehman. Source:
@@ -2679,7 +2955,7 @@
\usebibmacro{author+title+etc}%
\newunit
\usebibmacro{websites}%
- \usebibmacro{issue+month+etc}{}%
+ \usebibmacro{issue+month+etc}{parens}%
\usebibmacro{doi+finentry+etc}}%
\DeclareBibliographyDriver{patent}{%