summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/windycity
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-09-30 21:28:57 +0000
committerKarl Berry <karl@freefriends.org>2020-09-30 21:28:57 +0000
commited27c4e2ef9f9840065d1420c4d8b1fec0656f1d (patch)
tree15e9612931dbf1b9ba117de5384bff1f9bec857c /Master/texmf-dist/tex/latex/windycity
parentacc0e369555df911c4c094eb7d39c1936b3ea4fd (diff)
windycity (30sep20)
git-svn-id: svn://tug.org/texlive/trunk@56492 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/windycity')
-rw-r--r--Master/texmf-dist/tex/latex/windycity/american-windycity.lbx8
-rw-r--r--Master/texmf-dist/tex/latex/windycity/windycity.bbx90
-rw-r--r--Master/texmf-dist/tex/latex/windycity/windycity.cbx245
-rw-r--r--Master/texmf-dist/tex/latex/windycity/windycity.dbx2
4 files changed, 203 insertions, 142 deletions
diff --git a/Master/texmf-dist/tex/latex/windycity/american-windycity.lbx b/Master/texmf-dist/tex/latex/windycity/american-windycity.lbx
index c0fa89c3a08..f04e60e0a9b 100644
--- a/Master/texmf-dist/tex/latex/windycity/american-windycity.lbx
+++ b/Master/texmf-dist/tex/latex/windycity/american-windycity.lbx
@@ -1,4 +1,4 @@
-% Last modified: Mon 07 Sep 2020 06:40:46 PM CDT
+% Last modified: Tue 29 Sep 2020 06:29:33 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{american-windycity.lbx}[2020/09/07 Windy City
+\ProvidesFile{american-windycity.lbx}[2020/09/29 Windy City
localization module for biblatex]
\InheritBibliographyExtras{american}
\InheritBibliographyStrings{american}
@@ -135,6 +135,7 @@
\NewBibliographyString{special}
\NewBibliographyString{subverbo,subverbos}
\NewBibliographyString{transcomp,transcomp+,transed,transed+,translator+,transrev,transrev+}
+\NewBibliographyString{updated}
\DeclareBibliographyStrings{%
am = {{a\adddot m\adddot}{a\adddot m\adddot}},
@@ -161,7 +162,7 @@
edrev+ = {{edit\-ed and revised by}{eds\adddotspace and revs\adddot}},
edtrans = {{edit\-ed and translated by}{ed\adddotspace and trans\adddot}},
edtrans+ = {{edit\-ed and translated by}{eds\adddotspace and trans\adddot}},
- expanded = {{exp\adddotspace ed\adddot}{exp\adddotspace ed\adddot}},
+ expanded = {{expanded edition}{exp\adddotspace ed\adddot}},
foreword = {{foreword to}{foreword to}},
forthcoming = {{forthcoming}{forthcoming}},
ibidem = {{ibid\adddot}{ibid\adddot}},
@@ -204,6 +205,7 @@
translator+ = {{translated by}{trans\adddot}},
transrev = {{translated and revised by}{trans\adddotspace and rev\adddot}},
transrev+ = {{translated and revised by}{trans\adddotspace and revs\adddot}},
+ updated = {{updated edition}{up\adddotspace ed\adddot}},
urlseen = {{accessed}{accessed}},
volume = {{vol\adddot}{vol\adddot}},
volumes = {{vols\adddot}{vols\adddot}}
diff --git a/Master/texmf-dist/tex/latex/windycity/windycity.bbx b/Master/texmf-dist/tex/latex/windycity/windycity.bbx
index 0476af4784a..29bc593dddb 100644
--- a/Master/texmf-dist/tex/latex/windycity/windycity.bbx
+++ b/Master/texmf-dist/tex/latex/windycity/windycity.bbx
@@ -1,4 +1,4 @@
-% Last modified: Mon 07 Sep 2020 06:40:45 PM CDT
+% Last modified: Tue 29 Sep 2020 06:28:58 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}[2020/09/07 Windy City bibliography style
+\ProvidesFile{windycity.bbx}[2020/09/29 Windy City bibliography style
for biblatex]
\@ifpackagelater{biblatex}{2019/08/17}
{}
@@ -302,6 +302,8 @@
\DeclareDataInheritance{collection}{collection,inbook}{%
\inherit{year}{bookyear}
\inherit{endyear}{endbookyear}}
+\DeclareDataInheritance{reference}{reference}{%
+ \inherit{author}{bookauthor}}
\DeclareDataInheritance{*}{*}{%
\noinherit{crossref}
\noinherit{entryset}
@@ -319,9 +321,9 @@
\noinherit{sortkey}
\noinherit{xref}}
-%%%%%%%%%%%%%%%%%%%
-%% Preliminary %%
-%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Other Basic Settings %%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%
\let\cbx@bibstring\empty
\let\cbx@deflabel\empty
@@ -339,11 +341,13 @@
\providetoggle{authposition}
\providetoggle{bibliography}
+\providetoggle{ibid:loccit}
\providetoggle{journalfirst}
\providetoggle{multicite}
-\providetoggle{cbx@first}
-\providetoggle{cbx@loccit}
-\providetoggle{cbx@short}
+
+\providetoggle{cbx:collection}
+\providetoggle{cbx:first}
+\providetoggle{cbx:short}
\providetoggle{collection}
\providetoggle{collection:bk}
@@ -363,7 +367,7 @@
\newcommand*{\AtEveryItem}{%
\global\toggletrue{authposition}%
- \global\togglefalse{cbx@short}}%
+ \global\togglefalse{cbx:short}}%
\AtBeginBibliography{\AtBeginLists}%
\AtBeginShorthands{\AtBeginLists}%
@@ -371,6 +375,7 @@
\global\toggletrue{bibliography}%
\AtEveryItem}%
\AtEveryLositem{\AtEveryItem}%
+\DeclareNumChars{.[]?}
\defbibenvironment{reflist}
{\global\toggletrue{reflist}%
@@ -513,13 +518,13 @@
\DeclareFieldFormat[thesis,unpublished]{title}{%
\iftoggle{bibliography}
{\mkbibquote{#1}}%
- {\iftoggle{cbx@short}
+ {\iftoggle{cbx:short}
{\mkbibquote{#1}}%
{\mkbibquote{#1}\nopunct}}}
\DeclareFieldFormat[thesis]{labeltitle}{%
\iftoggle{bibliography}
{\mkbibquote{#1}}%
- {\iftoggle{cbx@short}
+ {\iftoggle{cbx:short}
{\mkbibquote{#1}}%
{\mkbibquote{#1}\nopunct}}}
@@ -556,8 +561,8 @@
\DeclareFieldFormat{season}{\MakeCapital{#1}}% always capitalize
% A shorthand should be italicized if the title that it abbreviates is
-% also italicized. See CMOS, 17th ed., 14.60. Set this in the
-% bibliography database with '\emph{}' or '\mkbibemph{}'.
+% 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}{%
@@ -626,6 +631,7 @@
{\usebibmacro{edtransuthpos}%
\ifnameundef{\cbx@namelist}
{\toggletrue{noauth}%
+ \usebibmacro{authpos+deflabel}%
\usebibmacro{journalfirst}}%
{\usebibmacro{addplus:authpos}%
\usebibmacro{namehash+etc}}}%
@@ -661,10 +667,9 @@
{\renewcommand*{\cbx@namelist}{bookauthor}}%
{\renewcommand*{\cbx@namelist}{shortbookauthor}}}
-% When 'journaltitle' or 'blogtitle' goes in the author's position.
+% When 'journaltitle' goes in the author's position.
\newbibmacro*{journalfirst}{%
- \usebibmacro{authpos+deflabel}%
\ifboolexpr{ ( test {\ifentrytype{article}}
or test {\ifentrytype{review}} )
and togl {bibliography}}
@@ -675,18 +680,34 @@
\clearlist{location}%
\usebibmacro{labeldate+extradate}%
\newunit}%
- {\ifboolexpr{ test {\ifentrytype{online}}
- and togl {bibliography}}
- {\toggletrue{journalfirst}%
- \usebibmacro{bibblogdash}%
- \setunit{\space}%
- \usebibmacro{labeldate+extradate}%
- \newunit}%
- {}}}
+ {\usebibmacro{blogtitlefirst}}}
+
+% When 'blogtitle' goes in the author's position.
+
+\newbibmacro*{blogtitlefirst}{%
+ \ifboolexpr{ test {\ifentrytype{online}}
+ and togl {bibliography}}
+ {\toggletrue{journalfirst}%
+ \usebibmacro{bibblogdash}%
+ \setunit{\space}%
+ \usebibmacro{labeldate+extradate}%
+ \newunit}%
+ {\usebibmacro{orgfirst}}}
+
+% When 'organization' goes in the author's position.
+
+\newbibmacro*{orgfirst}{%
+ \ifboolexpr{ test {\ifentrytype{reference}}
+ and not test {\iflistundef{organization}}}
+ {\printlist{organization}%
+ \setunit{\space}%
+ \newunit}%
+ {}}
\newbibmacro*{namehash+etc}{%
\usebibmacro{printnames+etc}%
- \iftoggle{authposition}% false in 'crossref' macro
+ \ifboolexpr{ togl {authposition}% false in 'crossref' macro
+ or togl {multicite}}
{\savefield{namehash}{\bbx@lasthash}%
\usebibmacro{authpos+deflabel}%
\newunit}%
@@ -872,7 +893,7 @@
{\renewcommand*{\cbx@bibstring}{editor}}}}}}}}}}}
\newbibmacro*{addplus:authpos}{%
- \iftoggle{cbx@short}
+ \iftoggle{cbx:short}
{}
{\usebibmacro{addplus}%
\renewcommand*{\plugb}{%
@@ -1161,7 +1182,7 @@
\let\pluga\empty
\let\plugb\empty}%
-% When 'journaltitle' goes in the author's position.
+% When a dash replaces 'journaltitle' in the author's position.
\newbibmacro*{bibjournaldash}{%
\ifboolexpr{ test {\iffieldequals{journaltitle}{\bbx@lasthash}}
@@ -1175,8 +1196,7 @@
\usebibmacro{longtitle+titleaddon}%
\let\xtitle\empty}}%
-% When 'blogtitle' goes in the author's position. This should only
-% apply when a blog has changed urls or host organizations.
+% When a dash replaces 'blogtitle' in the author's position.
\newbibmacro*{bibblogdash}{%
\ifboolexpr{ test {\iffieldequals{blogtitle}{\bbx@lasthash}}
@@ -1379,8 +1399,7 @@
%%%%%%%%%%%%%%%%%%%%%%%
% The next command should work well enough for most languages but can
-% be overridden by lbx files. This happens when windycity.bbx loads
-% american-windycity.lbx.
+% be overridden by lbx files.
\renewcommand*{\mkdaterangefull}[2]{%
\begingroup
@@ -1548,10 +1567,9 @@
\usebibmacro{reflist+origyear}%
\usebibmacro{labeldate+endyear}%
\printfield{extradate}%
- \ifboolexpr{ test {\iffieldundef{year}}
- or test {\ifnumeral{\thefield{year}}}}
- {\newunit}%
- {\bibsentence\newunit}}% if year enclosed in brackets
+ \iffieldnums{labelyear}
+ {\bibsentence\newunit}%
+ {\newunit}}% for 'n.d.'
{}}
\newbibmacro*{reflist+origyear}{%
@@ -2108,10 +2126,10 @@
\newbibmacro*{crossref}{%
\renewcommand*{\cbx@deflabel}{labelname}%
- \global\toggletrue{cbx@short}%
+ \global\toggletrue{cbx:short}%
\entrydata{\thefield{crossref}}{%
\iftoggle{reflist}
- {\usebibmacro{parencite:long}}%
+ {\usebibmacro{parencite:new}}%
{\usebibmacro{author+bookauthor+etc}%
\usebibmacro{shorttitle+crossref}}%
\usebibmacro{cite:volume}}}
diff --git a/Master/texmf-dist/tex/latex/windycity/windycity.cbx b/Master/texmf-dist/tex/latex/windycity/windycity.cbx
index d5d0a342b5d..3246927365a 100644
--- a/Master/texmf-dist/tex/latex/windycity/windycity.cbx
+++ b/Master/texmf-dist/tex/latex/windycity/windycity.cbx
@@ -1,4 +1,4 @@
-% Last modified: Mon 07 Sep 2020 06:40:45 PM CDT
+% Last modified: Tue 29 Sep 2020 06:29:14 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.cbx}[2020/09/07 Windy City citation style for
+\ProvidesFile{windycity.cbx}[2020/09/29 Windy City citation style for
biblatex]
\@ifpackagelater{biblatex}{2019/08/17}
{}
@@ -22,39 +22,32 @@
This is a fatal error. I'm aborting now.}%
\endinput}%
-% This file contains material only for formatting notes and
-% parenthetical citations. For content that is also used for
-% bibliographies and reference lists, see windycity.bbx.
+%%%%%%%%%%%%%%
+%% Basics %%
+%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%
-%% Preliminary %%
-%%%%%%%%%%%%%%%%%%%
-
-\InitializeCitationStyle{\let\crossreflist\empty}%
-\DeclareAutoPunctuation{.,;:!?}
-\DeclareCitePunctuationPosition{cite}{r}
\AtEveryCite{%
\global\togglefalse{bibliography}%
+ \global\togglefalse{cbx:first}%
+ \global\togglefalse{ibid:loccit}%
\global\togglefalse{multicite}%
- \global\togglefalse{cbx@first}%
- \global\togglefalse{cbx@loccit}%
\AtEveryItem}%
\AtEveryMultiCite{\toggletrue{multicite}}%
+\DeclareAutoPunctuation{.,;:!?}
+\DeclareCitePunctuationPosition{cite}{r}
+\InitializeCitationStyle{\let\crossreflist\empty}%
\renewcommand{\bibfootnotewrapper}[1]{%
\bibsentence#1}%
\renewcommand{\bibendnotewrapper}[1]{%
\bibsentence#1}%
-\providetoggle{cite:collection}
-\providetoggle{cite:long}
-
-% Protect commas against abbreviation dots and terminal punctuation
-% marks. Note '\addspace'. Using '\space' there causes problems.
+% Protect commas against abbreviation dots and terminal punctuation.
+% Note '\addspace'. Using '\space' there causes problems.
\renewcommand*{\newunitpunct}{\ifterm{,\addspace}{\addcomma\space}}%
-% Prevents errant space after a colon.
+% Prevent errant space after a colon.
\renewcommand*{\multicitedelim}{\setunit{\addsemicolon\space}}%
@@ -128,7 +121,6 @@
\DeclareCiteCommand{\textcite}
{\usebibmacro{prenote}}%
{\usebibmacro{citeindex}%
- \usebibmacro{test:multicite}%
\usebibmacro{cite}}%
{\multicitedelim}%
{\usebibmacro{postnote}}%
@@ -137,7 +129,6 @@
{\usebibmacro{prenote}}%
{\usebibmacro{citeindex}%
\toggletrue{noauth}%
- \usebibmacro{test:multicite}%
\usebibmacro{cite}}%
{\multicitedelim}%
{\usebibmacro{postnote}}%
@@ -149,27 +140,32 @@
\newbibmacro*{parencite}{%
\ifboolexpr{ test \ifciteibid
and not test \iffirstonpage}
- {\iffieldundef{postnote}
+ {\usebibmacro{test:collection}%
+ \iffieldundef{postnote}
{\printtext[bibhyperref]{%
\usebibmacro{parencite:date}%
\usebibmacro{cite:volume}}}
{}}
- {\ifboolexpr{ test {\ifentrytype{book}}
- or test {\ifentrytype{collection}}
- or test {\ifentrytype{incollection}}
- or test {\ifentrytype{inbook}}
- or test {\ifentrytype{letter}}}
- {\usebibmacro{test:crossref}}%
- {}% needs '%'
- \printtext[bibhyperref]{%
- \usebibmacro{parencite:long}%
- \usebibmacro{cite:volume}}}}
+ {\usebibmacro{test:collection}%
+ \usebibmacro{parencite:crossref}%
+ \usebibmacro{parencite:multicite}}}
\newbibmacro*{parencite:date}{%
\iffieldundef{labelyear}
{}
{\usebibmacro{parencite:origyear}%
- \ifboolexpr{ test {\iffieldundef{year}}
+ \iffieldnums{labelyear}
+ {}% needs '%'
+ {\addcomma}%
+ \usebibmacro{labeldate+endyear}%
+ \printfield{extradate}}}
+
+\newbibmacro*{parencite:date+old}{%
+ \iffieldundef{labelyear}
+ {}
+ {\usebibmacro{parencite:origyear}%
+ \ifboolexpr{ ( test {\iffieldundef{year}}
+ and test {\iffieldundef{urlyear}} )
or test {\iffieldequalstr{year}{forthcoming}}}
{\addcomma}%
{}% needs '%'
@@ -182,7 +178,29 @@
{\printfield[brackets]{origyear}%
\space}}%
-\newbibmacro*{parencite:long}{%
+\newbibmacro*{parencite:crossref}{%
+ \ifboolexpr{ test {\ifentrytype{book}}
+ or test {\ifentrytype{collection}}
+ or test {\ifentrytype{incollection}}
+ or test {\ifentrytype{inbook}}
+ or test {\ifentrytype{letter}}}
+ {\usebibmacro{test:crossref}}%
+ {}}
+
+\newbibmacro*{parencite:multicite}{%
+ \ifboolexpr{ test {\iffieldequals{namehash}{\bbx@lasthash}}
+ and togl {multicite}}
+ {\iffieldundef{postnote}
+ {\newunit}%
+ {}% needs '%'
+ \printtext[bibhyperref]{%
+ \usebibmacro{parencite:date}%
+ \usebibmacro{cite:volume}}}
+ {\printtext[bibhyperref]{%
+ \usebibmacro{parencite:new}%
+ \usebibmacro{cite:volume}}}}
+
+\newbibmacro*{parencite:new}{%
\iffieldundef{shorthand}
{\usebibmacro{parencite:auth+title}}%
{\printfield{shorthand}}%
@@ -197,7 +215,7 @@
{\iffieldundef{label}
{\usebibmacro{parencite:journal}}%
{\printfield{label}}}
- {\global\toggletrue{cbx@short}%
+ {\global\toggletrue{cbx:short}%
\renewcommand*{\cbx@deflabel}{labelname}%
\clearfield{handle}%
\clearfield{nameaddon}%
@@ -221,7 +239,6 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%
\newbibmacro*{cite}{%
- \usebibmacro{test:multicite}%
\ifciteseen
{\usebibmacro{test:collection}%
\renewcommand*{\cbx@deflabel}{labelname}%
@@ -229,13 +246,6 @@
{\printtext[bibhyperref]{\usebibmacro{cite:new}}}% needs '%'
\usebibmacro{savefields}}%
-\newbibmacro*{test:multicite}{%
- \ifboolexpr{ test {\iffieldequals{namehash}{\bbx@lasthash}}
- and togl {multicite}
- and togl {short}}
- {\toggletrue{noauth}}%
- {}}
-
\newbibmacro*{cite:seen}{%
\iffieldundef{shorthand}
{\ifboolexpr{ test \ifciteibid
@@ -250,9 +260,9 @@
\iftoggle{ibid}
{\bibcpstring{ibidem}%
\ifloccit
- {\global\toggletrue{cbx@loccit}}%
+ {\global\toggletrue{ibid:loccit}}%
{\usebibmacro{cite:volume}}}
- {\global\toggletrue{cbx@short}%
+ {\global\toggletrue{cbx:short}%
\ifentrytype{review}
{\usebibmacro{ibid:review}}%
{\usebibmacro{author+bookauthor+etc}%
@@ -270,13 +280,21 @@
\usebibmacro{cite:volume}}%
\newbibmacro*{cite:short}{%
- \global\toggletrue{cbx@short}%
+ \global\toggletrue{cbx:short}%
+ \usebibmacro{short:multicite}%
\ifentrytype{review}
{\usebibmacro{short:review}}%
{\usebibmacro{author+bookauthor+etc}%
\usebibmacro{title+labelyear}%
\usebibmacro{cite:volume}}}
+\newbibmacro*{short:multicite}{%
+ \ifboolexpr{ test {\iffieldequals{namehash}{\bbx@lasthash}}
+ and togl {multicite}
+ and togl {short}}
+ {\toggletrue{noauth}}%
+ {}}
+
\newbibmacro*{short:review}{%
\ifnameundef{author}
{\bibcpstring{reviewnoauth}}%
@@ -291,7 +309,7 @@
\usebibmacro{cite:volume}}%
\newbibmacro*{cite:volume}{%
- \newunit
+ \usebibmacro{cite:punctuation}%
\iftoggle{swapvol}
{\ifboolexpr{ togl {collection:bk}
or togl {collection:ib}}
@@ -299,6 +317,27 @@
{}}
{}}
+\newbibmacro*{cite:punctuation}{%
+ \iffieldstart{postnote}{;}
+ {}
+ {\newunit}}%
+
+% Thanks to David Fussner's biblatex-chicago for pointing me to this
+% command by Philipp Lehman. Source:
+% https://groups.google.com/forum/#!topic/comp.text.tex/kG003fkZK1I
+
+\newrobustcmd*{\iffieldstart}[2]{%
+ \iffieldundef{#1}
+ {\@gobbletwo}%
+ {\begingroup
+ \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}}%
+
\newbibmacro*{volume+page}{%
\iffieldundef{volume}
{}
@@ -308,8 +347,8 @@
{\printfield{volume}}}}
\newbibmacro*{cite:new}{%
- \global\toggletrue{cbx@first}%
- \usebibmacro{deflabel}%
+ \global\toggletrue{cbx:first}%
+ \usebibmacro{idem+short+multicite}%
\iftoggle{firstshort}
{\usebibmacro{cite:short}}%
{\printtext{%
@@ -322,11 +361,14 @@
% 'true') the test below will print 'labelname' if it matches that of
% the previous citation.
-\newbibmacro*{deflabel}{%
+\newbibmacro*{idem+short+multicite}{%
\ifboolexpr{ test {\ifciteidem}
or togl {firstshort}}
{\renewcommand*{\cbx@deflabel}{labelname}}%
- {\renewcommand*{\cbx@deflabel}{default}}}
+ {\ifboolexpr{ test {\iffieldequals{namehash}{\bbx@lasthash}}
+ and togl {multicite}}
+ {\renewcommand*{\cbx@deflabel}{labelname}}%
+ {\renewcommand*{\cbx@deflabel}{default}}}}
% Checking for 'title' below helps if you cross-reference volumes to a
% collection with entries containing just 'volume' and 'crossref'
@@ -335,22 +377,15 @@
\newbibmacro*{test:crossref}{%
\ifboolexpr{ test {\iffieldundef{crossref}}
or test {\iffieldundef{title}}}
- {\toggletrue{cite:long}}%
+ {}
{\xifinlist{\thefield{crossref}}{\crossreflist}
- {\toggletrue{cite:collection}%
+ {\toggletrue{cbx:collection}%
\stepcounter{\thefield{crossref}}}
- {\toggletrue{cite:long}%
- \listxadd{\crossreflist}{\thefield{crossref}}%
+ {\listxadd{\crossreflist}{\thefield{crossref}}%
\ifcsdef{c@\thefield{crossref}}
{\setcounter{\thefield{crossref}}{0}}%
{\newcounter{\thefield{crossref}}}}}}
-\newbibmacro*{cite:long}{%
- \printtext{%
- \usedriver
- {\DeclareNameAlias{sortname}{default}}%
- {cite:\thefield{entrytype}}}}
-
\newbibmacro*{savefields}{%
\iffieldundef{crossref}
{\let\cbx@keyhash\empty}%
@@ -371,6 +406,30 @@
{\newunit}%
{\setunit{\addcolon\space}}}}}
+\newbibmacro*{reference:authpos}{%
+ \iflistundef{organization}
+ {\ifnameundef{bookauthor}
+ {\renewcommand*{\cbx@namelist}{author}}%
+ {\renewcommand*{\cbx@namelist}{bookauthor}}%
+ \usebibmacro{printnames+etc}}%
+ {\printlist{organization}%
+ \clearlist{organization}}}
+
+\newbibmacro*{reference:howpublished+etc}{%
+ \ifboolexpr{ test {\iffieldundef{howpublished}}
+ and test {\iffieldundef{year}}}
+ {}
+ {\setunit{\addspace}%
+ \iffieldundef{howpublished}
+ {\printtext[parens]{\printfield{year}}}
+ {\global\togglefalse{cbx:first}%
+ \printtext[parens]{%
+ \printfield{howpublished}%
+ \newunit
+ \printfield{version}%
+ \newunit
+ \printfield{year}}}}}
+
%%%%%%%%%%%%%%%%
%% Postnote %%
%%%%%%%%%%%%%%%%
@@ -379,11 +438,13 @@
\usebibmacro{postnote+etc}%
\usebibmacro{postpunct+etc}}%
+% In this context, '\ifloccit' is always true. Run it earlier, in
+% 'cite:ibid', and record the state with 'ibid:loccit'.
+
\newbibmacro*{postnote+etc}{%
- \ifboolexpr{ togl {cbx@loccit}
- and togl {ibid}}
+ \iftoggle{ibid:loccit}
{}
- {\iftoggle{cbx@first}
+ {\iftoggle{cbx:first}
{\usebibmacro{postnote:first}%
\usebibmacro{shorthand+intro}}%
{\usebibmacro{postnote}}}}
@@ -400,10 +461,10 @@
% If the postnote is empty, print the page ranges of journal and
% review articles. See CMOS, 17th ed., 14.153, 14.167, and 14.174. As
% for incollection and inbook entries, 14.106 seems to suggest the
-% same, but the example in 14.30 suggests otherwise. The examples in
-% 14.108 don't help. For magazines, CMOS is clear that the range can
-% be left out. To do so, simply omit it from your bibliography
-% database.
+% same, but the example in 14.30 suggests otherwise, while the
+% examples in 14.108 don't help. For magazines, CMOS is clear that the
+% range can be left out. To do so, simply omit it from your
+% bibliography database.
\newbibmacro*{cite:pages}{%
\iffieldundef{pages}
@@ -438,21 +499,6 @@
{}}
{}}
-\newbibmacro*{refworks}{%
- \ifboolexpr{ test {\iffieldundef{howpublished}}
- and test {\iffieldundef{year}}}
- {}
- {\setunit{\addspace}%
- \iffieldundef{howpublished}
- {\printtext[parens]{\printfield{year}}}
- {\global\togglefalse{cbx@first}%
- \printtext[parens]{%
- \printfield{howpublished}%
- \newunit
- \printfield{version}%
- \newunit
- \printfield{year}}}}}
-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Bibliography Drivers for Notes %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -464,29 +510,25 @@
\DeclareBibliographyDriver{cite:book}{%
\usebibmacro{test:crossref}%
- \iftoggle{cite:long}
+ \iftoggle{cbx:collection}
+ {\usebibmacro{author+incollection+etc}%
+ \usebibmacro{crossref}}%
{\usebibmacro{author+collection+etc}%
- \newunit
- \usebibmacro{volume+page}}%
- {\iftoggle{cite:collection}
- {\usebibmacro{author+incollection+etc}%
- \usebibmacro{crossref}}%
- {}}}
+ \usebibmacro{cite:punctuation}%
+ \usebibmacro{volume+page}}}
\DeclareBibliographyDriver{cite:incollection}{%
\ifentrytype{letter}
{\toggletrue{noauth}}%
{}% needs '%'
\usebibmacro{test:crossref}%
- \iftoggle{cite:long}
+ \iftoggle{cbx:collection}
+ {\usebibmacro{author+incollection+etc}%
+ \usebibmacro{crossref}}%
{\usebibmacro{author+incollection+etc}%
\usebibmacro{incollections}%
- \newunit
- \usebibmacro{volume+page}}%
- {\iftoggle{cite:collection}
- {\usebibmacro{author+incollection+etc}%
- \usebibmacro{crossref}}%
- {}}}
+ \usebibmacro{cite:punctuation}%
+ \usebibmacro{volume+page}}}
\DeclareBibliographyDriver{cite:misc}{%
\usebibmacro{author+bookauthor+etc}%
@@ -509,16 +551,15 @@
\newunit}%
\DeclareBibliographyDriver{cite:reference}{%
- \printlist{organization}%
+ \usebibmacro{reference:authpos}%
\usebibmacro{edition}{}%
- \usebibmacro{refworks}%
+ \usebibmacro{reference:howpublished+etc}%
\newunit
\bibstring{subverbo}\space
\usebibmacro{longtitle+titleaddon}%
\newunit
\renewcommand*{\pluga}{\bibstring{by}\space}%
- \renewcommand*{\cbx@namelist}{author}%
- \usebibmacro{printnames+etc}}%
+ \usebibmacro{reference:authpos}}%
\DeclareBibliographyDriver{cite:review}{%
\usebibmacro{reviews}%
diff --git a/Master/texmf-dist/tex/latex/windycity/windycity.dbx b/Master/texmf-dist/tex/latex/windycity/windycity.dbx
index db9f2a22fd7..231c4210a52 100644
--- a/Master/texmf-dist/tex/latex/windycity/windycity.dbx
+++ b/Master/texmf-dist/tex/latex/windycity/windycity.dbx
@@ -1,4 +1,4 @@
-\ProvidesFile{windycity.dbx}[2020/09/07 Windy City data model file for
+\ProvidesFile{windycity.dbx}[2020/09/29 Windy City data model file for
biblatex]
\DeclareDatamodelFields[type=field,datatype=literal]{%
blogsubtitle,