summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/biblatex-chicago.sty
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/biblatex-chicago.sty')
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/biblatex-chicago.sty144
1 files changed, 126 insertions, 18 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/biblatex-chicago.sty b/macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/biblatex-chicago.sty
index 8bb142ce52..2497d4df31 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/biblatex-chicago.sty
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/biblatex-chicago.sty
@@ -1,6 +1,4 @@
-% $Id: biblatex-chicago.sty,v 0.1.1.63 2018/01/10 17:37:15 dfussner Exp $
-
-% Copyright (c) 2009-2018 David Fussner. This package is
+% Copyright (c) 2009-2020 David Fussner. This package is
% author-maintained.
%
% This work may be copied, distributed and/or modified under the
@@ -13,22 +11,27 @@
% but not limited to, the implied warranties of merchantability and
% fitness for a particular purpose.
-\ProvidesPackage{biblatex-chicago}[2018/01/10 v 3.10 biblatex style]
+\ProvidesPackage{biblatex-chicago}[2020/04/20 v 3.14 biblatex style]
\RequirePackage{etoolbox}
+\RequirePackage{nameref}
+\RequirePackage{xstring}
\DeclareOption{authordate}{\def\cms@style{authordate}}
\DeclareOption{notes}{\def\cms@style{notes}}
\DeclareOption{authordate-trad}{\def\cms@style{authordatetrad}}
-\DeclareOption{authordate15}{\def\cms@style{authordateold}}
-\DeclareOption{notes15}{\def\cms@style{notesold}}
+\DeclareOption{authordate16}{\def\cms@style{authordateold}}
+\DeclareOption{notes16}{\def\cms@style{notesold}}
+\DeclareOption{authordate-trad16}{\def\cms@style{authordatetrold}}
\DeclareOption*{\eappto\cms@options{\CurrentOption,}}
\let\cms@options\empty
\ExecuteOptions{notes}%
\newtoggle{cms@nomark}
+\newtoggle{cms@urlbreak}
\DeclareOption{footmarkoff}{\global\toggletrue{cms@nomark}}
+\DeclareOption{cmsbreakurl}{\global\toggletrue{cms@urlbreak}}
\DeclareOption{natbib}{%
\PassOptionsToPackage{natbib}{biblatex}}
@@ -53,8 +56,10 @@
\def\cms@authordate{%
\RequirePackage[style=chicago-authordate]{biblatex}%
\ExecuteBibliographyOptions{%
- pagetracker=true,autocite=inline,alldates=comp,
- uniquename=minfull,useeditor=true,usetranslator=true,usenamec=true,
+ pagetracker=true,autocite=inline,alldates=comp,labeldateparts=true,
+ citetracker=true,uniquename=minfull,useeditor=true,usetranslator=true,
+ usenamec=true,alltimes=12h,urltime=24h,datecirca=true,datezeros=false,
+ dateuncertain=true,timezones=true,compressyears=true,
ibidtracker=constrict,sorting=cms,punctfont,cmslos=true,nodates,
uniquelist=minyear,maxbibnames=10,minbibnames=7,sortcase=false,
abbreviate=false,dateabbrev=false,avdate=true}}
@@ -66,32 +71,53 @@
citetracker=true,ibidtracker=constrict,usetranslator=true,
usenamec=true,loccittracker=constrict,dateabbrev=false,
maxbibnames=10,minbibnames=7,sorting=cms,sortcase=false,
- uniquework=true}}
+ labeltitle=true,alltimes=12h,urltime=24h,timezones=true,
+ datezeros=false,datecirca=true,dateuncertain=true,compressyears=true,
+ nodates=true}}
\def\cms@authordatetrad{%
\RequirePackage[style=chicago-authordate-trad]{biblatex}%
\ExecuteBibliographyOptions{%
- pagetracker=true,autocite=inline,alldates=comp,
- uniquename=minfull,useeditor=true,usetranslator=true,usenamec=true,
+ pagetracker=true,autocite=inline,alldates=comp,labeldateparts=true,
+ citetracker=true,uniquename=minfull,useeditor=true,usetranslator=true,
+ usenamec=true,alltimes=12h,urltime=24h,datecirca=true,datezeros=false,
+ dateuncertain=true,timezones=true,compressyears=true,
ibidtracker=constrict,sorting=cms,punctfont,cmslos=true,nodates,
uniquelist=minyear,maxbibnames=10,minbibnames=7,sortcase=false,
abbreviate=false,dateabbrev=false,avdate=true}}
\def\cms@authordateold{%
- \RequirePackage[style=chicago-authordate15]{biblatex}%
+ \RequirePackage[style=chicago-authordate16]{biblatex}%
\ExecuteBibliographyOptions{%
- pagetracker=true,autocite=inline,alldates=comp,
- uniquename=minfull,useeditor=true,usetranslator=true,usecompiler=true,
+ pagetracker=true,autocite=inline,alldates=comp,labeldateparts=true,
+ citetracker=true,uniquename=minfull,useeditor=true,usetranslator=true,
+ usenamec=true,alltimes=12h,urltime=24h,datecirca=true,datezeros=false,
+ dateuncertain=true,timezones=true,compressyears=true,
ibidtracker=constrict,sorting=cms,punctfont,cmslos=true,nodates,
- uniquelist=minyear,maxbibnames=10,minbibnames=7,sortcase=false}}
+ uniquelist=minyear,maxbibnames=10,minbibnames=7,sortcase=false,
+ abbreviate=false,dateabbrev=false,avdate=true}}
\def\cms@notesold{%
- \RequirePackage[style=chicago-notes15]{biblatex}%
+ \RequirePackage[style=chicago-notes16]{biblatex}%
\ExecuteBibliographyOptions{%
pagetracker=true,autocite=footnote,abbreviate=false,alldates=comp,
citetracker=true,ibidtracker=constrict,usetranslator=true,
- usecompiler=true,loccittracker=constrict,dateabbrev=false,
- maxbibnames=10,minbibnames=7}}
+ usenamec=true,loccittracker=constrict,dateabbrev=false,
+ maxbibnames=10,minbibnames=7,sorting=cms,sortcase=false,
+ labeltitle=true,alltimes=12h,urltime=24h,timezones=true,
+ datezeros=false,datecirca=true,dateuncertain=true,compressyears=true,
+ nodates=true}}
+
+\def\cms@authordatetrold{%
+ \RequirePackage[style=chicago-authordate-trad16]{biblatex}%
+ \ExecuteBibliographyOptions{%
+ pagetracker=true,autocite=inline,alldates=comp,labeldateparts=true,
+ citetracker=true,uniquename=minfull,useeditor=true,usetranslator=true,
+ usenamec=true,alltimes=12h,urltime=24h,datecirca=true,datezeros=false,
+ dateuncertain=true,timezones=true,compressyears=true,
+ ibidtracker=constrict,sorting=cms,punctfont,cmslos=true,nodates,
+ uniquelist=minyear,maxbibnames=10,minbibnames=7,sortcase=false,
+ abbreviate=false,dateabbrev=false,avdate=true}}
\csuse{cms@\cms@style}
\undef\cms@authordate
@@ -99,18 +125,65 @@
\undef\cms@authordatetrad
\undef\cms@authordateold
\undef\cms@notesold
+\undef\cms@authordatetrold
\expandafter\ExecuteBibliographyOptions\expandafter{\cms@options}
\setlength{\bibitemsep}{0.5\baselineskip plus 0.5\baselineskip}
\setlength{\bibhang}{2em}
\setlength{\lositemsep}{0.25\baselineskip plus 0.25\baselineskip}
+\urlstyle{rm}
\setcounter{biburllcpenalty}{5000}
\setcounter{biburlucpenalty}{9000}
\setcounter{biburlnumpenalty}{9000}
+\setcounter{mincomprange}{100}%
+\setcounter{mincompwidth}{10}%
\renewcommand*{\bibnamedash}{\rule[.4ex]{3em}{.6pt}}
+\iftoggle{cms@urlbreak}
+{\renewcommand*{\biburlsetup}{%
+ \Urlmuskip\biburlbigskip
+ \mathchardef\UrlBigBreakPenalty=\value{biburlbigbreakpenalty}\relax
+ \mathchardef\UrlBreakPenalty=\value{biburlbreakpenalty}\relax
+ \def\UrlBigBreaks{\do\:}%
+ \def\UrlBreaks{%
+ \do\@\do\\\do\!\do\|\do\;\do\>\do\]\do\)\do\}%
+ \do\'\do\+\do\=\do\$\do\&\do\*\do\^\do\"}%
+ \ifnumgreater{\value{biburlnumpenalty}}{0}
+ {\def\do##1{%
+ \appto\UrlSpecials{%
+ \do##1{%
+ \mathchar`##1
+ \mskip\biburlnumskip
+ \penalty\value{biburlnumpenalty}}}}%
+ \do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9\do\0}
+ {}%
+ \ifnumgreater{\value{biburlucpenalty}}{0}
+ {\def\do##1{%
+ \appto\UrlSpecials{%
+ \do##1{%
+ \mathchar`##1
+ \mskip\biburlucskip
+ \penalty\value{biburlucpenalty}}}}%
+ \do\A\do\B\do\C\do\D\do\E\do\F\do\G\do\H\do\I\do\J
+ \do\K\do\L\do\M\do\N\do\O\do\P\do\Q\do\R\do\S\do\T
+ \do\U\do\V\do\W\do\X\do\Y\do\Z}
+ {}%
+ \ifnumgreater{\value{biburllcpenalty}}{0}
+ {\def\do##1{%
+ \appto\UrlSpecials{%
+ \do##1{%
+ \mathchar`##1
+ \mskip\biburllcskip
+ \penalty\value{biburllcpenalty}}}}%
+ \do\a\do\b\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j
+ \do\k\do\l\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t
+ \do\u\do\v\do\w\do\x\do\y\do\z}
+ {}%
+ \let\do=\noexpand}}%
+{}
+
\iftoggle{cms@nomark}
{}
{\@ifclassloaded{memoir}%
@@ -141,6 +214,7 @@
\DeclareLanguageMapping{brazilian}{cms-brazilian}
\DeclareLanguageMapping{british}{cms-british}
+\DeclareLanguageMapping{dutch}{cms-dutch}
\DeclareLanguageMapping{german}{cms-german}
\DeclareLanguageMapping{french}{cms-french}
\DeclareLanguageMapping{finnish}{cms-finnish}
@@ -152,4 +226,38 @@
\ifundef\bbl@loaded{\let\bbl@loaded\@empty}{}% For old versions of babel
+\patchcmd{\blx@comprange@check}% Audrey Boruvka's code from StackExchange
+{\blx@comprange@comp{#1}{#2}}% Moved here from cbx
+{\blx@tempcnta=#1
+ \divide\blx@tempcnta100
+ \multiply\blx@tempcnta100
+ \ifnumequal{\blx@tempcnta}{#1}
+ {\blx@range@out@value{#1\bibrangedash#2}}
+ {\blx@comprange@comp{#1}{#2}}}
+{}{}%
+
+\newrobustcmd*{\suppressbibfield}[2][]{%
+ \ifblank{#1}%
+ {\ifblank{#2}%
+ {}%
+ {\DeclareSourcemap{
+ \maps[datatype=bibtex]{
+ \map{
+ \renewcommand*{\do}[1]{
+ \step[fieldset=##1, null]}\docsvlist{#2}}}}}}%
+ {\ifblank{#2}%
+ {\DeclareSourcemap{
+ \maps[datatype=bibtex]{
+ \map{
+ \renewcommand*{\do}[1]{%
+ \pertype{##1}}\docsvlist{#1}%
+ \step[entrynull]}}}}%
+ {\DeclareSourcemap{
+ \maps[datatype=bibtex]{
+ \map{
+ \renewcommand*{\do}[1]{%
+ \pertype{##1}}\docsvlist{#1}%
+ \renewcommand*{\do}[1]{%
+ \step[fieldset=##1, null]}\docsvlist{#2}}}}}}}
+
\endinput