summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2021-04-04 01:44:43 +0000
committerNorbert Preining <preining@logic.at>2021-04-04 01:44:43 +0000
commit7bbbffee6105522a0dd94981d20814a46348d8eb (patch)
tree76086c666a648a4cd028fa7c88f182e822f4aff4 /Master/texmf-dist/tex
parent3035fa3fb4b8e475519b23ce373cc3978590dcf7 (diff)
biblatex-chicago (4apr21)
git-svn-id: svn://tug.org/texlive/trunk@58715 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/biblatex-chicago.sty75
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate-trad.cbx155
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate-trad16.cbx85
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate.bbx441
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate.cbx154
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate16.bbx10
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate16.cbx86
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-dates-common.cbx711
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-dates-common16.cbx42
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes.bbx427
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes.cbx1126
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes16.bbx10
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes16.cbx130
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-american.lbx5
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-brazilian.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-british.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-dutch.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-finnish.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-french.lbx5
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-german.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-icelandic.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-ngerman.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-norsk.lbx4
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-norwegian.lbx4
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-nynorsk.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-romanian.lbx758
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cms-swedish.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cmsdocs.sty4
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-chicago/cmsendnotes.sty4
29 files changed, 3083 insertions, 1171 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/biblatex-chicago.sty b/Master/texmf-dist/tex/latex/biblatex-chicago/biblatex-chicago.sty
index 2497d4df310..2db90186a1e 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/biblatex-chicago.sty
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/biblatex-chicago.sty
@@ -1,4 +1,4 @@
-% Copyright (c) 2009-2020 David Fussner. This package is
+% Copyright (c) 2009-2021 David Fussner. This package is
% author-maintained.
%
% This work may be copied, distributed and/or modified under the
@@ -11,47 +11,63 @@
% but not limited to, the implied warranties of merchantability and
% fitness for a particular purpose.
-\ProvidesPackage{biblatex-chicago}[2020/04/20 v 3.14 biblatex style]
+\ProvidesPackage{biblatex-chicago}[2021/03/27 v 3.16 biblatex style]
\RequirePackage{etoolbox}
-\RequirePackage{nameref}
+\RequirePackage{nameref}% this already loads kvoptions
\RequirePackage{xstring}
-\DeclareOption{authordate}{\def\cms@style{authordate}}
-\DeclareOption{notes}{\def\cms@style{notes}}
-\DeclareOption{authordate-trad}{\def\cms@style{authordatetrad}}
-\DeclareOption{authordate16}{\def\cms@style{authordateold}}
-\DeclareOption{notes16}{\def\cms@style{notesold}}
-\DeclareOption{authordate-trad16}{\def\cms@style{authordatetrold}}
-\DeclareOption*{\eappto\cms@options{\CurrentOption,}}
+\SetupKeyvalOptions{% Use kvoptions to set biblatex load-time opts
+ family=cms@ldt,
+ prefix=cms@ldt@}
+
+\DeclareVoidOption{authordate}{\def\cms@style{authordate}}
+\DeclareVoidOption{notes}{\def\cms@style{notes}}
+\DeclareVoidOption{authordate-trad}{\def\cms@style{authordatetrad}}
+\DeclareVoidOption{authordate16}{\def\cms@style{authordateold}}
+\DeclareVoidOption{notes16}{\def\cms@style{notesold}}
+\DeclareVoidOption{authordate-trad16}{\def\cms@style{authordatetrold}}
+\DeclareDefaultOption{\eappto\cms@options{\CurrentOption,}}
\let\cms@options\empty
-\ExecuteOptions{notes}%
+\setkeys{cms@ldt}{notes}%
\newtoggle{cms@nomark}
\newtoggle{cms@urlbreak}
-\DeclareOption{footmarkoff}{\global\toggletrue{cms@nomark}}
-\DeclareOption{cmsbreakurl}{\global\toggletrue{cms@urlbreak}}
-
-\DeclareOption{natbib}{%
- \PassOptionsToPackage{natbib}{biblatex}}
+\DeclareVoidOption{footmarkoff}{\global\toggletrue{cms@nomark}}
+\DeclareVoidOption{cmsbreakurl}{\global\toggletrue{cms@urlbreak}}
-\DeclareOption{backend=biber}{%
- \PassOptionsToPackage{\CurrentOption}{biblatex}}%
+\DeclareStringOption{natbib}[true]
+\DeclareStringOption{mcite}[true]
+\DeclareStringOption{casechanger}[auto]
+\DeclareStringOption{backend}[biber]
+\DeclareStringOption{datamodel}
-\DeclareOption{backend=bibtex}{%
- \PassOptionsToPackage{\CurrentOption}{biblatex}%
- \def\blx@sorting@cms{1}}%
+\ProcessLocalKeyvalOptions{cms@ldt}
-\DeclareOption{backend=bibtex8}{%
- \PassOptionsToPackage{\CurrentOption}{biblatex}%
- \def\blx@sorting@cms{1}}%
-
-\DeclareOption{backend=bibtexu}{%
- \PassOptionsToPackage{\CurrentOption}{biblatex}%
- \def\blx@sorting@cms{1}}%
+\ifdefvoid{\cms@ldt@backend}%
+{\PassOptionsToPackage{backend=biber}{biblatex}}%
+{\PassOptionsToPackage{backend=\cms@ldt@backend}{biblatex}%
+ \ifdefstring{\cms@ldt@backend}{biber}%
+ {}%
+ {\def\blx@sorting@cms{1}}}
-\ProcessOptions*
+\ifx\cms@ldt@datamodel\@empty
+\else
+\PassOptionsToPackage{datamodel=\cms@ldt@datamodel}{biblatex}
+\fi
+\ifx\cms@ldt@mcite\@empty
+\else
+\PassOptionsToPackage{mcite=\cms@ldt@mcite}{biblatex}
+\fi
+\ifx\cms@ldt@natbib\@empty
+\else
+\PassOptionsToPackage{natbib=\cms@ldt@natbib}{biblatex}
+\fi
+\ifx\cms@ldt@casechanger\@empty
+\else
+\PassOptionsToPackage{casechanger=\cms@ldt@casechanger}{biblatex}
+\fi
\def\cms@authordate{%
\RequirePackage[style=chicago-authordate]{biblatex}%
@@ -222,6 +238,7 @@
\DeclareLanguageMapping{icelandic}{cms-icelandic}
\DeclareLanguageMapping{norsk}{cms-norsk}
\DeclareLanguageMapping{nynorsk}{cms-nynorsk}
+\DeclareLanguageMapping{romanian}{cms-romanian}
\DeclareLanguageMapping{swedish}{cms-swedish}
\ifundef\bbl@loaded{\let\bbl@loaded\@empty}{}% For old versions of babel
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate-trad.cbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate-trad.cbx
index 9919887ea20..a9d035cd51e 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate-trad.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate-trad.cbx
@@ -4,7 +4,7 @@
% the author-date (trad) style of the Chicago Manual of Style, 17th
% edition.
-\ProvidesFile{chicago-authordate-trad.cbx}[2020/04/20 v 3.14 biblatex
+\ProvidesFile{chicago-authordate-trad.cbx}[2021/03/27 v 3.16 biblatex
citation style]
\RequireCitationStyle{chicago-dates-common}
@@ -275,111 +275,76 @@ citation style]
\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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
\mkbibemph{\MakeSentenceCase*{#1}}}
+\DeclareFieldFormat{title:hook:alt}{%
+ \iftoggle{cms@reprintmt}%
+ {\begingroup
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
+ \endgroup}%
+ {\lbx@inittitlehook{#1}}% Inside entries don't use main doc. lang.
+ \mkbibemph{\MakeSentenceCase*{#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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
\MakeSentenceCase*{#1}}
\DeclareFieldFormat{jtitle: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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
\mkbibemph{#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}}
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibstring{chapter}}%
+ \bibstring{chapter}~#1\addspace\bibstring{in}}%
+ \endgroup}
\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}
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibstring{chapter}}%
+ \bibstring{chapter}~#1}%
+ \endgroup}
\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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibstring{track}}%
+ \bibstring{track}~#1}%
+ \endgroup}%
+
+\DeclareFieldFormat{volume:hook}{%
+ \begingroup
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{volume}}%
+ \bibstring{volume}~#1}%
+ \endgroup}%
+
+\DeclareFieldFormat{parttoo:hook}{%
+ \ifnumerals{#1}%
+ {\addcomma\addspace\bibstring[\mkrelatedstringtext]{partvolume}~#1}%
+ {\addcomma\addspace\ifcapital{\MakeCapital{#1}}{#1}}}
+
+\DeclareFieldFormat{part:hook}{%
+ \begingroup
+ \ifnumerals{#1}%
+ {\mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{partvolume}}%
+ \bibstring{partvolume}~#1}}%
+ {\mkrelatedstringtext{\lbx@inittitlehook{#1}}%
+ \ifcapital{\MakeCapital{#1}}{#1}}%
+ \endgroup}
\DeclareFieldFormat{sjtnoformat}{#1}
\DeclareFieldFormat{stnoformat}{#1}
@@ -398,11 +363,23 @@ citation style]
{\iffieldundef{journaltitle}%
{\iffieldundef{maintitle}%
{}%
- {\DeclareFieldAlias{maintitle}{title:hook}}}%
+ {\toggletrue{cms@reprintmt}%
+ \ifthenelse{\(\iffieldundef{volume}\AND\iffieldundef{part}\)%
+ \OR\ifentrytype{inbook}\OR\ifentrytype{incollection}\OR%
+ \ifentrytype{inproceedings}\OR\ifentrytype{letter}}%
+ {\DeclareFieldAlias{maintitle}{title:hook}}%
+ {\iffieldundef{volume}%
+ {\DeclareFieldAlias{part}{part:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}%
+ {\DeclareFieldAlias{volume}{volume:hook}%
+ \DeclareFieldAlias{part}{parttoo:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}}}}%
{\DeclareFieldAlias{jtnoformat}{jtitle:hook}%
\DeclareFieldAlias{sjtnoformat}{title}%
\DeclareFieldAlias{journaltitle}{default}%
+ \DeclareFieldAlias{injournaltitle}{default}%
\DeclareFieldAlias{shortjournal}{series}%
+ \DeclareFieldAlias{inshortjournal}{series}%
\DeclareFieldAlias{jtsnoformat}{jtitle:hook}}}%
{\DeclareFieldAlias{booktitle}{title:hook}}}%
{\DeclareFieldAlias{tnoformat}{jtitle:hook}%
@@ -417,8 +394,10 @@ citation style]
\ifentrytype{video}}%
{\iffieldundef{title}%
{\ifentrytype{music}%
- {\DeclareFieldAlias[music]{chapter}{muschapter:hook}}%
- {\DeclareFieldAlias{chapter}{avchapter:hook}}}%
+ {\DeclareFieldAlias[music]{chapter}{muschapter:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}%
+ {\DeclareFieldAlias{chapter}{avchapter:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}}%
{\DeclareFieldAlias[video]{title}{title:hook}%
\DeclareFieldAlias[audio]{title}{title:hook}%
\DeclareFieldAlias[music]{title}{title:hook}}}%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate-trad16.cbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate-trad16.cbx
index a090b604eb8..1c11045f605 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate-trad16.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate-trad16.cbx
@@ -3,7 +3,7 @@
% providing inline citations (and a reference list) for the
% author-date (trad) style of the Chicago Manual of Style, 16th edition.
-\ProvidesFile{chicago-authordate-trad16.cbx}[2020/04/20 v 3.14 biblatex
+\ProvidesFile{chicago-authordate-trad16.cbx}[2021/03/27 v 3.16 biblatex
citation style]
\RequireCitationStyle{chicago-dates-common16}
@@ -246,93 +246,38 @@ citation style]
\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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
\mkbibemph{\MakeSentenceCase*{#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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
\MakeSentenceCase*{#1}}
\DeclareFieldFormat{jtitle: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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
\mkbibemph{#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}}
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibstring{chapter}}%
+ \bibstring{chapter}~#1\addspace\bibstring{in}}%
+ \endgroup}
\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}
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibstring{chapter}}%
+ \bibstring{chapter}~#1}%
+ \endgroup}
\DeclareFieldFormat{sjtnoformat}{#1}
\DeclareFieldFormat{stnoformat}{#1}
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate.bbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate.bbx
index b5e787803e6..29f8c62649c 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate.bbx
@@ -2,7 +2,7 @@
% Lehman's standard.bbx and from chicago-notes.bbx. It provides the
% reference list formatting for the Chicago author-date style.
-\ProvidesFile{chicago-authordate.bbx}[2020/04/20 v 3.14 biblatex
+\ProvidesFile{chicago-authordate.bbx}[2021/03/27 v 3.16 biblatex
bibliography style]
%%%% Initialize and format bibliography and los %%%%
@@ -21,6 +21,7 @@ bibliography style]
{\mkbibemph{\textbf{#1}}\isdot}}%
\newlength{\lositemsep}
+\newbibmacro*{begentry}{}
\defbibenvironment{bibliography}% New for 0.9a
{\list
@@ -124,12 +125,15 @@ bibliography style]
{}}%
\defbibcheck{shortjournal}{% Only one list
- \iffieldundef{shortjournal}%
+ \ifthenelse{\iffieldundef{shortjournal}\OR%
+ \iffieldsequal{journaltitle}{shortjournal}\OR%
+ \(\iffieldundef{journaltitle}\AND\(\ifentrytype{legal}\OR%
+ \ifentrytype{legislation}\OR\ifentrytype{jurisdiction}\)\)}%
{\skipentry}%
- {\ifcsdef{\strfield{shortjournal}=\strfield{journaltitle}}%
+ {\ifcsdef{\strfield{shortjournal}}%
{\skipentry}%
{\savefieldcs{shortjournal}%
- {\strfield{shortjournal}=\strfield{journaltitle}}}}}%
+ {\strfield{shortjournal}}}}}%
% \defbibcheck{shortjournal}{% Multiple lists
% \ifcsdef{cms@shjour}%
@@ -342,28 +346,35 @@ bibliography style]
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}}%
{\printtext{\bibnamedash}%
\ifentrytype{customc}%
{\newunit}%
- {\setunit{\addspace}}\printfield{nameaddon}}}%
+ {\setunit{\nameaddonpunct}}\printfield{nameaddon}}}%
{\iffieldequalstr{authortype}{anon}%
- {\bibleftbracket\printnames{author}\bibrightbracket%
+ {\bibopenbracket\printnames{author}%
+ \ifentrytype{customc}%
+ {\bibclosebracket%
+ \usebibmacro{print+nameaddon}}%
+ {\usebibmacro{print+nameaddon}%
+ \bibclosebracket}%
\savefield{fullhash}{\bbx@lasthash}}%
{\iffieldequalstr{authortype}{anon?}%
- {\bibleftbracket\printnames{author}\addquestion\bibrightbracket%
+ {\bibopenbracket\printnames{author}\addquestion%
+ \ifentrytype{customc}%
+ {\bibclosebracket%
+ \usebibmacro{print+nameaddon}}%
+ {\usebibmacro{print+nameaddon}%
+ \bibclosebracket}%
\savefield{fullhash}{\bbx@lasthash}}%
{\iftoggle{cms@authorparens}%
{\bibopenparen\printnames{author}%
- \ifentrytype{customc}{}%
- {\setunit{\addspace}\printfield{nameaddon}}\bibcloseparen%
\ifentrytype{customc}%
- {\newunit\printfield{nameaddon}}%
- {}}%
+ {\bibcloseparen\usebibmacro{print+nameaddon}}%
+ {\usebibmacro{print+nameaddon}\bibcloseparen}}%
{\printnames{author}%
- \ifentrytype{customc}{\newunit}{\setunit{\addspace}}%
- \printfield{nameaddon}}%
+ \usebibmacro{print+nameaddon}}%
\savefield{fullhash}{\bbx@lasthash}}}}}}
\newbibmacro*{moreauthor}{%
@@ -376,21 +387,24 @@ bibliography style]
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}}%
- {\printtext{\bibnamedash}\setunit{\addspace}\printfield{nameaddon}}}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
+ \printfield{nameaddon}}}%
{\iffieldequalstr{authortype}{anon}%
- {\bibleftbracket\printnames{author}\bibrightbracket%
+ {\bibopenbracket\printnames{author}%
+ \usebibmacro{print+nameaddon}\bibclosebracket%
\savefield{fullhash}{\bbx@lasthash}}%
{\iffieldequalstr{authortype}{anon?}%
- {\bibleftbracket\printnames{author}\addquestion\bibrightbracket%
+ {\bibopenbracket\printnames{author}\addquestion%
+ \usebibmacro{print+nameaddon}\bibclosebracket%
\savefield{fullhash}{\bbx@lasthash}}%
{\iftoggle{cms@authorparens}%
{\bibopenparen\printnames{author}%
- \setunit{\addspace}\printfield{nameaddon}\bibcloseparen}%
+ \usebibmacro{print+nameaddon}%
+ \bibcloseparen}%
{\printnames{author}%
- \setunit{\addspace}%
- \printfield{nameaddon}}%
+ \usebibmacro{print+nameaddon}}%
\savefield{fullhash}{\bbx@lasthash}}}}}}
\newbibmacro*{pickeditor}{%
@@ -408,17 +422,16 @@ bibliography style]
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\editordelim}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\editordelim}}%
{\iftoggle{cms@authorparens}%
{\bibopenparen\printnames{editor}%
- \setunit{\addspace}\printfield{nameaddon}%
+ \usebibmacro{print+nameaddon}%
\bibcloseparen\editordelim}%
{\printnames{editor}%
- \setunit{\addspace}%
- \printfield{nameaddon}\editordelim}%
+ \usebibmacro{print+nameaddon}\editordelim}%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{editstrg}}}%
@@ -435,17 +448,16 @@ bibliography style]
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\editordelim}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\editordelim}}%
{\iftoggle{cms@authorparens}%
{\bibopenparen\printnames{editor}%
- \setunit{\addspace}\printfield{nameaddon}%
+ \usebibmacro{print+nameaddon}%
\bibcloseparen\editordelim}%
{\printnames{editor}%
- \setunit{\addspace}%
- \printfield{nameaddon}\editordelim}%
+ \usebibmacro{print+nameaddon}\editordelim}%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{editstrg}}}%
{\ifboolexpr{%
@@ -455,17 +467,16 @@ bibliography style]
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\nameadelim}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\nameadelim}}%
{\iftoggle{cms@authorparens}%
{\bibopenparen\printnames[sortname]{namea}%
- \setunit{\addspace}\printfield{nameaddon}%
+ \usebibmacro{print+nameaddon}%
\bibcloseparen\nameadelim}%
{\printnames[sortname]{namea}%
- \setunit{\addspace}%
- \printfield{nameaddon}\nameadelim}%
+ \usebibmacro{print+nameaddon}\nameadelim}%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{parteditstrg}}}}
@@ -479,17 +490,16 @@ bibliography style]
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\nameadelim}%
- {\printtext{\bibnamedash}\setunit{\addcomma}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\nameadelim}}%
{\iftoggle{cms@authorparens}%
{\bibopenparen\printnames[sortname]{namea}%
- \setunit{\addspace}\printfield{nameaddon}%
+ \usebibmacro{print+nameaddon}%
\bibcloseparen\nameadelim}%
{\printnames[sortname]{namea}%
- \setunit{\addspace}%
- \printfield{nameaddon}\nameadelim}%
+ \usebibmacro{print+nameaddon}\nameadelim}%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{parteditstrg}}}
@@ -508,17 +518,16 @@ bibliography style]
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\newcunit}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\newcunit}}%
{\iftoggle{cms@authorparens}%
{\bibopenparen\printnames[sortname]{translator}%
- \setunit{\addspace}\printfield{nameaddon}%
+ \usebibmacro{print+nameaddon}%
\bibcloseparen\newcunit}%
{\printnames[sortname]{translator}%
- \setunit{\addspace}%
- \printfield{nameaddon}\newcunit}%
+ \usebibmacro{print+nameaddon}\newcunit}%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{transstrg}}}
@@ -532,17 +541,16 @@ bibliography style]
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\newcunit}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\newcunit}}%
{\iftoggle{cms@authorparens}%
{\bibopenparen\printnames[sortname]{nameb}%
- \setunit{\addspace}\printfield{nameaddon}%
+ \usebibmacro{print+nameaddon}%
\bibcloseparen\newcunit}%
{\printnames[sortname]{nameb}%
- \setunit{\addspace}%
- \printfield{nameaddon}\newcunit}%
+ \usebibmacro{print+nameaddon}\newcunit}%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{parttransstrg}}}
@@ -556,20 +564,53 @@ bibliography style]
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\newcunit}%
- {\printtext{\bibnamedash}\setunit{\addcomma}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\newcunit}}%
{\iftoggle{cms@authorparens}%
{\bibopenparen\printnames[sortname]{namec}%
- \setunit{\addspace}\printfield{nameaddon}%
+ \usebibmacro{print+nameaddon}%
\bibcloseparen\newcunit}%
{\printnames[sortname]{namec}%
- \setunit{\addspace}%
- \printfield{nameaddon}\newcunit}%
+ \usebibmacro{print+nameaddon}\newcunit}%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{compilestrg}}}
+\newbibmacro*{print+nameaddon}{%
+ \ifboolexpr{%
+ togl {cms@nona}%
+ or
+ test {\iffieldundef{nameaddon}}%
+ }%
+ {}%
+ {\ifboolexpr{%
+ test {\iffieldequals{fullhash}{\bbx@lasthash}}%
+ and
+ test {\iffieldequals{nameaddon}{\cms@lastna}}%
+ and
+ togl {cms@subseqnona}%
+ }%
+ {}%
+ {\ifentrytype{customc}{\newunit}{\setunit{\nameaddonpunct}}%
+ \printfield{nameaddon}%
+ \savefield{nameaddon}{\cms@lastna}}}}%
+
+\def\if@cms@nonameaddon{%
+ \ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ togl {cms@nona}%
+ or
+ (
+ test {\iffieldequals{nameaddon}{\cms@lastna}}%
+ and
+ togl {cms@subseqnona}%
+ )
+ }%
+ {\@firstoftwo}%
+ {\@secondoftwo}}%
+
\renewcommand*{\revsdnamedelim}{\addcomma}
\DeclareNameAlias{author}{sortname}% Needed in 0.9
@@ -610,7 +651,7 @@ bibliography style]
\ifentrytype{periodical}}%
{\printtext[bibhyperref]{\printfield[journaltitle]{journaltitle}%
\newcunit}}%
- {\ifentrytype{manual}%
+ {\ifthenelse{\ifentrytype{manual}\OR\ifentrytype{standard}}%
{\printtext[bibhyperref]{\printlist{organization}\newcunit}}%
{}}}%
{\ifboolexpr{%
@@ -623,8 +664,8 @@ bibliography style]
)
}%
{\printnames{\thefield{labelnamesource}}\newunit}%
- {\ifentrytype{customc}%
- {\usebibmacro{justauthor}\setunit{\addspace}}%
+ {\ifthenelse{\ifentrytype{customc}\OR\ifentrytype{dataset}}%
+ {\usebibmacro{justauthor}}% Moved \addspace to field format (2.1)
{\usebibmacro{author/editor}\newunit}}}%
\printfield[lostitle]{title}%
\finentry}}}
@@ -792,6 +833,55 @@ bibliography style]
\step[fieldsource=booktitle, final]
\step[fieldset=sorttitle, origfieldval]
}
+ \map[overwrite]{
+ \pertype{customc}
+ \step[fieldsource=title,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=title,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
+ \map[overwrite]{
+ \step[fieldsource=titleaddon,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=titleaddon,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
+ \map[overwrite]{
+ \step[fieldsource=annotation,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=annotation,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
+ \map[overwrite]{
+ \step[fieldsource=annote,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=annote,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
+ \map[overwrite]{
+ \step[fieldsource=addendum,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=addendum,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
+ \map[overwrite]{
+ \step[fieldsource=note,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=note,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
\map[overwrite]{% Backward compatibility kludges
\step[fieldsource=year,
match=\regexp{^\[(.+)\](.*)},
@@ -809,6 +899,7 @@ bibliography style]
\DeclareBibliographyDriver{article}{%
\iffieldequalstr{entrysubtype}{magazine}%
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{mag+news+author}%
\newunit\newblock
\usebibmacro{cmsbibsortdate}%
@@ -857,7 +948,8 @@ bibliography style]
{}%
\usebibmacro{originally+published+as}%
\usebibmacro{finentry}}
- {\usebibmacro{bibindex}%
+{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\ifundef{\bbx@lasthash}{\usebibmacro{mag+news+title}\newunit}{}%
@@ -866,7 +958,7 @@ bibliography style]
\ifundef{\bbx@lasthash}{}{\usebibmacro{mag+news+title}}%
\setunit{\addspace}%
\usebibmacro{language+transtitle}%
- \setunit*{\addperiod\addspace}\newblock% 16th ed.
+ \setunit*{\newunitpunct}\newblock% 16th ed.
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{part+editor+translator}%
@@ -908,6 +1000,7 @@ bibliography style]
\DeclareBibliographyDriver{artwork}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -956,6 +1049,7 @@ bibliography style]
\DeclareBibliographyDriver{audio}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -985,7 +1079,7 @@ bibliography style]
\usebibmacro{chapinscore}%
\usebibmacro{btitle+bstitle}%
\iffieldundef{booktitle}%
- {\setunit{\addperiod\addspace}}% Fix customc?
+ {\setunit{\newunitpunct}}% Fix customc?
{\setunit{\addcomma\addspace}}%
\iffieldundef{edition}%
{}%
@@ -1009,10 +1103,10 @@ bibliography style]
{\printfield{volume}%
\printfield{part}%
\setunit{\addspace}%
- \bibstring{ofseries}%
- \setunit{\addspace}%
+ \bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
\printtext{%
- \printfield{maintitle}%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
\printfield[mainsubtitle]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
@@ -1055,6 +1149,7 @@ bibliography style]
\DeclareBibliographyDriver{book}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -1142,7 +1237,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{xref}}%
\usebibmacro{bibpostxref}%
@@ -1160,7 +1255,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{crossref}}%
\usebibmacro{bibpostxref}%
@@ -1175,6 +1270,7 @@ bibliography style]
\DeclareBibliographyDriver{bookinbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -1192,7 +1288,7 @@ bibliography style]
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{part+editor+translator}%
- \setunit*{\addperiod\addspace}%
+ \setunit*{\newunitpunct}%
\ifboolexpr{%
test {\iffieldundef{crossref}}%
or
@@ -1251,7 +1347,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{xref}}%
\usebibmacro{bibpostxref}%
@@ -1269,7 +1365,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{crossref}}%
\usebibmacro{bibpostxref}%
@@ -1284,6 +1380,7 @@ bibliography style]
\DeclareBibliographyDriver{booklet}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -1319,6 +1416,7 @@ bibliography style]
\DeclareBibliographyDriver{collection}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{editor}%
\newunit\newblock
@@ -1383,7 +1481,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{xref}}%
\usebibmacro{bibpostxref}%
@@ -1401,7 +1499,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{crossref}}%
\usebibmacro{bibpostxref}%
@@ -1416,9 +1514,14 @@ bibliography style]
\DeclareBibliographyDriver{customc}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{justauthor}%
- \iffieldundef{nameaddon}%
+ \ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ togl {cms@nona}%
+ }%
{\newunit}%
{\setunit{\addspace}}%
\usebibmacro{italtitle+stitle}%
@@ -1426,6 +1529,7 @@ bibliography style]
\DeclareBibliographyDriver{dataset}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -1495,6 +1599,7 @@ bibliography style]
\DeclareBibliographyDriver{image}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -1543,6 +1648,7 @@ bibliography style]
\DeclareBibliographyDriver{inbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -1550,9 +1656,9 @@ bibliography style]
\usebibmacro{cmsbibsortdate}%
\newunit\newblock
\ifundef\bbx@lasthash{}{\usebibmacro{italtitle+stitle}}%
- \setunit{\addperiod\addspace}% 16th ed.
+ \setunit{\newunitpunct}% 16th ed.
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{part+editor+translator}%
\ifboolexpr{%
test {\iffieldundef{crossref}}%
@@ -1564,7 +1670,7 @@ bibliography style]
or
togl {cms@crossref}%
}%
- {\setunit{\addperiod\addspace}%
+ {\setunit{\newunitpunct}%
\usebibmacro{chapincoll}%
\usebibmacro{mtitle+mstitle+vol+part+btitle+bstitle}%
\newcunit
@@ -1611,7 +1717,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{xref}}%
\usebibmacro{bibpostxref}%
@@ -1629,7 +1735,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{crossref}}%
\usebibmacro{bibpostxref}%
@@ -1644,6 +1750,7 @@ bibliography style]
\DeclareBibliographyDriver{incollection}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -1651,9 +1758,9 @@ bibliography style]
\usebibmacro{cmsbibsortdate}%
\newunit\newblock
\ifundef\bbx@lasthash{}{\usebibmacro{italtitle+stitle}}%
- \setunit{\addperiod\addspace}% 16th ed.
+ \setunit{\newunitpunct}% 16th ed.
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{part+editor+translator}%
\ifboolexpr{%
test {\iffieldundef{crossref}}%
@@ -1665,7 +1772,7 @@ bibliography style]
or
togl {cms@crossref}%
}%
- {\setunit{\addperiod\addspace}% Moved here.
+ {\setunit{\newunitpunct}% Moved here.
\usebibmacro{chapincoll}%
\usebibmacro{mtitle+mstitle+vol+part+btitle+bstitle}%
\newcunit
@@ -1712,7 +1819,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{xref}}%
\usebibmacro{bibpostxref}%
@@ -1730,7 +1837,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{crossref}}%
\usebibmacro{bibpostxref}%
@@ -1745,6 +1852,7 @@ bibliography style]
\DeclareBibliographyDriver{inproceedings}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -1752,9 +1860,9 @@ bibliography style]
\usebibmacro{cmsbibsortdate}%
\newunit\newblock
\ifundef\bbx@lasthash{}{\usebibmacro{italtitle+stitle}}%
- \setunit{\addperiod\addspace}% 16th ed.
+ \setunit{\newunitpunct}% 16th ed.
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{part+editor+translator}%
\ifboolexpr{%
test {\iffieldundef{crossref}}%
@@ -1766,7 +1874,7 @@ bibliography style]
or
togl {cms@crossref}%
}%
- {\setunit{\addperiod\addspace}%
+ {\setunit{\newunitpunct}%
\usebibmacro{chapincoll}%
\usebibmacro{mtitle+mstitle+vol+part+btitle+bstitle}%
\newcunit\newblock
@@ -1777,6 +1885,14 @@ bibliography style]
\usebibmacro{ser+num}%
\newunit\newblock
\printfield{note}%
+ \setunit*{\addcomma\addspace}%
+ \printfield{eventtitle}%
+ \setunit{\ctitleaddonpunct}%
+ \printfield{eventtitleaddon}%
+ \newcunit%
+ \printfield{venue}%
+ \newcunit\newblock
+ \printeventdate%
\newunit\newblock
\usebibmacro{bibreprint}%
\usebibmacro{org+publ+loc+year}%
@@ -1806,7 +1922,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{xref}}%
\usebibmacro{bibpostxref}%
@@ -1824,7 +1940,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{crossref}}%
\usebibmacro{bibpostxref}%
@@ -1839,6 +1955,7 @@ bibliography style]
\DeclareBibliographyDriver{inreference}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{reference+title}%{italtitle+stitle}
\newunit\newblock
\usebibmacro{cmsbibsortdate}%
@@ -1850,7 +1967,7 @@ bibliography style]
{}%
\newunit\newblock
\usebibmacro{part+editor+translator}%
- \setunit*{\addperiod\addspace}% need asterisk?
+ \setunit*{\newunitpunct}% need asterisk?
\usebibmacro{mtitle+mstitle+vol+part+btitle+bstitle}%
\newcunit
\iffieldundef{edition}%
@@ -1906,6 +2023,7 @@ bibliography style]
\DeclareBibliographyDriver{jurisdiction}{%
\iffieldequalstr{entrysubtype}{square}% FIXME?
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{clegis+news+title}%
\setunit{\addspace}%
\usebibmacro{language+transtitle}%
@@ -1963,6 +2081,7 @@ bibliography style]
\usebibmacro{finentry}}
{\iffieldequalstr{entrysubtype}{round}% FIXME?
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{clegis+news+title}%
\setunit{\addspace}%
\usebibmacro{language+transtitle}%
@@ -2019,6 +2138,7 @@ bibliography style]
{}%
\usebibmacro{finentry}}
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{clegis+news+title}%
\setunit{\addspace}%
\usebibmacro{language+transtitle}%
@@ -2085,6 +2205,7 @@ bibliography style]
\DeclareBibliographyDriver{legal}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newcunit\newblock
\usebibmacro{clegis+news+title}%
@@ -2150,6 +2271,7 @@ bibliography style]
\DeclareBibliographyDriver{legislation}{%
\iffieldequalstr{entrysubtype}{uk}% FIXME?
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newcunit\newblock
\usebibmacro{clegis+news+title}%
@@ -2213,6 +2335,7 @@ bibliography style]
\usebibmacro{finentry}}
{\iffieldequalstr{entrysubtype}{hansard}% FIXME?
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newcunit\newblock
\usebibmacro{clegis+news+title}%
@@ -2269,6 +2392,7 @@ bibliography style]
{}%
\usebibmacro{finentry}}
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newcunit\newblock
\usebibmacro{clegis+news+title}%
@@ -2341,6 +2465,7 @@ bibliography style]
\DeclareBibliographyDriver{letter}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -2356,7 +2481,7 @@ bibliography style]
\usebibmacro{language+transtitle}%
\newunit\newblock%\bibsentence
\usebibmacro{part+editor+translator}%
- \setunit*{\addperiod\addspace}%
+ \setunit*{\newunitpunct}%
\ifboolexpr{%
test {\iffieldundef{crossref}}%
or
@@ -2444,6 +2569,7 @@ bibliography style]
\DeclareBibliographyDriver{manual}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author+org}%
\newunit\newblock
@@ -2487,6 +2613,7 @@ bibliography style]
\DeclareBibliographyDriver{misc}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -2551,6 +2678,7 @@ bibliography style]
\DeclareBibliographyDriver{music}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -2609,10 +2737,10 @@ bibliography style]
{\printfield{volume}%
\printfield{part}%
\setunit{\addspace}%
- \bibstring{ofseries}%
- \setunit{\addspace}%
+ \bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
\printtext{%
- \printfield{maintitle}%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
\printfield[mainsubtitle]{mainsubtitle}}%
\setunit{ctitleaddonpunct}%
@@ -2670,6 +2798,7 @@ bibliography style]
\DeclareBibliographyDriver{online}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -2775,15 +2904,16 @@ bibliography style]
\DeclareBibliographyDriver{patent}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author+holder}% + holder?
\newunit\newblock
\ifundef\bbx@lasthash{\usebibmacro{patenttitle+stitle}}{}%
\usebibmacro{cmscitesortdate}%
\newunit\newblock
\ifundef\bbx@lasthash{}{\usebibmacro{patenttitle+stitle}}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\printfield{note}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{bibreprint}%
\printfield{type}%
\setunit{\addspace}%
@@ -2831,6 +2961,7 @@ bibliography style]
\DeclareBibliographyDriver{performance}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -2881,6 +3012,7 @@ bibliography style]
\DeclareBibliographyDriver{periodical}{%
\iffieldequalstr{entrysubtype}{magazine}%
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\newunit\newblock
\ifboolexpr{%
@@ -2942,7 +3074,8 @@ bibliography style]
{}%
\usebibmacro{originally+published+as}%
\usebibmacro{finentry}}
- {\usebibmacro{bibindex}%
+{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\newunit\newblock
\ifboolexpr{%
@@ -2975,7 +3108,7 @@ bibliography style]
\usebibmacro{issuetitle}%
\setunit{\addspace}%
\usebibmacro{language+transtitle}%
- \setunit*{\addperiod\addspace}\newblock% 16th ed.
+ \setunit*{\newunitpunct}\newblock% 16th ed.
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
@@ -3009,6 +3142,7 @@ bibliography style]
\DeclareBibliographyDriver{proceedings}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{editor}%
\newunit\newblock
@@ -3038,6 +3172,14 @@ bibliography style]
\usebibmacro{ser+num}%
\newunit\newblock
\printfield{note}%
+ \setunit*{\addcomma\addspace}%
+ \printfield{eventtitle}%
+ \setunit{\ctitleaddonpunct}%
+ \printfield{eventtitleaddon}%
+ \newcunit%
+ \printfield{venue}%
+ \newcunit\newblock
+ \printeventdate%
\newunit\newblock
\usebibmacro{bibreprint}%
\usebibmacro{org+publ+loc+year}%
@@ -3067,7 +3209,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{xref}}%
\usebibmacro{bibpostxref}%
@@ -3085,7 +3227,7 @@ bibliography style]
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{bibprexref}%
\bibxrefcite{\thefield{crossref}}%
\usebibmacro{bibpostxref}%
@@ -3100,6 +3242,7 @@ bibliography style]
\DeclareBibliographyDriver{reference}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{reference+title}%{italtitle+stitle}
\newunit\newblock
\usebibmacro{cmsbibsortdate}%
@@ -3111,7 +3254,7 @@ bibliography style]
{}%
\newunit\newblock
\usebibmacro{part+editor+translator}%
- \setunit*{\addperiod\addspace}% need asterisk?
+ \setunit*{\newunitpunct}% need asterisk?
\usebibmacro{mtitle+mstitle+vol+part+btitle+bstitle}%
\newcunit
\iffieldundef{edition}%
@@ -3157,6 +3300,7 @@ bibliography style]
\DeclareBibliographyDriver{report}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -3202,6 +3346,7 @@ bibliography style]
\DeclareBibliographyDriver{review}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\iffieldequalstr{entrysubtype}{magazine}%
{\usebibmacro{mag+news+author}}%
{\usebibmacro{author/editor}}%
@@ -3299,6 +3444,7 @@ bibliography style]
\DeclareBibliographyDriver{standard}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\ifnameundef{author}%
{\iflistundef{organization}%
@@ -3310,13 +3456,16 @@ bibliography style]
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}}}%
{\iftoggle{cms@authorparens}%
- {\bibopenparen\printlist{organization}\bibcloseparen}%
- {\printlist{organization}}%
+ {\bibopenparen\printlist{organization}%
+ \usebibmacro{print+nameaddon}%
+ \bibcloseparen}%
+ {\printlist{organization}%
+ \usebibmacro{print+nameaddon}}%
\savelist{organization}{\bbx@lasthash}}}}%
{\usebibmacro{justauthor}}%
\newunit\newblock
@@ -3387,6 +3536,7 @@ bibliography style]
\DeclareBibliographyDriver{suppbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author}%
\newunit\newblock
@@ -3460,6 +3610,7 @@ bibliography style]
\DeclareBibliographyDriver{thesis}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -3469,9 +3620,9 @@ bibliography style]
\ifundef\bbx@lasthash{}{\usebibmacro{italtitle+stitle}}%
\newunit% 16th ed.
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\printfield{note}%
- \setunit{\addperiod\addspace}\newblock%
+ \setunit{\newunitpunct}\newblock%
\usebibmacro{bibreprint}%
\usebibmacro{type+inst+year}%
\newunit\newblock
@@ -3493,6 +3644,7 @@ bibliography style]
\DeclareBibliographyDriver{unpublished}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -3502,7 +3654,7 @@ bibliography style]
\ifundef\bbx@lasthash{}{\usebibmacro{italtitle+stitle}}%
\newunit%usebibmacro{byauthorpunct}% Why does this work? No idea.
\usebibmacro{byauthor}% Same in thesis type, as well. 16th ed.
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{byeditor+others}% Fix bug ???
\newunit\newblock
\usebibmacro{bibreprint}%
@@ -3540,6 +3692,7 @@ bibliography style]
\DeclareBibliographyDriver{video}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{shorthand:author}%
\usebibmacro{author/editor}%
\newunit\newblock
@@ -3567,17 +3720,17 @@ bibliography style]
\setunit{\addspace}\newblock%
\usebibmacro{language+transtitle}%
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{part+editor+translator}}
- {\setunit{\addperiod\addspace}% 16th ed.
+ {\setunit{\newunitpunct}% 16th ed.
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{part+editor+translator}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{chapinscore}%
\usebibmacro{btitle+bstitle}}%
\iffieldundef{booktitle}%
- {\setunit{\addperiod\addspace}}% Fix customc?
+ {\setunit{\newunitpunct}}% Fix customc?
{\setunit{\addcomma\addspace}}%
\iffieldundef{edition}%
{}%
@@ -3601,10 +3754,10 @@ bibliography style]
{\printfield{volume}%
\printfield{part}%
\setunit{\addspace}%
- \bibstring{ofseries}%
- \setunit{\addspace}%
+ \bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
\printtext{%
- \printfield{maintitle}%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
\printfield[mainsubtitle]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
@@ -3675,7 +3828,7 @@ bibliography style]
{\iffieldundef{doi}%
{}%
{\printfield{doi}%
- \setunit*{\addperiod\addspace}\newblock%
+ \setunit*{\newunitpunct}\newblock%
\clearfield{url}}}%
{\ifboolexpr{%
togl {cms@doi}%
@@ -3683,7 +3836,7 @@ bibliography style]
not test {\iffieldundef{doi}}%
}%
{\printfield{doi}%
- \setunit*{\addperiod\addspace}\newblock}%
+ \setunit*{\newunitpunct}\newblock}%
{}}%
\ifboolexpr{%
togl {cms@eprint}%
@@ -3691,7 +3844,7 @@ bibliography style]
not test {\iffieldundef{eprint}}%
}%
{\usebibmacro{eprint}%
- \setunit*{\addperiod\addspace}\newblock}%
+ \setunit*{\newunitpunct}\newblock}%
{}%
\ifboolexpr{%
togl {cms@url}%
@@ -4709,7 +4862,7 @@ bibliography style]
{\printfield{volume}}% Still print this w/o part or pages???
{\ifthenelse{\iffieldnums{pages}%
\AND\iffieldundef{bookpagination}\AND\iffieldnums{volume}}%
- {\printfield[default]{volume}%
+ {\printfield[shortvol]{volume}%
\postvolpunct%
\printfield{pages}}%
{\printfield{volume}%
@@ -4781,7 +4934,7 @@ bibliography style]
{\iffieldundef{part}%
{\ifthenelse{\iffieldnums{pages}%
\AND\iffieldundef{bookpagination}\AND\iffieldnums{volume}}%
- {\newcunit\printfield[default]{volume}%
+ {\newcunit\printfield[shortvol]{volume}%
\postvolpunct%
\printfield{pages}}%
{\newcunit\printfield{volume}%
@@ -4821,6 +4974,8 @@ bibliography style]
{}%
{\printfield{volumes}}}}
+\def\cms@ofwrap#1{#1}
+
\newbibmacro*{mtitle+mstitle+vol+part+title+stitle}{%
\iffieldundef{maintitle}%
{}%
@@ -4837,10 +4992,10 @@ bibliography style]
{\printfield{volume}%
\printfield{part}%
\setunit{\addspace}%
- \bibstring{ofseries}%
- \setunit{\addspace}%
+ \bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
\printtext{%
- \printfield{maintitle}%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
\printfield[mainsubtitle]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
@@ -4878,17 +5033,17 @@ bibliography style]
{\printfield{volume}%
\printfield{part}%
\setunit{\addspace}%
- \bibstring{ofseries}%
- \setunit{\addspace}%
+ \bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
\printtext{%
- \printfield{maintitle}%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
\printfield[mainsubtitle]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
\printfield{maintitleaddon}}}}%
\newbibmacro*{cjournal+ser+vol+num}[1]{% Moved to bbx
- \usebibmacro{journal+sub}%
+ \usebibmacro{journal+sub}{in}%
\setunit*{\addspace}%
\printlist[periodplace]{location}%
\setunit*{\addspace}%
@@ -4930,7 +5085,7 @@ bibliography style]
{\ifthenelse{\iffieldundef{bookpagination}\AND%
\iffieldundef{eid}\AND\NOT\iffieldundef{volume}}%
{\setunit{\postvolpunct}}%
- {\setunit{\addcolon\addspace}}}% This may not be universally correct.
+ {\setunit{\journalpagespunct}}}% This may not be universally correct.
{\printtext[parens]{% Perhaps if it's wrong use magazine subtype?
\iffieldundef{issue}%
{\usebibmacro{date}%
@@ -4938,7 +5093,7 @@ bibliography style]
{\printfield{issue}%
\setunit{\addspace}%
\usebibmacro{cmsyear}}}%
- \setunit{\addcolon\addspace}}%
+ \setunit{\journalpagespunct}}%
\usebibmacro{eid+or+pages}}%
\newbibmacro*{periodical+issue+year+pages}[1]{%
@@ -4957,7 +5112,7 @@ bibliography style]
{\ifthenelse{\iffieldundef{bookpagination}\AND%
\iffieldundef{eid}\AND\NOT\iffieldundef{volume}}%
{\setunit{\postvolpunct}}%
- {\setunit{\addcolon\addspace}}}%
+ {\setunit{\journalpagespunct}}}%
{\printtext[parens]{%
\iffieldundef{issue}%
{\usebibmacro{date}%
@@ -4965,7 +5120,7 @@ bibliography style]
{\printfield{issue}%
\setunit{\addspace}%
\usebibmacro{cmsyear}}}%
- \setunit{\addcolon\addspace}}%
+ \setunit{\journalpagespunct}}%
\usebibmacro{eid+or+pages}}%
\newbibmacro*{eid+or+pages}{%
@@ -5124,6 +5279,8 @@ bibliography style]
%%%% Related functionality from standard.bbx %%%%
+\providecommand*{\mkrelatedstringtext}[1]{{{\mainlang #1}}}
+
\newcounter{bbx:relatedcount}
\newcounter{bbx:relatedtotal}
@@ -5134,13 +5291,27 @@ bibliography style]
{\let\cms@related@hash\bbx@lasthash}{}}%
\newbibmacro*{endrelated}{\ifcsdef{cms@related@hash}%
{\global\let\bbx@lasthash\cms@related@hash%
- \let\cms@related@hash\undefined}{}}%
+ \let\cms@related@hash\undefined}{}\global\undef\cbx@lasthash}%
\newbibmacro*{begrelatedloop}{}
\newbibmacro*{endrelatedloop}{}
+\renewcommand*{\begrelateddelim}{%
+ \ifthenelse{\ifentrytype{jurisdiction}\OR\ifentrytype{legal}\OR%
+ \ifentrytype{legislation}}%
+ {\newcunitpunct}%
+ {\newunitpunct}}%
+
\newcommand*{\begrelateddelimmaintitle}{\newunitpunct\par\nobreak}%
\newcommand*{\begrelateddelimmaintitlenc}{\newunitpunct\par\nobreak}%
+% The idea here is to support standard multicite presentation via the
+% 'short' relatedtype mechanism.
+
+\newcommand*{\relateddelimshort}{%
+ \iffieldequals{fullhash}{\cbx@lasthash}%
+ {\ifbool{cms:atcite}{\addsemicolon\addspace}{\addcomma\addspace}}%
+ {\addsemicolon\addspace}}%
+
\def\ifrelatedloop{%
\ifboolexpr{ test {\xifinlistcs{\strfield{entrykey}}{bbx:relatedloop}}%
or test {\xifinlistcs{\strfield{clonesourcekey}}{bbx:relatedloop}} }}%
@@ -5197,14 +5368,14 @@ bibliography style]
test {\ifbibxstring{\thefield{relatedtype}s}}%
}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedtype}s}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedtype}s}}}%
{\iffieldbibstring{relatedtype}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedtype}}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedtype}}}}%
{}}}%
{\iffieldbibstring{relatedstring}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedstring}}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedstring}}}}%
{\printfield[\bbx@tempb]{relatedstring}}}%
\docsvfield{related}%
\usebibmacro{endrelatedloop}}}%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate.cbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate.cbx
index 1e37ea0ecce..b3d9453eef6 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate.cbx
@@ -3,7 +3,7 @@
% intention of providing inline citations (and a reference list) for
% the author-date style of the Chicago Manual of Style, 17th edition.
-\ProvidesFile{chicago-authordate.cbx}[2020/04/20 v 3.14 biblatex
+\ProvidesFile{chicago-authordate.cbx}[2021/03/27 v 3.16 biblatex
citation style]
\RequireCitationStyle{chicago-dates-common}
@@ -194,8 +194,10 @@ citation style]
{}%
\printtext[issuetitle]{%
\printfield[itnoformat]{issuetitle}%
- \setunit{\subtitlepunct}%
- \printfield[sitnoformat]{issuesubtitle}}}}
+ \iftoggle{cms@origpublished}% Complications due to \smartof
+ {}%
+ {\setunit{\subtitlepunct}%
+ \printfield[sitnoformat]{issuesubtitle}}}}}
%%%% Related macros that can't reside in common.cbx %%%%
@@ -220,93 +222,71 @@ citation style]
\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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
\mkbibemph{#1}}
+\DeclareFieldFormat{title:hook:alt}{%
+ \iftoggle{cms@reprintmt}%
+ {\begingroup
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
+ \endgroup}%
+ {\lbx@inittitlehook{#1}}% Inside entries don't use main doc. lang.
+ \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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
- \mkbibquote{#1}}
+ \iffieldundef{issuesubtitle}%
+ {\mkbibquote{#1}}%
+ {\mkbibquote{#1\subtitlepunct\printfield{issuesubtitle}}}}
\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}}
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibstring{chapter}}%
+ \bibstring{chapter}~#1\addspace\bibstring{in}}
+ \endgroup}
\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}
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibstring{chapter}}%
+ \bibstring{chapter}~#1}
+ \endgroup}
\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
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibstring{track}}%
\bibstring{track}~#1}%
+ \endgroup}
+
+\DeclareFieldFormat{volume:hook}{%
+ \begingroup
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{volume}}%
+ \bibstring{volume}~#1}%
+ \endgroup}%
+
+\DeclareFieldFormat{parttoo:hook}{%
+ \ifnumerals{#1}%
+ {\addcomma\addspace\bibstring[\mkrelatedstringtext]{partvolume}~#1}%
+ {\addcomma\addspace\ifcapital{\MakeCapital{#1}}{#1}}}
+
+\DeclareFieldFormat{part:hook}{%
+ \begingroup
+ \ifnumerals{#1}%
+ {\mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{partvolume}}%
+ \bibstring{partvolume}~#1}}%
+ {\mkrelatedstringtext{\lbx@inittitlehook{#1}}%
+ \ifcapital{\MakeCapital{#1}}{#1}}%
+ \endgroup}
\DeclareFieldFormat{sitnoformat}{#1}
\DeclareFieldFormat{sjtnoformat}{#1}
@@ -327,11 +307,23 @@ citation style]
{\iffieldundef{journaltitle}% Switch order for 17th ed.
{\iffieldundef{maintitle}%
{}%
- {\DeclareFieldAlias{maintitle}{title:hook}}}%
+ {\toggletrue{cms@reprintmt}%
+ \ifthenelse{\(\iffieldundef{volume}\AND\iffieldundef{part}\)%
+ \OR\ifentrytype{inbook}\OR\ifentrytype{incollection}\OR%
+ \ifentrytype{inproceedings}\OR\ifentrytype{letter}}%
+ {\DeclareFieldAlias{maintitle}{title:hook}}%
+ {\iffieldundef{volume}%
+ {\DeclareFieldAlias{part}{part:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}%
+ {\DeclareFieldAlias{volume}{volume:hook}%
+ \DeclareFieldAlias{part}{parttoo:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}}}}%
{\DeclareFieldAlias{jtnoformat}{title:hook}%
\DeclareFieldAlias{sjtnoformat}{title}%
\DeclareFieldAlias{journaltitle}{default}%
+ \DeclareFieldAlias{injournaltitle}{default}%
\DeclareFieldAlias{shortjournal}{series}%
+ \DeclareFieldAlias{inshortjournal}{series}%
\DeclareFieldAlias{jtsnoformat}{title:hook}}}%
{\DeclareFieldAlias{booktitle}{title:hook}}}%
{\DeclareFieldAlias{tnoformat}{title:hook}%
@@ -341,16 +333,16 @@ citation style]
\DeclareFieldAlias[music]{title}{default}%
\DeclareFieldAlias{title}{default}%
\DeclareFieldAlias[periodical]{shorttitle}{series}}}%
- {\iffieldundef{issuesubtitle}%
- {\DeclareFieldAlias{itnoformat}{ititle:hook}%
- \DeclareFieldAlias{issuetitle}{default}}%
- {\DeclareFieldAlias{issuetitle}{ititle:hook}}}}%
+ {\DeclareFieldAlias{itnoformat}{ititle:hook}%
+ \DeclareFieldAlias{issuetitle}{default}}}%
{\ifthenelse{\ifentrytype{audio}\OR\ifentrytype{music}\OR%
\ifentrytype{video}}%
{\iffieldundef{title}%
{\ifentrytype{music}%
- {\DeclareFieldAlias[music]{chapter}{muschapter:hook}}%
- {\DeclareFieldAlias{chapter}{avchapter:hook}}}%
+ {\DeclareFieldAlias[music]{chapter}{muschapter:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}%
+ {\DeclareFieldAlias{chapter}{avchapter:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}}%
{\DeclareFieldAlias{tnoformat}{title:hook}%
\DeclareFieldAlias{stnoformat}{citetitle}%
\DeclareFieldAlias[video]{title}{default}%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate16.bbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate16.bbx
index e0bde354e9e..02081d02573 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate16.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate16.bbx
@@ -2,7 +2,7 @@
% standard.bbx and from chicago-notes.bbx. It provides the
% reference list formatting for the Chicago author-date style.
-\ProvidesFile{chicago-authordate16.bbx}[2020/04/20 v 3.14 biblatex
+\ProvidesFile{chicago-authordate16.bbx}[2021/03/27 v 3.16 biblatex
bibliography style]
%%%% Initialize and format bibliography and los %%%%
@@ -4579,6 +4579,8 @@ bibliography style]
%%%% Related functionality from standard.bbx %%%%
+\providecommand*{\mkrelatedstringtext}[1]{{{\mainlang #1}}}
+
\newcounter{bbx:relatedcount}
\newcounter{bbx:relatedtotal}
@@ -4652,14 +4654,14 @@ bibliography style]
test {\ifbibxstring{\thefield{relatedtype}s}}%
}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedtype}s}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedtype}s}}}%
{\iffieldbibstring{relatedtype}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedtype}}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedtype}}}}%
{}}}%
{\iffieldbibstring{relatedstring}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedstring}}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedstring}}}}%
{\printfield[\bbx@tempb]{relatedstring}}}%
\docsvfield{related}%
\usebibmacro{endrelatedloop}}}%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate16.cbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate16.cbx
index 725a201aec6..fff90b8a0e8 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate16.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-authordate16.cbx
@@ -3,7 +3,7 @@
% providing inline citations (and a reference list) for the
% author-date style of the Chicago Manual of Style, 16th edition.
-\ProvidesFile{chicago-authordate16.cbx}[2020/04/20 v 3.14 biblatex
+\ProvidesFile{chicago-authordate16.cbx}[2021/03/27 v 3.16 biblatex
citation style]
\RequireCitationStyle{chicago-dates-common16}
@@ -177,8 +177,10 @@ citation style]
{}%
\printtext[issuetitle]{%
\printfield[itnoformat]{issuetitle}%
- \setunit{\subtitlepunct}%
- \printfield[sitnoformat]{issuesubtitle}}}}
+ \iftoggle{cms@origpublished}% Complications due to \smartof
+ {}%
+ {\setunit{\subtitlepunct}%
+ \printfield[sitnoformat]{issuesubtitle}}}}}
%%%% Related macros that can't reside in common.cbx %%%%
@@ -203,75 +205,33 @@ citation style]
\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}%
+ \mkrelatedstringtext{%
+ \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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
- \mkbibquote{#1}}
+ \iffieldundef{issuesubtitle}%
+ {\mkbibquote{#1}}%
+ {\mkbibquote{#1\subtitlepunct\printfield{issuesubtitle}}}}
\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}}
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibstring{chapter}}%
+ \bibstring{chapter}~#1\addspace\bibstring{in}}
+ \endgroup}
\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}
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibstring{chapter}}%
+ \bibstring{chapter}~#1}
+ \endgroup}
\DeclareFieldFormat{sitnoformat}{#1}
\DeclareFieldFormat{sjtnoformat}{#1}
@@ -306,10 +266,8 @@ citation style]
\DeclareFieldAlias[music]{title}{default}%
\DeclareFieldAlias{title}{default}%
\DeclareFieldAlias[periodical]{shorttitle}{series}}}%
- {\iffieldundef{issuesubtitle}%
- {\DeclareFieldAlias{itnoformat}{ititle:hook}%
- \DeclareFieldAlias{issuetitle}{default}}%
- {\DeclareFieldAlias{issuetitle}{ititle:hook}}}}%
+ {\DeclareFieldAlias{itnoformat}{ititle:hook}%
+ \DeclareFieldAlias{issuetitle}{default}}}%
{\ifthenelse{\ifentrytype{audio}\OR\ifentrytype{music}\OR%
\ifentrytype{video}}%
{\iffieldundef{title}%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-dates-common.cbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-dates-common.cbx
index 902b41fa645..7a410eba8ac 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-dates-common.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-dates-common.cbx
@@ -4,7 +4,7 @@
% list) for the two author-date styles of the Chicago Manual of Style,
% 17th edition.
-\ProvidesFile{chicago-dates-common.cbx}[2020/04/20 v 3.14 biblatex
+\ProvidesFile{chicago-dates-common.cbx}[2021/03/27 v 3.16 biblatex
citation style]
%%%% Biblatex initialization + Chicago options + Toggles %%%%
@@ -13,6 +13,8 @@ citation style]
\newbool{cms:bracket}
\newbool{cms:extraparens}
\newbool{cms:comma}
+\newbool{cms:atcite}
+\newbool{cms:tcit}
\providecommand*{\mkibid}[1]{#1}
@@ -58,9 +60,12 @@ citation style]
\providetoggle{cms@headlessnote}% Keep
\providetoggle{cms@noibid}% Keep
\providetoggle{cms@namedash}
+\providetoggle{cms@nona}
+\providetoggle{cms@subseqnona}
\providetoggle{cms@usecompiler}% Keep
\providetoggle{cms@origpublished}% Keep
\providetoggle{cms@annotation}% Keep
+\providetoggle{cms@cbxannote}
\providetoggle{cms@postposit}% Keep
\providetoggle{cms@fullshhand}%
\providetoggle{cms@allshort}% For legal types
@@ -77,6 +82,7 @@ citation style]
\providetoggle{cms@related}
\providetoggle{cms@linkit}
\providetoggle{cms@authortitle}
+\providetoggle{cms@shortrelated}
\AtEveryCitekey{%
\iffieldundef{userc}%
@@ -180,10 +186,133 @@ citation style]
\DeclareBiblatexOption{global,entry}[boolean]{hypertitle}[true]{%
\settoggle{cms@linkit}{#1}}%
-\DeclareBibliographyOption[boolean]{annotation}[true]{%
- \global\settoggle{cms@annotation}{#1}}%
-
-\DeclareBibliographyOption[boolean]{dashed}[true]{%
+\DeclareBiblatexOption{global,type,entry}[string]{annotation}[true]{%
+ \ifcsdef{cms@opt@annot@#1}%
+ {\csuse{cms@opt@annot@#1}}%
+ {\blx@err@invopt{annotation=#1}{}}}%
+\def\cms@opt@annot@true{%
+ \toggletrue{cms@annotation}%
+ \togglefalse{cms@cbxannote}}
+\def\cms@opt@annot@false{%
+ \togglefalse{cms@annotation}%
+ \togglefalse{cms@cbxannote}}
+\def\cms@opt@annot@notes{%
+ \togglefalse{cms@annotation}%
+ \toggletrue{cms@cbxannote}}
+\def\cms@opt@annot@bib{%
+ \toggletrue{cms@annotation}%
+ \togglefalse{cms@cbxannote}}
+\def\cms@opt@annot@all{%
+ \toggletrue{cms@annotation}%
+ \toggletrue{cms@cbxannote}}
+
+\DeclareBiblatexOption{global,type,entry}[string]{bibannotesep}[vpar]{%
+ \ifcsdef{cms@opt@bannsep@#1}%
+ {\csuse{cms@opt@bannsep@#1}}%
+ {\blx@err@invopt{bibannotesep=#1}{}}}
+\def\cms@opt@bannsep@none{%
+ \let\bibannotesep\@empty}%
+\def\cms@opt@bannsep@comma{%
+ \def\bibannotesep{\addcomma\addspace}}%
+\def\cms@opt@bannsep@colon{%
+ \def\bibannotesep{\addcolon\addspace}}%
+\def\cms@opt@bannsep@space{%
+ \def\bibannotesep{\addspace}}%
+\def\cms@opt@bannsep@semicolon{%
+ \def\bibannotesep{\addsemicolon\addspace}}%
+\def\cms@opt@bannsep@period{%
+ \def\bibannotesep{\addperiod\addspace}}%
+\def\cms@opt@bannsep@par{%
+ \def\bibannotesep{\addperiod\par\nobreak}}%
+\def\cms@opt@bannsep@vpar{%
+ \def\bibannotesep{\addperiod\par\nobreak \vskip \bibitemsep}}%
+\def\cms@opt@bannsep@parbreak{%
+ \def\bibannotesep{\addperiod\par}}%
+\def\cms@opt@bannsep@vparbreak{%
+ \def\bibannotesep{\addperiod\par \vskip \bibitemsep}}%
+
+\DeclareBiblatexOption{global,type,entry}[string]{citeannotesep}[period]{%
+ \ifcsdef{cms@opt@cannsep@#1}%
+ {\csuse{cms@opt@cannsep@#1}}%
+ {\blx@err@invopt{citeannotesep=#1}{}}}
+\def\cms@opt@cannsep@none{%
+ \let\citeannotesep\@empty}%
+\def\cms@opt@cannsep@comma{%
+ \def\citeannotesep{\addcomma\addspace}}%
+\def\cms@opt@cannsep@colon{%
+ \def\citeannotesep{\addcolon\addspace}}%
+\def\cms@opt@cannsep@space{%
+ \def\citeannotesep{\addspace}}%
+\def\cms@opt@cannsep@semicolon{%
+ \def\citeannotesep{\addsemicolon\addspace}}%
+\def\cms@opt@cannsep@period{%
+ \def\citeannotesep{\addperiod\addspace}}%
+\def\cms@opt@cannsep@par{%
+ \def\citeannotesep{\addperiod\par\nobreak}}%
+\def\cms@opt@cannsep@vpar{%
+ \def\citeannotesep{\addperiod\par\nobreak \vskip\p@}}%
+\def\cms@opt@cannsep@parbreak{%
+ \def\citeannotesep{\addperiod\par}}%
+\def\cms@opt@cannsep@vparbreak{%
+ \def\citeannotesep{\addperiod\par \vskip\p@}}%
+
+\DeclareBiblatexOption{global}[string]{formatbib}[max]{%
+ \ifcsdef{cms@opt@formatbib@#1}%
+ {\csuse{cms@opt@formatbib@#1}}%
+ {\blx@err@invopt{formatbib=#1}{}}}%
+\def\cms@opt@formatbib@max{}%
+\def\cms@opt@formatbib@min{%
+ \renewcommand*{\bibsetup}{%
+ \interlinepenalty=0\relax
+ \widowpenalty=0\relax
+ \@clubpenalty=0\relax
+ \clubpenalty=0\relax
+ \brokenpenalty=0\relax
+ \raggedbottom
+ \frenchspacing
+ \biburlsetup}}%
+\def\cms@opt@formatbib@minwo{%
+ \patchcmd\bibsetup%
+ {\interlinepenalty=5000\relax}%
+ {\interlinepenalty=0\relax}{}{}}%
+\def\cms@opt@formatbib@annote{%
+ \patchcmd\bibsetup%
+ {\interlinepenalty=5000\relax}%
+ {\interlinepenalty=0\relax}{}{}%
+ \AtEveryBibitem{%
+ \interlinepenalty=5000\relax}}%
+\def\cms@opt@formatbib@annotenp{%
+ \AtEndPreamble{%
+ \ifdefvoid{\cms@entrybreak}%
+ {\patchcmd\bibsetup%
+ {\interlinepenalty=5000\relax}%
+ {\interlinepenalties\cmspens{3}\relax}{}{}}%
+ {\patchcmd\bibsetup%
+ {\interlinepenalty=5000\relax}%
+ {\interlinepenalties\cmspens{\cms@entrybreak}\relax}{}{}}}}%
+
+\DeclareBiblatexOption{global}[integer]{entrybreak}[3]{%
+ \IfInteger{#1}%
+ {\numdef\cms@entrybreak{#1}}%
+ {\numdef\cms@entrybreak{3}\cms@warning@noline%
+ {'entrybreak=#1' isn't a valid option.\MessageBreak
+ This option only accepts integers.\MessageBreak
+ It has been set to the default '3'.\MessageBreak
+ Please see biblatex-chicago.pdf for\MessageBreak
+ more information}}}
+
+\def\cmspens@i#1{\space
+ \ifnum#1>\@ne\number5000
+ \expandafter\cmspens@i
+ \expandafter{\number\numexpr#1-\@ne\expandafter}%
+ \else
+ \ifnum#1>\z@\number10
+ \else\unspace
+ \fi\fi}
+
+\def\cmspens#1{\space #1\cmspens@i{#1}}
+
+\DeclareBiblatexOption{global,type,entry}[boolean]{dashed}[true]{%
\settoggle{cms@namedash}{#1}}
\DeclareBibliographyOption[boolean]{short}[true]{%
@@ -210,13 +339,8 @@ citation style]
\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{}%
+\DeclareBibliographyOption[boolean]{postnotepunct}[true]{%
+ \global\settoggle{cms@modpostnote}{#1}}%
\DeclareBiblatexOption{global,entry}[boolean]{usecompiler}[true]{%
\settoggle{blx@usenamec}{#1}}%
@@ -292,6 +416,32 @@ citation style]
\DeclareBibliographyOption[boolean]{ordinalgb}[true]{%
\settoggle{cms@ukord}{#1}}%
+% Controlling formatting of, and punctuation before, nameaddon fields %
+
+\DeclareBiblatexOption{global,type,entry}[string]{nameaddonformat}{%
+ \def\cms@naformat{#1}}
+
+\DeclareBiblatexOption{global,type,entry}[string]{nameaddonsep}[space]{%
+ \ifcsdef{cms@opt@nasep@#1}%
+ {\csuse{cms@opt@nasep@#1}}%
+ {\csuse{cms@opt@nasep@space}\cms@warning@noline%
+ {'nameaddonsep=#1' is not a valid option.\MessageBreak
+ The default - 'space' - has been set.\MessageBreak
+ Please see biblatex-chicago.pdf for valid\MessageBreak
+ option keys}}}%
+\def\cms@opt@nasep@none{%
+ \let\nameaddonpunct\@empty}%
+\def\cms@opt@nasep@comma{%
+ \def\nameaddonpunct{\addcomma\addspace}}%
+\def\cms@opt@nasep@colon{%
+ \def\nameaddonpunct{\addcolon\addspace}}%
+\def\cms@opt@nasep@space{%
+ \def\nameaddonpunct{\addspace}}%
+\def\cms@opt@nasep@semicolon{%
+ \def\nameaddonpunct{\addsemicolon\addspace}}%
+\def\cms@opt@nasep@period{%
+ \def\nameaddonpunct{\addperiod\addspace}}%
+
% Controlling punctuation before titleaddon fields %
\DeclareBiblatexOption{global,type,entry}[string]{ptitleaddon}[period]{%
@@ -313,7 +463,7 @@ citation style]
\def\cms@opt@ptao@semicolon{%
\def\ptitleaddonpunct{\addsemicolon\addspace}}%
\def\cms@opt@ptao@period{%
- \def\ptitleaddonpunct{\addperiod\addspace}}%
+ \def\ptitleaddonpunct{\newunitpunct}}%
\DeclareBiblatexOption{global,type,entry}[string]{ctitleaddon}[comma]{%
\ifcsdef{cms@opt@ctao@#1}%
@@ -334,7 +484,7 @@ citation style]
\def\cms@opt@ctao@semicolon{%
\def\ctitleaddonpunct{\addsemicolon\addspace}}%
\def\cms@opt@ctao@period{%
- \def\ctitleaddonpunct{\addperiod\addspace}}%
+ \def\ctitleaddonpunct{\newunitpunct}}%
% The field-exclusion options %
@@ -372,12 +522,29 @@ citation style]
\DeclareBiblatexOption{global,type,entry}[boolean]{hidevolumes}[true]{%
\settoggle{cms@hidevolumes}{#1}}%
+\DeclareBiblatexOption{global,type,entry}[string]{nameaddon}[all]{%
+ \ifcsdef{cms@gopt@na@#1}%
+ {\csuse{cms@gopt@na@#1}}%
+ {\csuse{cms@gopt@na@all}\cms@warning@noline%
+ {'nameaddon=#1' is not a valid option.\MessageBreak
+ The default - 'all' - has been set.\MessageBreak
+ Please see biblatex-chicago.pdf for valid\MessageBreak
+ option keys}}}%
+\def\cms@gopt@na@all{}%
+\def\cms@gopt@na@none{%
+ \settoggle{cms@nona}{true}}%
+\def\cms@gopt@na@cite{\settoggle{cms@nona}{true}}%
+\def\cms@gopt@na@bib{}%
+\def\cms@gopt@na@first{\settoggle{cms@subseqnona}{true}}%
+\def\cms@gopt@na@citefirst{\settoggle{cms@nona}{true}}%
+\def\cms@gopt@na@bibfirst{\settoggle{cms@subseqnona}{true}}%
+
\DeclareBiblatexOption{type,entry}[boolean]{authortitle}[true]{%
\settoggle{cms@authortitle}{#1}}%
\ExecuteBibliographyOptions{includeall,hidevolumes,booklongxref,related,%
ctitleaddon,ptitleaddon,journalabbrev=notes,legalnotes,supranotes,%
- dashed}%
+ dashed,bibannotesep,citeannotesep,nameaddonsep=space}%
\ExecuteBibliographyOptions[standard]{useeditor=false,usenamec=false}%
\ExecuteBibliographyOptions[dataset]{authortitle=true}%
@@ -393,6 +560,22 @@ citation style]
\map{
\step[fieldsource=shorthand, final]
\step[fieldset=sortname, origfieldval]}}}}%
+ {}%
+ \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}%
+ }}%
{}}
\DeclareLabeltitle[legislation]{%
@@ -559,23 +742,7 @@ citation style]
\settoggle{cms@switchdates}{#1}}%
\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}%
- }}%
- {}}%
+ \settoggle{cms@strict}{#1}}%
\protected\def\blx@newcunit{%
\iftoggle{blx@keepunit}%
@@ -670,7 +837,11 @@ citation style]
\usebibmacro{cmscitesortdate}%
\usebibmacro{cite:reinit}}%
{\iffieldequals{fullhash}{\cbx@lasthash}%
- {\iffieldundef{postnote}%
+ {\ifboolexpr{%
+ test {\iffieldundef{postnote}}%
+ and
+ not bool {cms:atcite}%
+ }%
{\setunit{\compcitedelim}}%
{}%
\usebibmacro{cmscitesortdate}}%
@@ -683,7 +854,8 @@ citation style]
{\savefield{fullhash}{\cbx@lasthash}}%
{\savefield{fullhash}{\cbx@lastyear}}}}}%
{\usebibmacro{cite:shorthand}}}}%
- \setunit{\multicitedelim}}% ???
+ \ifnumless{\value{citecount}}{\value{citetotal}}%
+ {\setunit{\multicitedelim}}{}}% ???
\newbibmacro*{cmsbracketname}{%
\iffieldequalstr{authortype}{anon}%
@@ -720,7 +892,7 @@ citation style]
}% Altered for CMS
{\iffieldequals{fullhash}{\cbx@lasthash}%
{\iffieldundef{postnote}%
- {\setunit{\compcitedelim}}%
+ {\setunit{\multicitedelim}}%
{}%
\usebibmacro{cite:label}}%
{\usebibmacro{cite:label}%
@@ -728,7 +900,11 @@ citation style]
{\savefield{fullhash}{\cbx@lasthash}}%
{}}}%
{\iffieldequals{fullhash}{\cbx@lasthash}%
- {\iffieldundef{postnote}%
+ {\ifboolexpr{%
+ test {\iffieldundef{postnote}}%
+ and
+ not bool {cms:atcite}%
+ }%
{\setunit{\compcitedelim}}%
{}%
\usebibmacro{cmscitesortdate}}%
@@ -752,6 +928,8 @@ citation style]
togl {cms@authortitle}%
or
test {\iffieldequalstr{entrysubtype}{classical}}%
+ or
+ bool {cms:atcite}%
}%
{\setunit{\multicitedelim}}%
{\setunit{\compcitedelim}}}}%
@@ -883,6 +1061,8 @@ citation style]
togl {cms@authortitle}%
or
test {\iffieldequalstr{entrysubtype}{classical}}%
+ or
+ bool {cms:atcite}%
}%
{\setunit{\multicitedelim}}%
{\setunit{\compcitedelim}}}}%
@@ -898,7 +1078,9 @@ citation style]
{\iffieldequals{fullhash}{\cbx@lastyear}%
{\setunit{\multicitedelim}%
\global\undef\cbx@lastyear}%
- {\setunit{\compcitedelim}}}%
+ {\ifbool{cms:atcite}%
+ {\setunit{\multicitedelim}}%
+ {\setunit{\compcitedelim}}}}%
{\setunit{\multicitedelim}}%
\printtext[bibhyperref]{%
\printfield{shorthand}}}}%
@@ -992,7 +1174,7 @@ citation style]
\iffieldundef{postnote}%
{}%
{\savefield{fullhash}{\cbx@lastyear}%
- \setunit{\postnotewrapper}%delim}%
+ \postnotewrapper%\setunit{\postnotewrapper}
\printfield{postnote}}%
\ifthenelse{\value{multicitecount}=\value{multicitetotal}}%
{\setunit{}%
@@ -1010,7 +1192,9 @@ citation style]
\iftoggle{cms@los}%
{\iffieldequals{fullhash}{\cbx@lasthash}%
{\printtext[cmshyper]{%
- \setunit{\compcitedelim}%
+ \ifbool{cms:atcite}%
+ {\setunit{\multicitedelim}}%
+ {\setunit{\compcitedelim}}%
\usebibmacro{cmscitesortdate}}}%
{\printfield{shorthand}%
\printtext[cmshyper]{%
@@ -1081,7 +1265,8 @@ citation style]
\printfield{booktitleaddon}%
\iffieldundef{booktitleaddon}{}{\addcomma\addspace}}}%
{\printtext[cmshyper]{\printfield[citetitle]{labeltitle}}}}}}%
- {\printtext[cmshyper]{\printfield{label}}}}%
+ {\printtext[cmshyper]{\printfield{label}}}%
+ \global\booltrue{cms:atcite}}%
\newbibmacro*{cite:labelyear+extrayear}{%
\ifboolexpr{ (
@@ -1217,7 +1402,8 @@ citation style]
{\toggletrue{cms@switchdates}%
\usebibmacro{cmsciteyear}}%
{\usebibmacro{cmsciteyear}}}}%
- {\usebibmacro{cmsciteyear}}}}%
+ {\usebibmacro{cmsciteyear}}}%
+ \global\boolfalse{cms:atcite}}%
\newbibmacro*{cmsciteyear}{%
\ifentrytype{patent}% Fix for double year w/cmsdate
@@ -1228,7 +1414,13 @@ citation style]
{\usebibmacro{cite:bothyear+oldstyle}}%
{\iftoggle{cms@bothlabelold}%
{\usebibmacro{cite:bothyear+oldstyle}}%
- {\iftoggle{cms@fulldate}%
+ {\ifboolexpr{%
+ togl {cms@fulldate}%
+ and
+ not test {\iffieldequalstr{labeldatesource}{year}}%
+ and
+ not test {\iffieldequalstr{labeldatesource}{origyear}}%
+ }%
{\printtext[cmsyearhyper]{%
\csuse{print\strfield{labeldatesource}date}%
\iffieldundef{\strfield{labeldatesource}hour}%
@@ -1383,17 +1575,16 @@ citation style]
{}%
{\usebibmacro{postnote}}
-\DeclareCiteCommand{\cmshypercite}% Intended for CustomC comments
+\DeclareCiteCommand{\atcite}
{\usebibmacro{cite:init}%
- \togglefalse{blx@skipbib}%
- \togglefalse{cms@authortitle}%
\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
+ \toggletrue{cms@authortitle}%
\usebibmacro{cite}}
{}%\multicitedelim
- {}%\usebibmacro{postnote} Stops double printing
+ {\usebibmacro{postnote}}
-\DeclareCiteCommand{\atcite}
+\DeclareCiteCommand{\atpcite}[\mkbibparens]
{\usebibmacro{cite:init}%
\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
@@ -1402,14 +1593,77 @@ citation style]
{}%\multicitedelim
{\usebibmacro{postnote}}
-\DeclareCiteCommand{\atpcite}[\mkbibparens]
+\DeclareCiteCommand{\citeincite}[\cmswrap]% Used in fields of other entries
{\usebibmacro{cite:init}%
+ \usebibmacro{backref+check}%
+ \togglefalse{blx@skipbib}%
+ \togglefalse{cms@authortitle}%
+ \togglefalse{cms@fulldate}%
+ \usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {}%\multicitedelim
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\citeincitef}[\cmswrapf]%
+ {\usebibmacro{cite:init}%
+ \usebibmacro{backref+check}%
+ \togglefalse{blx@skipbib}%
+ \togglefalse{cms@authortitle}%
+ \togglefalse{cms@fulldate}%
+ \usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {}%\multicitedelim
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\cmshypercite}[\cmswraphy]% For CustomC comments
+ {\usebibmacro{cite:init}%
+ \usebibmacro{backref+check}%
+ \togglefalse{blx@skipbib}%
+ \togglefalse{cms@authortitle}%
+ \togglefalse{cms@fulldate}%
\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
- \toggletrue{cms@authortitle}%
\usebibmacro{cite}}
{}%\multicitedelim
- {\usebibmacro{postnote}}
+ {}%\usebibmacro{postnote} Stops double printing
+
+\DeclareCiteCommand{\fullciteincite}% For use in annotation fields
+ {\usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \toggletrue{cms@fullnote}%
+ \togglefalse{cms@shortnote}%
+ \usebibmacro{cite:driver}%
+ \usebibmacro{footcite:save}%
+ \usebibmacro{cite:save}}
+ {\multicitedelim}
+ {}
+
+\def\cmswrap#1{%
+ \ifbool{cbx:parens}{\global\booltrue{cms:tcit}}{}% For \textcites
+ \blx@initunit#1%
+ \ifdef{\blx@thepostpunct}%
+ {\ifdefvoid{\abx@field@postpunct}%
+ {\blx@dopostpunct}{}}%
+ {}%
+ \global\let\abx@field@postpunct\@empty%
+ \ifbool{cms:tcit}{\global\booltrue{cbx:parens}\global\boolfalse{cms:tcit}}%
+ {}}
+
+\def\cmswrapf#1{%
+ \ifbool{cbx:parens}{\global\booltrue{cms:tcit}}{}% For \textcites
+ \blx@initunit#1\ifdef{\blx@thepostpunct}{\cms@cicpunct}{}%
+ \ifbool{cms:tcit}{\global\booltrue{cbx:parens}\global\boolfalse{cms:tcit}}%
+ {}}
+
+\def\cmswraphy#1{%
+ \ifbool{cbx:parens}{\global\booltrue{cms:tcit}}{}% For \textcites
+ #1%
+ \ifbool{cms:tcit}{\global\booltrue{cbx:parens}\global\boolfalse{cms:tcit}}%
+ {}}
+
+\def\cms@cicpunct{}% Only needed in US; redefine in lbx
%%% Commands, macros and formats for the Legal entry types %%%
@@ -1449,11 +1703,13 @@ citation style]
\DeclareCiteCommand{\runcite}% 17th ed.
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
+ \toggletrue{cms@fullnote}%
+ \togglefalse{cms@shortnote}%
\toggletrue{cms@running@text}%
- \usebibmacro{cite}%
+ \usebibmacro{cite:full}%
\togglefalse{cms@running@text}}
{\multicitedelim}
- {\usebibmacro{cite:postnote}}
+ {}%\usebibmacro{postnote}
\newbibmacro*{cite:full}{%
\iftoggle{cms@noneshort}%
@@ -1588,6 +1844,14 @@ citation style]
and
not test {\iffieldint{volume}}%
)
+ or
+ (
+ test {\iffieldundef{volume}}% Bug fix; correct?
+ and
+ test {\iffieldundef{series}}%
+ and
+ not test {\iffieldundef{titleaddon}}%
+ )
}%
{\ifboolexpr{%
test {\iffieldundef{entrysubtype}}%
@@ -1962,6 +2226,10 @@ citation style]
\DeclareFieldFormat[jurisdiction,legal,legislation]{shortjournal}{#1\isdot}
+\DeclareFieldFormat{injournaltitle}{\mkbibemph{#1}\isdot}
+
+\DeclareFieldFormat{inshortjournal}{\mkbibemph{#1}\isdot}
+
\DeclareFieldFormat{jurisdictionser}{%
\ifinteger{#1}%
{\mkjuridordinal{#1}}%
@@ -1989,6 +2257,8 @@ citation style]
\DeclareFieldFormat{jourvol}{#1}
+\DeclareFieldFormat{shortvol}{#1}
+
\DeclareFieldFormat[jurisdiction,legal,legislation]{addendum}{%
\ifcapital{\mkbibparens{\MakeCapital{#1\isdot}}}{\mkbibparens{#1\isdot}}}
@@ -1997,11 +2267,7 @@ citation style]
{\bibsstring{part}~#1}%
{#1\isdot}}%
-\DeclareFieldFormat[legal,legislation]{chapter}{%
- \ifthenelse{\iffieldequalstr{entrysubtype}{uk}\OR%
- \iffieldequalstr{entrysubtype}{hansard}}%
- {c\adddotspace #1}%
- {\bibsstring{chapter}~#1}}%
+\DeclareFieldFormat[legal,legislation]{chapter}{c\adddotspace #1}%
\DeclareFieldFormat[music]{chapter}{\bibstring{track}~#1}
@@ -2035,7 +2301,9 @@ citation style]
\DeclareFieldAlias[dataset]{citetitle}[dataset]{title}
-\DeclareFieldAlias[dataset]{lostitle}[dataset]{title}
+\DeclareFieldFormat[dataset]{lostitle}{%
+ \addspace% Instead of in shorthand driver (2.1)
+ \mkbibparens{\ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}}
%%% Textcite commands taken verbatim from authoryear-comp.cbx %%%
@@ -2163,6 +2431,21 @@ citation style]
\DeclareMultiCiteCommand{\footcitetexts}[\mkbibfootnotetext]%
{\footcitetext}{\setunit{\multicitedelim}}
+\DeclareCitePunctuationPosition{\citeincitef}{d}
+
+\DeclareCitePunctuationPosition{\cmshypercite}{d}
+
+\DeclareCitePunctuationPosition{\citeincitefs}{d}
+
+\DeclareMultiCiteCommand{\citeincites}[\cmswrap]{\citeincite}%
+{\setunit{\multicitedelim}}%
+
+\DeclareMultiCiteCommand{\citeincitefs}[\cmswrapf]{\citeincite}%
+{\setunit{\multicitedelim}}%
+
+\DeclareMultiCiteCommand{\fullciteincites}{\fullciteincite}%
+{\setunit{\multicitedelim}}
+
\DeclareCiteCommand{\bibxrefcite}
{\usebibmacro{cite:init}%
\usebibmacro{backref+check}}%\usebibmacro{clearalmostall}} (?)
@@ -2188,13 +2471,7 @@ citation style]
\DeclareCiteCommand{\origpublcite}% Similar to above, w/o title.
{\usebibmacro{backref+check}%
- \nopunct%\unspace%
- \ifboolexpr{%
- togl {cms@otherlang}%
- and
- not test {\iffieldundef{langid}}%
- }%
- {\addspace}{\unspace}%
+ \nopunct%\unspace% Remove otherlang test for 3.16.
\savebibmacro{cmsbibsortdate}%
\renewbibmacro*{cmsbibsortdate}{}}%
{\usedriver
@@ -2259,27 +2536,27 @@ citation style]
\DeclareFieldFormat{prenote}{\ifcapital{\MakeCapital{#1}}{#1}\isdot}
\DeclareFieldFormat{postnote}{% Changed for page compression option
- \ifboolexpr{%
- togl {cms@comprange}%
- and
- test {\ifpages{#1}}%
- }%
- {\iffieldundef{pagination}%
- {\mkcomprange{#1}}%
- {\mkcomprange[{\mkpageprefix[pagination]}]{#1}}}%
+ \ifpages{#1}% xetex and luatex revealed a bug in original logic
+ {\iftoggle{cms@comprange}%
+ {{\iffieldundef{pagination}%
+ {\mkcomprange{#1}}%
+ {\mkcomprange[{\mkpageprefix[pagination]}]{#1}}}}%
+ {{\iffieldundef{pagination}%
+ {\mknormrange{#1}}%
+ {\mknormrange[{\mkpageprefix[pagination]}]{#1}}}}}%
{\iffieldundef{pagination}%
{#1}%
{\mkpageprefix[pagination]{#1}}}}%
\DeclareFieldFormat[inreference]{postnote}{%
- \ifboolexpr{%
- togl {cms@comprange}%
- and
- test {\ifpages{#1}}%
- }%
- {\iffieldundef{pagination}%
- {\bibsstring{subverbo}\addnbspace\mkbibquote{#1}}%
- {\mkcomprange[{\mkpageprefix[pagination]}]{#1}}}%
+ \ifpages{#1}%
+ {\iftoggle{cms@comprange}%
+ {\iffieldundef{pagination}%
+ {\bibsstring{subverbo}\addnbspace\mkbibquote{#1}}%
+ {\mkcomprange[{\mkpageprefix[pagination]}]{#1}}}%
+ {\iffieldundef{pagination}%
+ {\bibsstring{subverbo}\addnbspace\mkbibquote{#1}}%
+ {\mknormrange[{\mkpageprefix[pagination]}]{#1}}}}%
{\iffieldundef{pagination}%
{\bibsstring{subverbo}\addnbspace\mkbibquote{#1}}%
{\mkpageprefix[pagination]{#1}}}}%
@@ -2314,7 +2591,11 @@ citation style]
\usebibmacro{list:andothers}}
\DeclareFieldFormat[customc]{title}{%
- \iffieldundef{nameaddon}%
+ \ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ togl {cms@nona}%
+ }%
{\mkbibemph{\bibstring{see}}%
\addspace%
#1}%
@@ -2329,13 +2610,26 @@ citation style]
\addspace\cmshypercite{\cms@aa}}%
{\ifnameundef{author}%
{#1}%
- {\iffieldundef{nameaddon}%
+ {\ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ togl {cms@nona}%
+ }%
{\mkbibemph{\bibstring{see}}%
\addspace%
#1}%
{\printfield{nameaddon}\addspace #1}}}}
-\DeclareFieldAlias[customc]{lostitle}[customc]{title}
+\DeclareFieldFormat[customc]{lostitle}{%
+ \ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ togl {cms@nona}%
+ }%
+ {\mkbibemph{\bibstring{see}}%
+ \addspace%
+ #1}%
+ {\addspace #1}}
\DeclareFieldFormat{shortjournal}{\mkbibemph{#1}\isdot}
@@ -2346,7 +2640,10 @@ citation style]
\DeclareFieldFormat{letterday}{\mkbibcurdinal{#1}}
\DeclareFieldFormat{note}{%
- \ifcapital{\MakeCapital{#1}}{#1}}%
+ \if@cms@capital{#1}{\MakeCapital{#1}}{#1}}%
+
+\DeclareFieldFormat{capital}{%
+ \ifcapital{\MakeCapital{#1}}{#1}}
\DeclareFieldFormat
[audio,manual,music,patent,report,suppbook,suppcollection,thesis,video]
@@ -2459,14 +2756,34 @@ citation style]
\DeclareFieldAlias{userd}{titleaddon}% 16th ed.
-\DeclareFieldFormat{nameaddon}{\mkbibbrackets{#1\bibsentence}}% ?!
+\DeclareFieldFormat{nameaddon}{%
+ \ifdefvoid{\cms@naformat}%
+ {\mkbibbrackets{#1\bibsentence}}%
+ {\printtext[\cms@naformat]{#1\isdot}}}%
-\DeclareFieldFormat[online,review,suppperiodical]{nameaddon}{#1\bibsentence}%
+\DeclareFieldFormat[online,review,suppperiodical]{nameaddon}{%
+ \ifdefvoid{\cms@naformat}%
+ {#1\ifboolexpr{%(
+ test {\IfEndWith{\thefield{nameaddon}}{)}}%[
+ or
+ test {\IfEndWith{\thefield{nameaddon}}{]}}%
+ }%
+ {\bibsentence}{\isdot}}%
+ {\printtext[\cms@naformat]{#1\isdot}}}
\DeclareFieldFormat[misc]{nameaddon}{%
\iffieldundef{entrysubtype}%
- {\mkbibbrackets{#1\bibsentence}}%
- {#1\bibsentence}}
+ {\ifdefvoid{\cms@naformat}%
+ {\mkbibbrackets{#1\bibsentence}}%
+ {\printtext[\cms@naformat]{#1\isdot}}}%
+ {\ifdefvoid{\cms@naformat}%
+ {#1\ifboolexpr{%(
+ test {\IfEndWith{\thefield{nameaddon}}{)}}%[
+ or
+ test {\IfEndWith{\thefield{nameaddon}}{]}}%
+ }%
+ {\bibsentence}{\isdot}}%
+ {\printtext[\cms@naformat]{#1\isdot}}}}
\DeclareFieldFormat[customc]{nameaddon}{% For cross-refs
\ifbibstring{#1}%
@@ -2483,7 +2800,7 @@ citation style]
\DeclareFieldFormat{usere}{[#1]} % Better than mkbibbrackets?
\DeclareFieldFormat{titleaddon}{%
- \ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}%\custpunctc?
+ \if@cms@capital{#1}{\MakeCapital{#1\isdot}}{#1\isdot}}%\custpunctc?
\DeclareFieldAlias{booktitleaddon}{titleaddon}
@@ -2515,12 +2832,35 @@ citation style]
\DeclareFieldFormat{shortseries}{#1\isdot}
\DeclareFieldFormat{addendum}{%
- \ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}
+ \if@cms@capital{#1}{\MakeCapital{#1\isdot}}{#1\isdot}}
+
+% There was unfortunate interaction between the case-changing code and
+% cite commands when the latter were at the beginning of the
+% field. This modified \ifcapital will be used in the fields in which
+% the \citeincite(f|s) commands can appear.
+
+\newrobustcmd*{\if@cms@capital}[1]{%
+ \noexpandarg
+ \StrChar{#1}{1}[\cms@char]%
+ \ifboolexpr{%
+ test {\ifcapital}%
+ and
+ not test {\ifdefstring{\cms@char}{\citeincite}}%
+ and
+ not test {\ifdefstring{\cms@char}{\citeincites}}%
+ and
+ not test {\ifdefstring{\cms@char}{\citeincitef}}%
+ and
+ not test {\ifdefstring{\cms@char}{\citeincitefs}}%
+ }%
+ {\@firstoftwo}%
+ {\@secondoftwo}%
+}
-% This works better here than in the entrytail macro -- userf use is
-% no longer a problem, though the page breaking still isn't ideal.
+% For annotation fixes move all code for separators to the entrytail
+% macro, below.
-\DeclareFieldFormat{annotation}{\par\nobreak \vskip \bibitemsep #1}
+\DeclareFieldFormat{annotation}{#1}%
\DeclareFieldFormat{part}{%
\ifnumerals{#1}%
@@ -2544,12 +2884,20 @@ citation style]
and
not togl {cms@linkit}%
}%
- {#1}%
+ {\iftoggle{cms@shortrelated}%
+ {\ifentryinbib{\strfield{clonesourcekey}}%
+ {\bibhyperref[\strfield{clonesourcekey}]{#1}}%
+ {#1}}%
+ {#1}}%
{\bibhyperref{#1}}}%
\DeclareFieldFormat{cmsyearhyper}{% Only link when in ref list
\iftoggle{blx@skipbib}
- {#1}%
+ {\iftoggle{cms@shortrelated}%
+ {\ifentryinbib{\strfield{clonesourcekey}}%
+ {\bibhyperref[\strfield{clonesourcekey}]{#1}}%
+ {#1}}%
+ {#1}}%
{\bibhyperref{#1}}}%
%%%% Related field formats from biblatex.def %%%%
@@ -2582,7 +2930,7 @@ citation style]
{\ifcapital%
{\MakeCapital{#1}}%
{#1}}%
- \addspace}%
+ }%\addspace
%%%% Commands, for users and internal %%%%
@@ -2690,6 +3038,8 @@ citation style]
test {\ifdefstring\blx@languagename{brazilian}}%
or
test {\ifdefstring\blx@languagename{brazil}}%
+ or
+ test {\ifdefstring\blx@languagename{romanian}}%
}%
{\ifboolexpr{%
test {\iffieldundef{#1dateunspecified}}%
@@ -2817,6 +3167,8 @@ citation style]
{\addcomma\addspace}%
{\addcomma\addspace\bibstring{and}\addspace}}}
+\newcommand*{\journalpagespunct}{\addcolon\space}% Make it configurable
+
\renewcommand*{\postnotedelim}{% Cf. N&B style
\ifboolexpr{%
test {\ifciteibid}%
@@ -2834,30 +3186,49 @@ citation style]
{\togglefalse{cms@inlineibid}%
\iffieldundef{prenote}% Bug fix
{}%
- {\cms@testspace}}%
+ {\setunit{\cms@testspace}}}%
{\iffieldequalstr{entrysubtype}{classical}% For Notes+Bib, too?
{\DeclareNumChars*{abcdeABCDE:}%
\iffieldpages{postnote}%
- {\cms@testspace}%
- {\addcomma\addspace}}%
- {\addcomma\addspace}\DeclareNumChars{.}}}}
+ {\setunit{\cms@testspace}}%
+ {\newcunit}}%
+ {\newcunit}\DeclareNumChars{.}}}}
\newcommand*{\postnotewrapper}{%
- \iftoggle{cms@modpostnote}%
+ \iftoggle{cms@modpostnote}% Multiple bugs in v 2.0.
{\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}}}%
+ {\togglefalse{blx@unit}%
+ \expandarg
+ \StrGobbleLeft{\abx@field@postnote}{1}[\abx@field@postnote]%
+ \iffieldstart{postnote}{\ }%
+ {\setunit{\addcomma}}%
+ {\newcunit}}%
+ {\iffieldstart{postnote}{;}%
+ {\togglefalse{blx@unit}%
+ \expandarg
+ \StrGobbleLeft{\abx@field@postnote}{1}[\abx@field@postnote]%
+ \iffieldstart{postnote}{\ }%
+ {\setunit{\addsemicolon}}%
+ {\setunit{\addsemicolon\addspace}}}%
+ {\iffieldstart{postnote}{:}%
+ {\togglefalse{blx@unit}%
+ \expandarg
+ \StrGobbleLeft{\abx@field@postnote}{1}[\abx@field@postnote]%
+ \iffieldstart{postnote}{\ }%
+ {\setunit{\addcolon}}%
+ {\setunit{\addcolon\addspace}}}%
+ {\iffieldstart{postnote}{.}%
+ {\togglefalse{blx@unit}%
+ \expandarg
+ \StrGobbleLeft{\abx@field@postnote}{1}[\abx@field@postnote]%
+ \iffieldstart{postnote}{\ }%
+ {\setunit{\addperiod}}%
+ {\newunit}}%
+ {\postnotedelim}}}}}%
{\postnotedelim}}%
\newrobustcmd*{\iffieldstart}[2]{% Philipp Lehman's code, from
@@ -2949,17 +3320,40 @@ citation style]
%%%% Formatting macros, called both by cbx and bbx %%%%
\newbibmacro*{finentry}{%{\finentry} To make annotated bibliography
- \ifbibliography
+ \ifboolexpr{%
+ togl {cms@annotation}%
+ or
+ togl {cms@cbxannote}%
+ }%
{\usebibmacro{entrytail}}%
{}%
\finentry}
\newbibmacro*{entrytail}{% From reading.bbx, for annotated bibliography
- \newunit\newblock
- \iftoggle{cms@annotation}%
- {\usebibmacro{annotation}%
- \newunit\newblock}%
- {}}%
+ \ifbibliography%
+ {\iftoggle{cms@annotation}%
+ {\togglefalse{blx@unit}%
+ \togglefalse{blx@keepunit}%
+ \setunit{\bibannotesep}%
+ \usebibmacro{annotation}%
+ \newunit\newblock}%
+ {\newunit}}%
+ {\iftoggle{cms@cbxannote}%
+ {\togglefalse{blx@unit}%
+ \togglefalse{blx@keepunit}%
+ \setunit{\citeannotesep}%
+ \usebibmacro{annotation}%
+ \newunit\newblock}%
+ {\newunit}}}%
+
+% From biblatex.def; biblatex 3.15 toggled blx@bibliography off here,
+% but we still need to be able to test it in Chicago, at least with
+% the current code, so redefine the macro.
+
+\renewbibmacro*{annotation}{%
+ \iffieldundef{annotation}%
+ {\printfile[annotation]{\bibannotationprefix\thefield{entrykey}.tex}}%
+ {\printfield{annotation}}}
\newbibmacro*{author+holder}{%
\ifnameundef{author}%
@@ -2978,7 +3372,7 @@ citation style]
{\bibstring{by}\addspace%
\printnames[byauthor]{author}}}
-\newbibmacro*{byauthorpunct}{%
+\newbibmacro*{byauthorpunct}{% Obsolete?
\ifthenelse{\ifuseauthor\OR\ifnameundef{author}}%
{\addperiod\addspace}%
{\newcunit}}
@@ -3091,7 +3485,7 @@ citation style]
togl {cms@namedash}%
}%
{\printtext{\bibnamedash}}%
- {\usebibmacro{journal+sub}%
+ {\usebibmacro{journal+sub}{}%
\setunit*{\addspace}%
\printlist[periodplace]{location}%
\savefield{journaltitle}{\bbx@lasthash}}}%
@@ -3163,14 +3557,14 @@ citation style]
{\bibstring{by#2}}%
{\ifbibxstring{by\thefield{#1type}}%
{\bibstring{by\thefield{#1type}}}%
- {\printtext[note]{\thefield{#1type}}}}}%
+ {\printtext[capital]{\thefield{#1type}}}}}%
\newbibmacro*{cbytypestrg}[2]{%
\iffieldundef{#1type}%
{\bibstring{cby#2}}%
{\ifbibxstring{cby\thefield{#1type}}%
{\bibstring{cby\thefield{#1type}}}%
- {\printtext[note]{\thefield{#1type}}}}}%
+ {\printtext[capital]{\thefield{#1type}}}}}%
\newbibmacro*{cbyeditor}{%
\ifnameundef{editor}%
@@ -3396,7 +3790,11 @@ citation style]
{\printfield{chapter}\clearfield{chapter}%
\iffieldundef{booktitle}%
{}%
- {\addspace\bibstring{of}\setunit{\addspace}}}}%
+ {\iftoggle{cms@origpublished}%
+ {\DeclareFieldAlias{booktitle}{title:hook}}%
+ {\DeclareFieldAlias{booktitle}{title:hook:alt}}%
+ \addspace\bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}}}}%
\newbibmacro*{chap+as+track}{%
\iffieldundef{chapter}%
@@ -3410,7 +3808,7 @@ citation style]
{\printfield{chapter}\clearfield{chapter}%
\iffieldundef{booktitle}%
{}%
- {\addspace\bibstring{on}\setunit{\addspace}}}}%
+ {\addspace\bibstring[\cms@ofwrap]{on}\setunit{\addspace}}}}%
\newbibmacro*{music+origdate}{%
\iffieldequalstr{pubstate}{reprint}% 17th ed.
@@ -3630,7 +4028,7 @@ citation style]
{\printdate}%
{\printorigdate}}}%
-\newbibmacro*{journal+sub}{%
+\newbibmacro*{journal+sub}[1]{%
\iffieldundef{journaltitle}%
{}%
{\ifboolexpr{%
@@ -3648,9 +4046,9 @@ citation style]
togl {cms@bibjtabb}%
))
}%
- {\clearlist{location}\printtext[shortjournal]{%
+ {\clearlist{location}\printtext[#1shortjournal]{%
\printfield[jtsnoformat]{shortjournal}}}%
- {\printtext[journaltitle]{%
+ {\printtext[#1journaltitle]{%
\printfield[jtnoformat]{journaltitle}%
\setunit{\subtitlepunct}%
\printfield[sjtnoformat]{journalsubtitle}}}}}%
@@ -3699,7 +4097,7 @@ citation style]
\usebibmacro{cmsyear}}}
\newbibmacro*{mag+date+issue}{%
- \usebibmacro{journal+sub}%
+ \usebibmacro{journal+sub}{in}%
\setunit*{\addspace}%
\printlist[periodplace]{location}%
\newunit\newblock
@@ -3792,8 +4190,8 @@ citation style]
\renewbibmacro*{postnote}{%
\iffieldundef{postnote}%
{}%
- {\setunit{\postnotewrapper}%delim}%
- \printfield{postnote}}}
+ {\postnotewrapper%\setunit{\postnotewrapper}
+ \printfield{postnote}}}
\newbibmacro*{part+editor+translator}{%
\ifnameundef{namea}%
@@ -3884,7 +4282,7 @@ citation style]
{\ifthenelse{\value{editor}>1\OR\ifandothers{editor}}%
{\bibstring{\thefield{editortype}s}}%
{\bibstring{\thefield{editortype}}}}%
- {\printtext[note]{\thefield{editortype}}}}%
+ {\printtext[capital]{\thefield{editortype}}}}%
\clearname{editor}}
\newbibmacro*{parteditstrg}{%
@@ -3919,7 +4317,7 @@ citation style]
{\ifthenelse{\value{namea}>1\OR\ifandothers{namea}}%
{\bibstring{\thefield{nameatype}s}}%
{\bibstring{\thefield{nameatype}}}}%
- {\printtext[note]{\thefield{nameatype}}}}%
+ {\printtext[capital]{\thefield{nameatype}}}}%
\clearname{namea}}
\newbibmacro*{clearpublin}{%
@@ -3944,7 +4342,7 @@ citation style]
\clearfield{titleaddon}%
\clearfield{usere}%
\clearlist{language}%
- \ifentrytype{music}%
+ \ifthenelse{\ifentrytype{music}\OR\ifentrytype{audio}}%
{\clearfield{note}\clearfield{howpublished}\clearfield{eventyear}%
\clearfield{eventmonth}}%
{}}%
@@ -3953,7 +4351,12 @@ citation style]
{\clearfield{year}\clearfield{month}\clearfield{season}}%
{\clearfield{origyear}\clearfield{origmonth}\clearfield{origseason}}%
\clearfield{origlocation}}%
- {}%
+ {\ifthenelse{\ifentrytype{article}\OR\ifentrytype{periodical}\OR%
+ \ifentrytype{review}\OR\ifentrytype{suppperiodical}}%
+ {\iffieldundef{issuetitle}% For reprintfrom (?)
+ {\clearname{editor}\clearfield{note}\renewbibmacro*{bibreprint}{}}%
+ {}}%
+ {}}%
\clearfield{reprinttitle}%
}
@@ -3980,7 +4383,7 @@ citation style]
test {\iflistundef{publisher}}%
}%
{}%
- {\setunit{\addspace\bibstring[\mkrelatedstring]{bypublisher}\space}%
+ {\setunit{\addspace\bibstring[\mkrelatedstringtext]{bypublisher}\space}%
\printlist{publisher}%
\setunit{\addcomma\space}%
\iflistsequal{location}{savedlocation}%
@@ -3992,13 +4395,13 @@ citation style]
\usebibmacro{at+every+item}%
\renewbibmacro*{name:hook}[1]{%
\ifnumequal{\value{listcount}}{1}%
- {\begingroup
- \mkrelatedstring%
- \lbx@initnamehook{#1}%
- \endgroup}%
- {}}%
+ {\begingroup
+ \mkrelatedstringtext{%
+ \lbx@initnamehook{##1}}%
+ \endgroup}%
+ {}}%
\printnames[bytranslator]{translator}%
- \setunit*{\addspace\bibstring[\mkrelatedstring]{astitle}\space}%
+ \setunit*{\addspace\bibstring[\mkrelatedstringtext]{astitle}\space}%
\clearname{translator}%
\usebibmacro{cite:origfull}}}%
@@ -4070,21 +4473,27 @@ citation style]
\newbibmacro*{related:commenton}[1]{% 17th ed.
\togglefalse{cms@fulldate}% Let cloned entry set it
+ \togglefalse{cms@authortitle}% Ditto
+ \toggletrue{cms@shortrelated}% This allows us to provide a hyperlink
\entrydata*{#1}{%
- \cmshypercite{\strfield{clonesourcekey}}}}
+ \ifnumequal{\value{bbx:relatedcount}}{1}%
+ {\global\boolfalse{cms:atcite}\usebibmacro{cite:reinit}}{}%
+ \usebibmacro{cite}}}
-\providetoggle{cms@otherlang}
+\newbibmacro*{related:short}[1]{% For cross-refs in ref list
+ \togglefalse{cms@fulldate}% Let cloned entry set it
+ \togglefalse{cms@authortitle}% Ditto
+ \toggletrue{cms@shortrelated}% This allows us to provide a hyperlink
+ \entrydata*{#1}{%
+ \nocite{\thefield{clonesourcekey}}% Ensure it appears in ref list
+ \ifnumequal{\value{bbx:relatedcount}}{1}%
+ {\global\boolfalse{cms:atcite}\usebibmacro{cite:reinit}}{}%
+ \usebibmacro{cite}}}
-\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}}
+\providetoggle{cms@reprintmt}%
\newbibmacro*{cite:origfull}{%
- \printtext[cmshypertarget]{%
+ \printtext[cmshypertarget]{% Field format is spurious
\usedriver
{\DeclareNameAlias{sortname}{default}\clearfield{postnote}%
\clearname{author}\clearfield{userf}\clearfield{shorthand}%
@@ -4093,7 +4502,7 @@ citation style]
{\thefield{entrytype}}}}
\newbibmacro*{cite:origpubl}{%
- \printtext[cmshypertarget]{%
+ \printtext[cmshypertarget]{% Field format is spurious
\usedriver
{\DeclareNameAlias{sortname}{default}\clearfield{postnote}%
\usebibmacro{clearpublin}\clearfield{shorthand}%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-dates-common16.cbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-dates-common16.cbx
index 808388e32cf..6828c660582 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-dates-common16.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-dates-common16.cbx
@@ -4,7 +4,7 @@
% for the two author-date styles of the Chicago Manual of Style, 16th
% edition.
-\ProvidesFile{chicago-dates-common16.cbx}[2020/04/20 v 3.14 biblatex
+\ProvidesFile{chicago-dates-common16.cbx}[2021/03/27 v 3.16 biblatex
citation style]
%%%% Biblatex initialization + Chicago options + Toggles %%%%
@@ -1242,6 +1242,8 @@ citation style]
{}%
{\usebibmacro{postnote}}
+\def\cms@cicpunct{}%
+
%%% Commands, macros and formats for the Legal entry types %%%
\DeclareCiteCommand{\footfullcite}[\mkbibfootnote]
@@ -1965,12 +1967,6 @@ citation style]
\DeclareCiteCommand{\origpublcite}% Similar to above, w/o title.
{\usebibmacro{backref+check}%
\nopunct%\unspace%
- \ifboolexpr{%
- togl {cms@otherlang}%
- and
- not test {\iffieldundef{langid}}%
- }%
- {\addspace}{\unspace}%
\savebibmacro{cmsbibsortdate}%
\renewbibmacro*{cmsbibsortdate}{}}%
{\usedriver
@@ -2304,7 +2300,7 @@ citation style]
{\ifcapital%
{\MakeCapital{#1}}%
{#1}}%
- \addspace}%
+ }%\addspace
%%%% Commands, for users and internal %%%%
@@ -3602,7 +3598,7 @@ citation style]
test {\iflistundef{publisher}}%
}%
{}%
- {\setunit{\addspace\bibstring[\mkrelatedstring]{bypublisher}\space}%
+ {\setunit{\addspace\bibstring[\mkrelatedstringtext]{bypublisher}\space}%
\printlist{publisher}%
\setunit{\addcomma\space}%
\iflistsequal{location}{savedlocation}%
@@ -3614,13 +3610,13 @@ citation style]
\usebibmacro{at+every+item}%
\renewbibmacro*{name:hook}[1]{%
\ifnumequal{\value{listcount}}{1}%
- {\begingroup
- \mkrelatedstring%
- \lbx@initnamehook{#1}%
- \endgroup}%
- {}}%
+ {\begingroup
+ \mkrelatedstringtext{%
+ \lbx@initnamehook{##1}}%
+ \endgroup}%
+ {}}%
\printnames[bytranslator]{translator}%
- \setunit*{\addspace\bibstring[\mkrelatedstring]{astitle}\space}%
+ \setunit*{\addspace\bibstring[\mkrelatedstringtext]{astitle}\space}%
\clearname{translator}%
\usebibmacro{cite:origfull}}}%
@@ -3690,15 +3686,15 @@ citation style]
\newcunit}%
\usebibmacro{date}}}%
-\providetoggle{cms@otherlang}
+% \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}}
+% \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*{cite:origfull}{%
\printtext[cmshypertarget]{%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes.bbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes.bbx
index e14d9114aaf..a0a9780e25d 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes.bbx
@@ -2,7 +2,7 @@
% Lehman's standard.bbx. It provides the bibliography formatting for
% the Chicago notes + bibliography style.
-\ProvidesFile{chicago-notes.bbx}[2020/04/20 v 3.14 biblatex bibliography style]
+\ProvidesFile{chicago-notes.bbx}[2021/03/27 v 3.16 biblatex bibliography style]
%%%% Initialize and format bibliography and los %%%%
@@ -20,6 +20,7 @@
{\mkbibemph{\textbf{#1}}\isdot}}%
\newlength{\lositemsep}
+\newbibmacro*{begentry}{}
\defbibenvironment{bibliography}% New for 0.9a
{\list
@@ -252,12 +253,6 @@
\InitializeBibliographyStyle{%
\let\bbx@lasthash\undefined}
-%%%% Bibliography-specific bibstrings %%%%
-% \NewBibliographyString{note,preface,subsection,subsections,selfpublished,%
-% commenton,printed,track,choreographer,choreographers,cbychoreographer,%
-% bychoreographer}%
-%% Now below %%
-
%%%% Author, Editor, Translator, and Compiler Macros %%%%
\renewbibmacro*{name:last-first}[4]{%
@@ -388,23 +383,30 @@
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}}%\addperiod\addspace
{\printtext{\bibnamedash}%
\ifentrytype{customc}%
{\newunit}%
- {\setunit{\addspace}}\printfield{nameaddon}}}%
+ {\setunit{\nameaddonpunct}}\printfield{nameaddon}}}%
{\iffieldequalstr{authortype}{anon}%
- {\bibleftbracket\printnames{author}\bibrightbracket%
+ {\bibopenbracket\printnames{author}%
+ \ifentrytype{customc}%
+ {\bibclosebracket%
+ \usebibmacro{print+nameaddon}}%
+ {\usebibmacro{print+nameaddon}%
+ \bibclosebracket}%
\savefield{fullhash}{\bbx@lasthash}}%
{\iffieldequalstr{authortype}{anon?}%
- {\bibleftbracket\printnames{author}\addquestion\bibrightbracket%
+ {\bibopenbracket\printnames{author}\addquestion%
+ \ifentrytype{customc}%
+ {\bibclosebracket%
+ \usebibmacro{print+nameaddon}}%
+ {\usebibmacro{print+nameaddon}%
+ \bibclosebracket}%
\savefield{fullhash}{\bbx@lasthash}}%
{\printnames{author}%
- \ifentrytype{customc}%
- {\ifbibliography{\newunit}{\newcunit}}%
- {\setunit{\addspace}}%
- \printfield{nameaddon}%
+ \usebibmacro{print+nameaddon}%
\savefield{fullhash}{\bbx@lasthash}}}}}}
\newbibmacro*{moreauthor}{%
@@ -417,18 +419,20 @@
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}}%\addperiod\addspace
- {\printtext{\bibnamedash}\setunit{\addspace}\printfield{nameaddon}}}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
+ \printfield{nameaddon}}}%
{\iffieldequalstr{authortype}{anon}%
- {\bibleftbracket\printnames{author}\bibrightbracket%
+ {\bibopenbracket\printnames{author}%
+ \usebibmacro{print+nameaddon}\bibclosebracket%
\savefield{fullhash}{\bbx@lasthash}}%
{\iffieldequalstr{authortype}{anon?}%
- {\bibleftbracket\printnames{author}\addquestion\bibrightbracket%
+ {\bibopenbracket\printnames{author}\addquestion%
+ \usebibmacro{print+nameaddon}\bibclosebracket%
\savefield{fullhash}{\bbx@lasthash}}%
{\printnames{author}%
- \setunit{\addspace}%
- \printfield{nameaddon}%
+ \usebibmacro{print+nameaddon}%
\savefield{fullhash}{\bbx@lasthash}}}}}}
\newbibmacro*{pickeditor}{%
@@ -446,13 +450,12 @@
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\editordelim}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\editordelim}}%
{\printnames{editor}%
- \setunit{\addspace}%
- \printfield{nameaddon}\editordelim%
+ \usebibmacro{print+nameaddon}\editordelim%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{editstrg}}}
@@ -469,13 +472,12 @@
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\editordelim}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\editordelim}}%
{\printnames{editor}%
- \setunit{\addspace}%
- \printfield{nameaddon}\editordelim%
+ \usebibmacro{print+nameaddon}\editordelim%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{editstrg}}}%
{\ifboolexpr{%
@@ -485,13 +487,12 @@
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\nameadelim}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\nameadelim}}%
{\printnames[sortname]{namea}%
- \setunit{\addspace}%
- \printfield{nameaddon}\nameadelim%
+ \usebibmacro{print+nameaddon}\nameadelim%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{parteditstrg}}}}%
@@ -505,13 +506,12 @@
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\nameadelim}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\nameadelim}}%
{\printnames[sortname]{namea}%
- \setunit{\addspace}%
- \printfield{nameaddon}\nameadelim%
+ \usebibmacro{print+nameaddon}\nameadelim%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{parteditstrg}}}
@@ -530,13 +530,12 @@
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\newcunit}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\newcunit}}%
{\printnames[sortname]{translator}%
- \setunit{\addspace}%
- \printfield{nameaddon}\newcunit%
+ \usebibmacro{print+nameaddon}\newcunit%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{transstrg}}}
@@ -550,13 +549,12 @@
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\newcunit}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\newcunit}}%
{\printnames[sortname]{nameb}%
- \setunit{\addspace}%
- \printfield{nameaddon}\newcunit%
+ \usebibmacro{print+nameaddon}\newcunit%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{parttransstrg}}}
@@ -570,16 +568,74 @@
and
togl {cms@namedash}%
}%
- {\iffieldundef{nameaddon}%
+ {\if@cms@nonameaddon%
{\printtext{\bibnamedash}\newcunit}%
- {\printtext{\bibnamedash}\setunit{\addspace}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
\printfield{nameaddon}\newcunit}}%
{\printnames[sortname]{namec}%
- \setunit{\addspace}%
- \printfield{nameaddon}\newcunit%
+ \usebibmacro{print+nameaddon}\newcunit%
\savefield{fullhash}{\bbx@lasthash}}%
\usebibmacro{compilestrg}}}
+\newbibmacro*{print+nameaddon}{%
+ \ifbibliography%
+ {\ifboolexpr{%
+ togl {cms@bibnona}%
+ or
+ test {\iffieldundef{nameaddon}}%
+ }%
+ {}%
+ {\ifboolexpr{%
+ test {\iffieldequals{fullhash}{\bbx@lasthash}}%
+ and
+ test {\iffieldequals{nameaddon}{\cms@lastna}}%
+ and
+ togl {cms@subseqnona}%
+ }%
+ {}%
+ {\ifentrytype{customc}{\newunit}{\setunit{\nameaddonpunct}}%
+ \printfield{nameaddon}%
+ \savefield{nameaddon}{\cms@lastna}}}}%
+ {\ifboolexpr{%
+ togl {cms@citenona}%
+ or
+ test {\iffieldundef{nameaddon}}%
+ }%
+ {\let\cms@lastna\undefined}%
+ {\ifboolexpr{%
+ test {\iffieldequals{nameaddon}{\cms@lastna}}%
+ and
+ test {\cms@ifciteidem}%
+ and
+ togl {cms@subseqnona}%
+ }%
+ {}%
+ {\ifentrytype{customc}{\newcunit}{\setunit{\nameaddonpunct}}%
+ \printfield{nameaddon}%
+ \savefield{nameaddon}{\cms@lastna}}}}}
+
+\def\if@cms@nonameaddon{%
+ \ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ togl {cms@bibnona}%
+ or
+ (
+ test {\iffieldequals{nameaddon}{\cms@lastna}}%
+ and
+ togl {cms@subseqnona}%
+ )
+ }%
+ {\@firstoftwo}%
+ {\@secondoftwo}}%
+
+\def\cms@ifciteidem{%
+ \ifbool{citetracker}%
+ {\iftoggle{blx@footnote}%
+ {\iffieldequals{fullhash}\blx@lasthash@foot}%
+ {\iffieldequals{fullhash}\blx@lasthash@text}}%
+ {\@secondoftwo}}
+
\renewcommand*{\revsdnamedelim}{\addcomma}
\DeclareNameAlias{author}{sortname}% Needed in 0.9
@@ -601,7 +657,7 @@
{\printlist{organization}\newcunit}%
{}}}%
{\ifthenelse{\ifentrytype{customc}\OR\ifentrytype{dataset}}%
- {\usebibmacro{justauthor}\setunit{\addspace}}%
+ {\usebibmacro{justauthor}}% Moved \addspace to field format (2.1)
{\usebibmacro{author/editor}\newunit}}%
\ifboolexpr{%
test {\ifentrytype{video}}%
@@ -795,6 +851,46 @@
final]
\step[fieldset=maintitle, fieldvalue=\csgdef{@cmsst}{\@ne}, append]
}
+ \map[overwrite]{
+ \step[fieldsource=titleaddon,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=titleaddon,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
+ \map[overwrite]{
+ \step[fieldsource=annotation,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=annotation,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
+ \map[overwrite]{
+ \step[fieldsource=annote,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=annote,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
+ \map[overwrite]{
+ \step[fieldsource=addendum,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=addendum,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
+ \map[overwrite]{
+ \step[fieldsource=note,
+ match=\regexp{\\citeincite(\{|\[[^\]]*\]\[\]\{)([^\}]+)\}$},%$
+ replace=\regexp{\\citeincitef$1$2\}}]
+ \step[fieldsource=note,
+ match=\regexp{\\citeincites(((\{|(\[[^\]]*\])+\{|\([^\)]*\)\(\)\{|\([^\)]*\)\(\)(\[[^\]]*\])+\{)[^\}]+\})+)((\{|\[[^\]]*\]\[\]\{)[^\}]+)\}$},%$
+ replace=\regexp{\\citeincitefs$1$6\}}]
+ }
\map[overwrite, foreach=related]{
\pertype{mvbook}
\pertype{mvcollection}
@@ -876,6 +972,7 @@
\DeclareBibliographyDriver{article}{%
\iffieldequalstr{entrysubtype}{magazine}%
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{mag+news+author}%
\newunit\newblock
\usebibmacro{mag+news+title}%
@@ -920,12 +1017,13 @@
\usebibmacro{originally+published+as}%
\usebibmacro{finentry}}
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{mag+news+title}%
\setunit{\addspace}%
\usebibmacro{language+transtitle}%
- \setunit*{\addperiod\addspace}\newblock% 16th ed.
+ \setunit*{\newunitpunct}\newblock% 16th ed.
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{part+editor+translator}%
@@ -965,6 +1063,7 @@
\DeclareBibliographyDriver{artwork}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{italtitle+stitle}%
@@ -1013,6 +1112,7 @@
\DeclareBibliographyDriver{audio}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{italtitle+stitle}%
@@ -1028,7 +1128,7 @@
\usebibmacro{chapinscore}%
\usebibmacro{btitle+bstitle}%
\iffieldundef{booktitle}%
- {\setunit{\addperiod\addspace}}% Fix customc?
+ {\setunit{\newunitpunct}}% Fix customc?
{\setunit{\addcomma\addspace}}%
\iffieldundef{edition}%
{}%
@@ -1051,11 +1151,11 @@
\printfield{part}%
\setunit{\addspace}
\bibstring{ofseries}%
- \setunit{\addspace}
- \printtext[maintitle]{%
- \printfield[noformat]{maintitle}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
+ \printtext[default]{%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
- \printfield[noformat]{mainsubtitle}}%
+ \printfield[title]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
\printfield{maintitleaddon}}}
\newcunit\newblock
@@ -1093,6 +1193,7 @@
\DeclareBibliographyDriver{book}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{related:mtpunct}%
\usebibmacro{italtitle+stitle}%
@@ -1179,7 +1280,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{xref}}%
\usebibmacro{xrefpostnote}%
@@ -1201,7 +1302,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{crossref}}%
\usebibmacro{xrefpostnote}%
@@ -1220,6 +1321,7 @@
\DeclareBibliographyDriver{bookinbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{italtitle+stitle}%
@@ -1235,7 +1337,7 @@
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{part+editor+translator}%
- \setunit*{\addperiod\addspace}%
+ \setunit*{\newunitpunct}%
\ifboolexpr{%
not togl {cms@related}%
or
@@ -1306,7 +1408,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{xref}}%
\usebibmacro{xrefpostnote}%
@@ -1328,7 +1430,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{crossref}}%
\usebibmacro{xrefpostnote}%
@@ -1366,7 +1468,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\csuse{cms@shortmtkey}}%
\usebibmacro{xrefpostnote}%
@@ -1377,6 +1479,7 @@
\DeclareBibliographyDriver{booklet}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{italtitle+stitle}%
@@ -1409,6 +1512,7 @@
\DeclareBibliographyDriver{collection}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\usebibmacro{related:mtpunct}%
\usebibmacro{italtitle+stitle}%
@@ -1480,7 +1584,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{xref}}%
\usebibmacro{xrefpostnote}%
@@ -1502,7 +1606,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{crossref}}%
\usebibmacro{xrefpostnote}%
@@ -1521,8 +1625,13 @@
\DeclareBibliographyDriver{customc}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{justauthor}%
- \iffieldundef{nameaddon}%
+ \ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ togl {cms@bibnona}%
+ }%
{\newunit}%
{\setunit{\addspace}}%
\usebibmacro{italtitle+stitle}%
@@ -1530,6 +1639,7 @@
\DeclareBibliographyDriver{dataset}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\setunit{\addspace}\newblock%
\printtext[parens]{%
@@ -1601,6 +1711,7 @@
\DeclareBibliographyDriver{image}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{italtitle+stitle}%
@@ -1653,14 +1764,15 @@
\DeclareBibliographyDriver{inbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{title+stitle}%
\setunit{\addspace}\newblock%\bibsentence
\usebibmacro{language+transtitle}%
- \setunit{\addperiod\addspace}% 16th ed.
+ \setunit{\newunitpunct}% 16th ed.
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{part+editor+translator}%
\ifboolexpr{%
not togl {cms@related}%
@@ -1683,7 +1795,7 @@
or
togl {cms@bibcrossref}%
}%
- {\setunit{\addperiod\addspace}%
+ {\setunit{\newunitpunct}%
\usebibmacro{chapincoll}%
\usebibmacro{mtitle+mstitle+vol+part+btitle+bstitle}%
\newcunit
@@ -1731,7 +1843,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\usebibmacro{chapincoll}%
\bibxrefcite{\thefield{xref}}%
@@ -1786,7 +1898,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\usebibmacro{chapincoll}%
\bibxrefcite{\csuse{cms@shortmtkey}}%
@@ -1798,6 +1910,7 @@
\DeclareBibliographyDriver{incollection}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{title+stitle}%
@@ -1876,7 +1989,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\usebibmacro{chapincoll}%
\bibxrefcite{\thefield{xref}}%
@@ -1899,7 +2012,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\usebibmacro{chapincoll}%
\bibxrefcite{\thefield{crossref}}%
@@ -1931,7 +2044,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\usebibmacro{chapincoll}%
\bibxrefcite{\csuse{cms@shortmtkey}}%
@@ -1943,14 +2056,15 @@
\DeclareBibliographyDriver{inproceedings}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{title+stitle}%
\setunit{\addspace}\newblock%
\usebibmacro{language+transtitle}%
- \setunit{\addperiod\addspace}% 16th ed.
+ \setunit{\newunitpunct}% 16th ed.
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{part+editor+translator}%
\ifboolexpr{%
not togl {cms@related}%
@@ -1973,7 +2087,7 @@
or
togl {cms@bibcrossref}%
}%
- {\setunit{\addperiod\addspace}%
+ {\setunit{\newunitpunct}%
\usebibmacro{chapincoll}%
\usebibmacro{mtitle+mstitle+vol+part+btitle+bstitle}%
\newcunit\newblock
@@ -1984,6 +2098,14 @@
\usebibmacro{ser+num}%
\newunit\newblock
\printfield{note}%
+ \setunit*{\addcomma\addspace}%
+ \printfield{eventtitle}%
+ \setunit{\ctitleaddonpunct}%
+ \printfield{eventtitleaddon}%
+ \newcunit%
+ \printfield{venue}%
+ \newcunit\newblock
+ \printeventdate%
\newunit\newblock
\usebibmacro{org+publ+loc+year}%
\newunit\newblock
@@ -2014,7 +2136,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\usebibmacro{chapincoll}%
\bibxrefcite{\thefield{xref}}%
@@ -2037,7 +2159,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\usebibmacro{chapincoll}%
\bibxrefcite{\thefield{crossref}}%
@@ -2069,7 +2191,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\usebibmacro{chapincoll}%
\bibxrefcite{\csuse{cms@shortmtkey}}%
@@ -2081,6 +2203,7 @@
\DeclareBibliographyDriver{inreference}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\iftoggle{cms@mtvolpunct}{\newcunit}{}%
\usebibmacro{italtitle+stitle}%
\usebibmacro{related:mtpunct}%\newunit\newblock
@@ -2091,7 +2214,7 @@
{}%
\usebibmacro{related:mtpunct}%\newunit\newblock
\usebibmacro{part+editor+translator}%
- \setunit*{\addperiod\addspace}% need asterisk?
+ \setunit*{\newunitpunct}% need asterisk?
\usebibmacro{mtitle+mstitle+vol+part+btitle+bstitle}%
\newcunit
\iffieldundef{edition}%
@@ -2153,6 +2276,7 @@
\DeclareBibliographyDriver{letter}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\printtext[title]{%
@@ -2165,7 +2289,7 @@
\usebibmacro{language+transtitle}%
\newunit\newblock%\bibsentence
\usebibmacro{part+editor+translator}%
- \setunit*{\addperiod\addspace}%
+ \setunit*{\newunitpunct}%
\ifboolexpr{%
not togl {cms@related}%
or
@@ -2287,7 +2411,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\usebibmacro{chapincoll}%
\bibxrefcite{\csuse{cms@shortmtkey}}%
@@ -2299,6 +2423,7 @@
\DeclareBibliographyDriver{manual}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{bibauthor+org}%
\newunit\newblock
\usebibmacro{italtitle+stitle}%
@@ -2339,6 +2464,7 @@
\DeclareBibliographyDriver{misc}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\iffieldundef{entrysubtype}%
@@ -2398,6 +2524,7 @@
\DeclareBibliographyDriver{music}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{italtitle+stitle}%
@@ -2441,11 +2568,11 @@
\printfield{part}%
\setunit{\addspace}
\bibstring{ofseries}%
- \setunit{\addspace}
- \printtext[maintitle]{%
- \printfield[noformat]{maintitle}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
+ \printtext[default]{%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
- \printfield[noformat]{mainsubtitle}}%
+ \printfield[title]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
\printfield{maintitleaddon}}}
\newcunit\newblock
@@ -2497,6 +2624,7 @@
\DeclareBibliographyDriver{mvbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{related:mtpunct}%\newunit\newpunct%
\usebibmacro{italtitle+stitle}%
@@ -2580,7 +2708,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{xref}}%
\usebibmacro{xrefpostnote}%
@@ -2602,7 +2730,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{crossref}}%
\usebibmacro{xrefpostnote}%
@@ -2628,6 +2756,7 @@
\DeclareBibliographyDriver{mvcollection}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\usebibmacro{related:mtpunct}%\newunit\newblock
\usebibmacro{italtitle+stitle}%
@@ -2705,7 +2834,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{xref}}%
\usebibmacro{xrefpostnote}%
@@ -2727,7 +2856,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{crossref}}%
\usebibmacro{xrefpostnote}%
@@ -2753,6 +2882,7 @@
\DeclareBibliographyDriver{mvproceedings}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\usebibmacro{related:mtpunct}%\newunit\newblock%
\usebibmacro{italtitle+stitle}%
@@ -2794,6 +2924,14 @@
{\usebibmacro{mtitle+mstitle+vol+part+title+stitle}%
\newunit\newblock
\printfield{note}%
+ \setunit*{\addcomma\addspace}%
+ \printfield{eventtitle}%
+ \setunit{\ctitleaddonpunct}%
+ \printfield{eventtitleaddon}%
+ \newcunit%
+ \printfield{venue}%
+ \newcunit\newblock
+ \printeventdate%
\newunit\newblock
\usebibmacro{org+publ+loc+year}%
\newunit\newblock
@@ -2824,7 +2962,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{xref}}%
\usebibmacro{xrefpostnote}%
@@ -2846,7 +2984,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{crossref}}%
\usebibmacro{xrefpostnote}%
@@ -2872,6 +3010,7 @@
\DeclareBibliographyDriver{mvreference}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{italtitle+stitle}%
\newunit\newblock
\ifthenelse{\iffieldundef{maintitle}\AND\iffieldundef{booktitle}}%
@@ -2942,6 +3081,7 @@
\DeclareBibliographyDriver{online}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\IfBeginWith{\thefield{title}}{CCCCCC}%
@@ -3013,6 +3153,7 @@
\DeclareBibliographyDriver{patent}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author+holder}% + holder?
\newunit\newblock
\iffieldundef{title}%
@@ -3025,9 +3166,9 @@
\printfield{titleaddon}}%
\setunit{\addspace}\newblock%
\usebibmacro{language+transtitle}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\printfield{note}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\printfield{type}%
\setunit{\addspace}%
\printfield{number}%
@@ -3068,6 +3209,7 @@
\DeclareBibliographyDriver{performance}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{italtitle+stitle}%
@@ -3115,6 +3257,7 @@
\DeclareBibliographyDriver{periodical}{%
\iffieldequalstr{entrysubtype}{magazine}%
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\newunit\newblock
\usebibmacro{issuetitle}%
@@ -3141,13 +3284,14 @@
\newunit\newblock
\usebibmacro{originally+published+as}%
\usebibmacro{finentry}}
- {\usebibmacro{bibindex}%
+{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\newunit\newblock
\usebibmacro{issuetitle}%
\setunit{\addspace}%
\usebibmacro{language+transtitle}%
- \setunit*{\addperiod\addspace}\newblock% 16th ed.
+ \setunit*{\newunitpunct}\newblock% 16th ed.
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
@@ -3180,6 +3324,7 @@
\DeclareBibliographyDriver{proceedings}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\usebibmacro{related:mtpunct}%
\usebibmacro{italtitle+stitle}%
@@ -3207,6 +3352,14 @@
\usebibmacro{ser+num}%
\newunit\newblock
\printfield{note}%
+ \setunit*{\addcomma\addspace}%
+ \printfield{eventtitle}%
+ \setunit{\ctitleaddonpunct}%
+ \printfield{eventtitleaddon}%
+ \newcunit%
+ \printfield{venue}%
+ \newcunit\newblock
+ \printeventdate%
\newunit\newblock
\usebibmacro{org+publ+loc+year}%
\newunit\newblock
@@ -3237,7 +3390,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{xref}}%
\usebibmacro{xrefpostnote}%
@@ -3259,7 +3412,7 @@
test {\ifpunctmark{*}}%
}%
{\setunit{\addspace\bibsentence}}%
- {\setunit{\addperiod\addspace}}%
+ {\setunit{\newunitpunct}}%
\usebibmacro{xrefprenote}% Volume fix
\bookbibxrefcite{\thefield{crossref}}%
\usebibmacro{xrefpostnote}%
@@ -3278,6 +3431,7 @@
\DeclareBibliographyDriver{reference}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\iftoggle{cms@mtvolpunct}{\newcunit}{}%
\usebibmacro{italtitle+stitle}%
\usebibmacro{related:mtpunct}%\newunit\newblock
@@ -3288,7 +3442,7 @@
{}%
\usebibmacro{related:mtpunct}%
\usebibmacro{part+editor+translator}%
- \setunit*{\addperiod\addspace}% need asterisk?
+ \setunit*{\newunitpunct}% need asterisk?
\usebibmacro{mtitle+mstitle+vol+part+btitle+bstitle}%
\newcunit
\iffieldundef{edition}%
@@ -3335,6 +3489,7 @@
\DeclareBibliographyDriver{report}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\iffieldequalstr{entrysubtype}{unpublished}%
@@ -3379,6 +3534,7 @@
\DeclareBibliographyDriver{review}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\iffieldequalstr{entrysubtype}{magazine}%
{\usebibmacro{mag+news+author}}%
{\usebibmacro{author/editor}}%
@@ -3468,6 +3624,7 @@
\DeclareBibliographyDriver{standard}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\ifnameundef{author}%
{\iflistundef{organization}%
{}%
@@ -3478,8 +3635,12 @@
and
togl {cms@namedash}%
}%
- {\printtext{\bibnamedash}}%
+ {\if@cms@nonameaddon%
+ {\printtext{\bibnamedash}}%
+ {\printtext{\bibnamedash}\setunit{\nameaddonpunct}%
+ \printfield{nameaddon}}}%
{\printlist{organization}%
+ \usebibmacro{print+nameaddon}%
\savelist{organization}{\bbx@lasthash}}}}%
{\usebibmacro{justauthor}}%
\newunit\newblock
@@ -3547,6 +3708,7 @@
\DeclareBibliographyDriver{suppbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author}%
\newunit\newblock
\usebibmacro{inforaft}%
@@ -3611,6 +3773,7 @@
\DeclareBibliographyDriver{thesis}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{title+stitle}%
@@ -3618,9 +3781,9 @@
\usebibmacro{language+transtitle}%
\newunit% 16th ed.
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\printfield{note}%
- \setunit{\addperiod\addspace}\newblock%
+ \setunit{\newunitpunct}\newblock%
\usebibmacro{type+inst+year}%
\newunit\newblock
\printfield{addendum}%
@@ -3643,6 +3806,7 @@
\DeclareBibliographyDriver{unpublished}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\newunit\newblock
\usebibmacro{title+stitle}%
@@ -3650,7 +3814,7 @@
\usebibmacro{language+transtitle}%
\newunit%usebibmacro{byauthorpunct}% Why does this work? No idea.
\usebibmacro{byauthor}% Same in thesis type, as well. 16th ed.
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{byeditor+others}%
\newunit\newblock%
\printfield{howpublished}%
@@ -3689,6 +3853,7 @@
\DeclareBibliographyDriver{video}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\ifboolexpr{%
test {\iffieldequalstr{entrysubtype}{tvepisode}}%
and
@@ -3710,9 +3875,9 @@
\usebibmacro{title+stitle}%
\setunit{\addspace}\newblock%\bibsentence
\usebibmacro{language+transtitle}%
- \setunit{\addperiod\addspace}% 16th ed.
+ \setunit{\newunitpunct}% 16th ed.
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{part+editor+translator}}%
{\usebibmacro{author/editor}%
\newunit\newblock
@@ -3726,15 +3891,15 @@
\printfield{titleaddon}%\usebibmacro{title+stitle}%
\setunit{\addspace}\newblock%\bibsentence
\usebibmacro{language+transtitle}%
- \setunit{\addperiod\addspace}% 16th ed.
+ \setunit{\newunitpunct}% 16th ed.
\usebibmacro{byauthor}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{part+editor+translator}%
- \setunit{\addperiod\addspace}%
+ \setunit{\newunitpunct}%
\usebibmacro{chapinscore}%
\usebibmacro{btitle+bstitle}}%
\iffieldundef{booktitle}%
- {\setunit{\addperiod\addspace}}% Fix customc?
+ {\setunit{\newunitpunct}}% Fix customc?
{\setunit{\addcomma\addspace}}%
\iffieldundef{edition}%
{}%
@@ -3757,11 +3922,11 @@
\printfield{part}%
\setunit{\addspace}
\bibstring{ofseries}%
- \setunit{\addspace}
- \printtext[maintitle]{%
- \printfield[noformat]{maintitle}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
+ \printtext[default]{%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
- \printfield[noformat]{mainsubtitle}}%
+ \printfield[title]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
\printfield{maintitleaddon}}}%
\newcunit\newblock
@@ -3827,7 +3992,7 @@
{\iffieldundef{doi}%
{}%
{\printfield{doi}%
- \setunit*{\addperiod\addspace}\newblock%
+ \setunit*{\newunitpunct}\newblock%
\clearfield{url}}}%
{\ifboolexpr{%
togl {cms@doi}%
@@ -3835,7 +4000,7 @@
not test {\iffieldundef{doi}}%
}%
{\printfield{doi}%
- \setunit*{\addperiod\addspace}\newblock}%
+ \setunit*{\newunitpunct}\newblock}%
{}}%
\ifboolexpr{%
togl {cms@eprint}%
@@ -3843,7 +4008,7 @@
not test {\iffieldundef{eprint}}%
}%
{\usebibmacro{eprint}%
- \setunit*{\addperiod\addspace}\newblock}%
+ \setunit*{\newunitpunct}\newblock}%
{}%
\ifboolexpr{%
togl {cms@url}%
@@ -3914,7 +4079,7 @@
{\printfield{volume}}% Still print this w/o part or pages???
{\ifthenelse{\iffieldnums{pages}\AND%
\iffieldundef{bookpagination}\AND\iffieldnums{volume}}%
- {\printfield[default]{volume}%
+ {\printfield[shortvol]{volume}%
\postvolpunct%
\printfield{pages}}%
{\printfield{volume}%
@@ -3953,11 +4118,11 @@
\printfield{part}%
\setunit{\addspace}
\bibstring{ofseries}%
- \setunit{\addspace}
- \printtext[maintitle]{%
- \printfield[noformat]{maintitle}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
+ \printtext[default]{%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
- \printfield[noformat]{mainsubtitle}}%
+ \printfield[title]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
\printfield{maintitleaddon}}}}
@@ -3980,11 +4145,11 @@
\printfield{part}%
\setunit{\addspace}
\bibstring{ofseries}%
- \setunit{\addspace}
- \printtext[maintitle]{%
- \printfield[noformat]{maintitle}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
+ \printtext[default]{%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
- \printfield[noformat]{mainsubtitle}}%
+ \printfield[title]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
\printfield{maintitleaddon}}}}
@@ -4002,7 +4167,7 @@
{\iffieldundef{number}%
{\ifthenelse{\iffieldundef{bookpagination}\AND\iffieldundef{eid}}%
{\setunit{\postvolpunct}}%
- {\setunit{\addcolon\addspace}}%
+ {\setunit{\journalpagespunct}}%
\usebibmacro{eid+or+pages}}%
{\newcunit\usebibmacro{eid+or+pages}}}%
{\ifthenelse{\iffieldundef{volume}\AND\iffieldundef{number}}% 16th ed.
@@ -4020,7 +4185,7 @@
{\printfield{issue}%
\setunit{\addspace}%
\usebibmacro{cmsyear}}}%
- \setunit{\addcolon\addspace}%
+ \setunit{\journalpagespunct}%
\usebibmacro{eid+or+pages}}}}
\newbibmacro*{eid+or+pages}{%
@@ -4785,6 +4950,8 @@
%%%% Related functionality from standard.bbx %%%%
+\providecommand*{\mkrelatedstringtext}[1]{{{\mainlang #1}}}
+
\newcounter{bbx:relatedcount}
\newcounter{bbx:relatedtotal}
\newcounter{cms@reviewcount}%
@@ -4951,14 +5118,14 @@
test {\ifbibxstring{\thefield{relatedtype}s}}%
}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedtype}s}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedtype}s}}}%
{\iffieldbibstring{relatedtype}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedtype}}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedtype}}}}%
{}}}%
{\iffieldbibstring{relatedstring}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedstring}}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedstring}}}}%
{\printfield[\bbx@tempb]{relatedstring}}}%
\docsvfield{related}%
\usebibmacro{endrelatedloop}}}%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes.cbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes.cbx
index 82f4a000d69..9d5616564de 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes.cbx
@@ -4,7 +4,7 @@
% formatted according to the specifications of the Chicago Manual of
% Style.
-\ProvidesFile{chicago-notes.cbx}[2020/04/20 v 3.14 biblatex citation style]
+\ProvidesFile{chicago-notes.cbx}[2021/03/27 v 3.16 biblatex citation style]
%%%% Biblatex initialization + Chicago options + Toggles %%%%
@@ -58,6 +58,9 @@
\providetoggle{cms@noibid}
\providetoggle{cms@noidem}
\providetoggle{cms@namedash}
+\providetoggle{cms@bibnona}
+\providetoggle{cms@citenona}
+\providetoggle{cms@subseqnona}
\providetoggle{cms@useibid}
\providetoggle{cms@usecompiler}
\providetoggle{cms@shorthandibid}
@@ -65,9 +68,12 @@
\providetoggle{cms@fullshhand}
\providetoggle{cms@inheritshhand}
\providetoggle{cms@firstshort}
+\providetoggle{cms@noshintro}
+\providetoggle{cms@shandonly}
\providetoggle{cms@origpublished}
\providetoggle{cms@loccit}
\providetoggle{cms@annotation}
+\providetoggle{cms@cbxannote}
\providetoggle{cms@postposit}
\providetoggle{cms@legalnotes}% For legal types
\providetoggle{cms@supranotes}% Ditto
@@ -95,6 +101,7 @@
\providetoggle{cms@blogurl}% For 17th ed. blogs w/ comments
\providetoggle{cms@related}
\providetoggle{cms@citerel}
+\providetoggle{cms@reprintfrom}% maintitle type w/in relatedfrom type
\providetoggle{cms@gencite}
\providetoggle{cms@genallnames}
@@ -102,6 +109,16 @@
\iffieldundef{userc}%
{}%
{\nocite{\thefield{userc}}}%
+ \ifboolexpr{%
+ togl {cms@subseqnona}%
+ and
+ not togl {cms@citenona}%
+ and
+ test {\ifciteseen}%
+ and
+ not togl {cms@noneshort}%
+ }%
+ {\global\let\cms@lastna\undefined}{}%
\global\togglefalse{cms@loccit}%
\global\csundef{@cmsst}%
\ifboolexpr{%
@@ -157,8 +174,131 @@
\DeclareBiblatexOption{global,entry}[boolean]{genallnames}[true]{%
\settoggle{cms@genallnames}{#1}}
-\DeclareBibliographyOption{annotation}[true]{%
- \global\toggletrue{cms@annotation}}
+\DeclareBiblatexOption{global,type,entry}[string]{annotation}[true]{%
+ \ifcsdef{cms@opt@annot@#1}%
+ {\csuse{cms@opt@annot@#1}}%
+ {\blx@err@invopt{annotation=#1}{}}}%
+\def\cms@opt@annot@true{%
+ \toggletrue{cms@annotation}%
+ \togglefalse{cms@cbxannote}}
+\def\cms@opt@annot@false{%
+ \togglefalse{cms@annotation}%
+ \togglefalse{cms@cbxannote}}
+\def\cms@opt@annot@notes{%
+ \togglefalse{cms@annotation}%
+ \toggletrue{cms@cbxannote}}
+\def\cms@opt@annot@bib{%
+ \toggletrue{cms@annotation}%
+ \togglefalse{cms@cbxannote}}
+\def\cms@opt@annot@all{%
+ \toggletrue{cms@annotation}%
+ \toggletrue{cms@cbxannote}}
+
+\DeclareBiblatexOption{global,type,entry}[string]{bibannotesep}[vpar]{%
+ \ifcsdef{cms@opt@bannsep@#1}%
+ {\csuse{cms@opt@bannsep@#1}}%
+ {\blx@err@invopt{bibannotesep=#1}{}}}
+\def\cms@opt@bannsep@none{%
+ \let\bibannotesep\@empty}%
+\def\cms@opt@bannsep@comma{%
+ \def\bibannotesep{\addcomma\addspace}}%
+\def\cms@opt@bannsep@colon{%
+ \def\bibannotesep{\addcolon\addspace}}%
+\def\cms@opt@bannsep@space{%
+ \def\bibannotesep{\addspace}}%
+\def\cms@opt@bannsep@semicolon{%
+ \def\bibannotesep{\addsemicolon\addspace}}%
+\def\cms@opt@bannsep@period{%
+ \def\bibannotesep{\addperiod\addspace}}%
+\def\cms@opt@bannsep@par{%
+ \def\bibannotesep{\addperiod\par\nobreak}}%
+\def\cms@opt@bannsep@vpar{%
+ \def\bibannotesep{\addperiod\par\nobreak \vskip \bibitemsep}}%
+\def\cms@opt@bannsep@parbreak{%
+ \def\bibannotesep{\addperiod\par}}%
+\def\cms@opt@bannsep@vparbreak{%
+ \def\bibannotesep{\addperiod\par \vskip \bibitemsep}}%
+
+\DeclareBiblatexOption{global,type,entry}[string]{citeannotesep}[period]{%
+ \ifcsdef{cms@opt@cannsep@#1}%
+ {\csuse{cms@opt@cannsep@#1}}%
+ {\blx@err@invopt{citeannotesep=#1}{}}}
+\def\cms@opt@cannsep@none{%
+ \let\citeannotesep\@empty}%
+\def\cms@opt@cannsep@comma{%
+ \def\citeannotesep{\addcomma\addspace}}%
+\def\cms@opt@cannsep@colon{%
+ \def\citeannotesep{\addcolon\addspace}}%
+\def\cms@opt@cannsep@space{%
+ \def\citeannotesep{\addspace}}%
+\def\cms@opt@cannsep@semicolon{%
+ \def\citeannotesep{\addsemicolon\addspace}}%
+\def\cms@opt@cannsep@period{%
+ \def\citeannotesep{\addperiod\addspace}}%
+\def\cms@opt@cannsep@par{%
+ \def\citeannotesep{\addperiod\par\nobreak}}%
+\def\cms@opt@cannsep@vpar{%
+ \def\citeannotesep{\addperiod\par\nobreak \vskip\p@}}%
+\def\cms@opt@cannsep@parbreak{%
+ \def\citeannotesep{\addperiod\par}}%
+\def\cms@opt@cannsep@vparbreak{%
+ \def\citeannotesep{\addperiod\par \vskip\p@}}%
+
+\DeclareBiblatexOption{global}[string]{formatbib}[max]{%
+ \ifcsdef{cms@opt@formatbib@#1}%
+ {\csuse{cms@opt@formatbib@#1}}%
+ {\blx@err@invopt{formatbib=#1}{}}}%
+\def\cms@opt@formatbib@max{}%
+\def\cms@opt@formatbib@min{%
+ \renewcommand*{\bibsetup}{%
+ \interlinepenalty=0\relax
+ \widowpenalty=0\relax
+ \@clubpenalty=0\relax
+ \clubpenalty=0\relax
+ \brokenpenalty=0\relax
+ \raggedbottom
+ \frenchspacing
+ \biburlsetup}}%
+\def\cms@opt@formatbib@minwo{%
+ \patchcmd\bibsetup%
+ {\interlinepenalty=5000\relax}%
+ {\interlinepenalty=0\relax}{}{}}%
+\def\cms@opt@formatbib@annote{%
+ \patchcmd\bibsetup%
+ {\interlinepenalty=5000\relax}%
+ {\interlinepenalty=0\relax}{}{}%
+ \AtEveryBibitem{%
+ \interlinepenalty=5000\relax}}%
+\def\cms@opt@formatbib@annotenp{%
+ \AtEndPreamble{%
+ \ifdefvoid{\cms@entrybreak}%
+ {\patchcmd\bibsetup%
+ {\interlinepenalty=5000\relax}%
+ {\interlinepenalties\cmspens{3}\relax}{}{}}%
+ {\patchcmd\bibsetup%
+ {\interlinepenalty=5000\relax}%
+ {\interlinepenalties\cmspens{\cms@entrybreak}\relax}{}{}}}}%
+
+\DeclareBiblatexOption{global}[integer]{entrybreak}[3]{%
+ \IfInteger{#1}%
+ {\numdef\cms@entrybreak{#1}}%
+ {\numdef\cms@entrybreak{3}\cms@warning@noline%
+ {'entrybreak=#1' isn't a valid option.\MessageBreak
+ This option only accepts integers.\MessageBreak
+ It has been set to the default '3'.\MessageBreak
+ Please see biblatex-chicago.pdf for\MessageBreak
+ more information}}}
+
+\def\cmspens@i#1{\space
+ \ifnum#1>\@ne\number5000
+ \expandafter\cmspens@i
+ \expandafter{\number\numexpr#1-\@ne\expandafter}%
+ \else
+ \ifnum#1>\z@\number10
+ \else\unspace
+ \fi\fi}
+
+\def\cmspens#1{\space #1\cmspens@i{#1}}
\DeclareBibliographyOption[boolean]{noibid}[true]{%
\global\toggletrue{cms@noibid}}
@@ -166,7 +306,7 @@
\DeclareBibliographyOption[boolean]{useibid}[true]{%
\global\toggletrue{cms@useibid}}
-\DeclareBibliographyOption[boolean]{dashed}[true]{%
+\DeclareBiblatexOption{global,type,entry}[boolean]{dashed}[true]{%
\settoggle{cms@namedash}{#1}}
\DeclareBibliographyOption[boolean]{short}[true]{%
@@ -830,30 +970,31 @@
\settoggle{cms@fullshhand}{#1}}
\DeclareBibliographyOption[boolean]{inheritshorthand}[true]{%
- \settoggle{cms@inheritshhand}{#1}%
- \iftoggle{cms@inheritshhand}%
- {\DeclareDataInheritance{*}{*}{%
- \inherit{shorthand}{shorthand}
- \inherit{shorthandintro}{shorthandintro}
- }}%
- {}}%
+ \settoggle{cms@inheritshhand}{#1}}%
\DeclareBiblatexOption{global,entry}[boolean]{shorthandfirst}[true]{%
\settoggle{cms@firstshort}{#1}}
+\DeclareBiblatexOption{global,type,entry}[string]{shorthandintro}[full]{%
+ \ifcsdef{cms@opt@shhintro@#1}%
+ {\csuse{cms@opt@shhintro@#1}}%
+ {\blx@err@invopt{shorthandintro=#1}{}}}
+\def\cms@opt@shhintro@full{%
+ \togglefalse{cms@noshintro}%
+ \togglefalse{cms@shandonly}}%
+\def\cms@opt@shhintro@short{%
+ \toggletrue{cms@shandonly}}%
+\def\cms@opt@shhintro@none{%
+ \toggletrue{cms@noshintro}}%
+
\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{}%
+\DeclareBibliographyOption[boolean]{postnotepunct}[true]{%
+ \global\settoggle{cms@modpostnote}{#1}}%
\DeclareBiblatexOption{global,entry}[boolean]{usecompiler}[true]{%
\settoggle{blx@usenamec}{#1}}
@@ -1007,6 +1148,52 @@
\settoggle{cms@bookseries}{#1}%
\settoggle{cms@notefield}{#1}}%
+\DeclareBibliographyOption[string]{nameaddon}[all]{%
+ \ifcsdef{cms@gopt@na@#1}%
+ {\csuse{cms@gopt@na@#1}}%
+ {\csuse{cms@gopt@na@all}\cms@warning@noline%
+ {'nameaddon=#1' is not a valid global\MessageBreak
+ option. The default - 'all' - has been set.\MessageBreak
+ Please see biblatex-chicago.pdf for valid\MessageBreak
+ option keys}}}%
+\def\cms@gopt@na@all{}%
+\def\cms@gopt@na@none{%
+ \settoggle{cms@bibnona}{true}%
+ \settoggle{cms@citenona}{true}}%
+\def\cms@gopt@na@cite{\settoggle{cms@bibnona}{true}}%
+\def\cms@gopt@na@bib{\settoggle{cms@citenona}{true}}%
+\def\cms@gopt@na@first{\settoggle{cms@subseqnona}{true}}%
+\def\cms@gopt@na@citefirst{%
+ \settoggle{cms@bibnona}{true}%
+ \settoggle{cms@subseqnona}{true}}%
+\def\cms@gopt@na@bibfirst{%
+ \settoggle{cms@citenona}{true}%
+ \settoggle{cms@subseqnona}{true}}%
+
+\DeclareTypeOption[string]{nameaddon}[all]{%
+ \ifcsdef{cms@opt@na@#1}%
+ {\csuse{cms@opt@na@#1}}%
+ {\csuse{cms@opt@na@all}\cms@warning@noline%
+ {'nameaddon=#1' is not a valid type\MessageBreak
+ option. The default - 'all' - has been set.\MessageBreak
+ Please see biblatex-chicago.pdf for valid\MessageBreak
+ option keys}}}%
+\def\cms@opt@na@all{}%
+\def\cms@opt@na@none{%
+ \settoggle{cms@bibnona}{true}%
+ \settoggle{cms@citenona}{true}}%
+\def\cms@opt@na@cite{\settoggle{cms@bibnona}{true}}%
+\def\cms@opt@na@bib{\settoggle{cms@citenona}{true}}%
+
+\DeclareEntryOption[string]{nameaddon}[all]{%
+ \ifcsdef{cms@opt@na@#1}%
+ {\csuse{cms@opt@na@#1}}%
+ {\csuse{cms@opt@na@all}\cms@warning@noline%
+ {'nameaddon=#1' is not a valid entry\MessageBreak
+ option. The default - 'all' - has been set.\MessageBreak
+ Please see biblatex-chicago.pdf for valid\MessageBreak
+ option keys}}}%
+
\DeclareBiblatexOption{global,type,entry}[string]{related}[bib]{%
\ifcsdef{cms@opt@rel@#1}%
{\csuse{cms@opt@rel@#1}}%
@@ -1057,6 +1244,32 @@
\def\cms@opt@shxp@period{%
\def\shortextrapunct{\addperiod\addspace}}%
+% Controlling formatting of, and punctuation before, nameaddon fields %
+
+\DeclareBiblatexOption{global,type,entry}[string]{nameaddonformat}{%
+ \def\cms@naformat{#1}}
+
+\DeclareBiblatexOption{global,type,entry}[string]{nameaddonsep}[space]{%
+ \ifcsdef{cms@opt@nasep@#1}%
+ {\csuse{cms@opt@nasep@#1}}%
+ {\csuse{cms@opt@nasep@space}\cms@warning@noline%
+ {'nameaddonsep=#1' is not a valid option.\MessageBreak
+ The default - 'space' - has been set.\MessageBreak
+ Please see biblatex-chicago.pdf for valid\MessageBreak
+ option keys}}}%
+\def\cms@opt@nasep@none{%
+ \let\nameaddonpunct\@empty}%
+\def\cms@opt@nasep@comma{%
+ \def\nameaddonpunct{\addcomma\addspace}}%
+\def\cms@opt@nasep@colon{%
+ \def\nameaddonpunct{\addcolon\addspace}}%
+\def\cms@opt@nasep@space{%
+ \def\nameaddonpunct{\addspace}}%
+\def\cms@opt@nasep@semicolon{%
+ \def\nameaddonpunct{\addsemicolon\addspace}}%
+\def\cms@opt@nasep@period{%
+ \def\nameaddonpunct{\addperiod\addspace}}%
+
% Controlling punctuation before titleaddon fields %
\DeclareBiblatexOption{global,type,entry}[string]{ptitleaddon}[period]{%
@@ -1078,7 +1291,7 @@
\def\cms@opt@ptao@semicolon{%
\def\ptitleaddonpunct{\addsemicolon\addspace}}%
\def\cms@opt@ptao@period{%
- \def\ptitleaddonpunct{\addperiod\addspace}}%
+ \def\ptitleaddonpunct{\newunitpunct}}%
\DeclareBiblatexOption{global,type,entry}[string]{ctitleaddon}[comma]{%
\ifcsdef{cms@opt@ctao@#1}%
@@ -1099,7 +1312,7 @@
\def\cms@opt@ctao@semicolon{%
\def\ctitleaddonpunct{\addsemicolon\addspace}}%
\def\cms@opt@ctao@period{%
- \def\ctitleaddonpunct{\addperiod\addspace}}%
+ \def\ctitleaddonpunct{\newunitpunct}}%
% Controlling punctuation before shorthand in notes %
@@ -1130,10 +1343,14 @@
\ExecuteBibliographyOptions{includeall,completenotes,hidevolumes,%
related,booklongxref,ptitleaddon,ctitleaddon,shorthandpunct,urlnotes,%
- legalnotes,supranotes,shortextrapunct,dashed}
+ legalnotes,supranotes,shortextrapunct,dashed,bibannotesep,citeannotesep,%
+ nameaddonsep=space}
\ExecuteBibliographyOptions[standard]{useeditor=false,usenamec=false}%
+\ExecuteBibliographyOptions[jurisdiction,legal,legislation]{%
+ shorthandintro=full}%
+
\iftoggle{cms@legalnotes}%
{\ExecuteBibliographyOptions[jurisdiction,legal,legislation]{skipbib}}%
{}%
@@ -1147,25 +1364,8 @@
\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}%
- }}%
- {}}
-
+\DeclareBiblatexOption{global}[boolean]{strict}[true]{%
+ \settoggle{cms@strict}{#1}}%
\protected\def\blx@newcunit{%
\iftoggle{blx@keepunit}%
@@ -1266,7 +1466,11 @@
{\usebibmacro{cite:shorthand}%
\usebibmacro{cite:save}%
\global\toggletrue{cms@noidem}}%
- {\iftoggle{cms@allshort}%
+ {\ifboolexpr{%
+ togl {cms@allshort}%
+ and
+ not togl {cms@noneshort}%
+ }%
{\global\toggletrue{cms@shortnote}%
\global\togglefalse{cms@fullnote}%
\global\toggletrue{cms@printshhand}%
@@ -1537,6 +1741,8 @@
togl {cms@supranotes}%
and
test {\iffootnote}%
+ and
+ test {\ifciteseen}%
}%
{\newcunit%
\printtext{\bibstring{supranote}\addnbspace%
@@ -1563,6 +1769,14 @@
and
not test {\iffieldint{volume}}%
)
+ or
+ (
+ test {\iffieldundef{volume}}% Bug fix; correct?
+ and
+ test {\iffieldundef{series}}%
+ and
+ not test {\iffieldundef{titleaddon}}%
+ )
}%
{\ifboolexpr{%
test {\iffieldundef{entrysubtype}}%
@@ -1601,6 +1815,8 @@
and
test {\iffootnote}%
and
+ test {\ifciteseen}%
+ and
(
test {\iffieldequalstr{entrysubtype}{un}}%
or
@@ -1809,6 +2025,8 @@
and
togl {cms@supranotes}%
and
+ test {\ifciteseen}%
+ and
(
test {\ifentrytype{legal}}%
or
@@ -1824,23 +2042,33 @@
{\newcunit%
\printtext{\bibstring{supranote}\addnbspace%
\ref{cbx@\csuse{cbx@f@\thefield{entrykey}}}%
- \newcunit}}% ??
- {}}%
+ \iffieldundef{postnote}{}{\printunit{\addcomma\addspace}}}}% ??
+ {}}% The printunit is for when a shorthand is also an ibidem.
\newbibmacro*{cms:shorthandintro}{% For changing the citedas phrase
- \iffieldundef{shorthand}%
+ \ifboolexpr{%
+ test {\iffieldundef{shorthand}}%
+ or
+ togl {cms@noshintro}% option shorthandintro=none
+ or
+ togl {cms@noneshort}% mainly for Bluebook
+ }%
{}%
- {\iffieldundef{shorthandintro}%
+ {\iftoggle{cms@shandonly}% option shorthandintro=short
{\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}}}}
+ {\printtext[brackets]{\printfield{shorthand}}}%
+ {\printtext[parens]{\printfield{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}}}}%
+ {\printfield{shorthandintro}}}}}
\newbibmacro*{cite:ibid}{%
\ifthenelse{\ifentrytype{jurisdiction}\OR\ifentrytype{legal}\OR%
@@ -1988,7 +2216,7 @@
\ifthenelse{\iffieldundef{pagination}\AND%
\iffieldundef{bookpagination}}%
{\setunit{\postvolpunct}}%
- {\setunit{\addcolon\addspace}}}}}}%
+ {\setunit{\journalpagespunct}}}}}}%
%% Macros from verbose.cbx %%
@@ -2166,21 +2394,18 @@
\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.
+ \nopunct% Remove otherlang test for 3.16
+ }%\unspace Put \nopunct and \unspace here for 0.8e.
{\usedriver
{\DeclareNameAlias{sortname}{default}\clearfield{postnote}%
\usebibmacro{clearpublin}\clearfield{shorthand}%
\usebibmacro{cms:titlehook}%
+ \global\toggletrue{cms@reprintfrom}%
\toggletrue{cms@fullnote}\toggletrue{cms@headlessnote}%
\toggletrue{cms@origpublished}\frenchspacing}%
{cite:\thefield{entrytype}}%
- \iflistundef{pageref}{}{\newunit\usebibmacro{pageref}}}%
+ \iflistundef{pageref}{}{\newunit\usebibmacro{pageref}}%
+ \global\togglefalse{cms@reprintfrom}}%
{\multicitedelim}%
{\finentry}
@@ -2258,15 +2483,87 @@
\DeclareMultiCiteCommand{\surnamecites}{surnamecite}{\multicitedelim}
+\DeclareCitePunctuationPosition{\citeincitef}{d}
+
+\DeclareCitePunctuationPosition{\citeincitefs}{d}
+
+\DeclareMultiCiteCommand{\citeincites}[\cmswrap]%
+{citeincite}{\multicitedelim}
+
+\DeclareMultiCiteCommand{\citeincitefs}[\cmswrapf]%
+{citeincitef}{\multicitedelim}
+
+\DeclareMultiCiteCommand{\fullciteincites}[\cmsfwrap]%
+{fullciteincite}{\multicitedelim}
+
+\DeclareCiteCommand{\citeincite}[\cmswrap]
+{\usebibmacro{backref+check}%
+ \usebibmacro{prenote}}%
+{\toggletrue{cms@shortnote}%
+ \togglefalse{cms@fullnote}%
+ \toggletrue{cms@noidem}%
+ \usebibmacro{citeindex}%
+ \usebibmacro{cite:short}{\thefield{entrytype}}%
+ \usebibmacro{cite:save}}
+{\multicitedelim}
+{\usebibmacro{postnote}}%
+
+\DeclareCiteCommand{\citeincitef}[\cmswrapf]
+{\usebibmacro{backref+check}%
+ \usebibmacro{prenote}}%
+{\toggletrue{cms@shortnote}%
+ \togglefalse{cms@fullnote}%
+ \toggletrue{cms@noidem}%
+ \usebibmacro{citeindex}%
+ \usebibmacro{cite:short}{\thefield{entrytype}}%
+ \usebibmacro{cite:save}}
+{\multicitedelim}
+{\usebibmacro{postnote}}%
+
+\DeclareCiteCommand{\fullciteincite}[\cmsfwrap]
+{\usebibmacro{backref+check}%
+ \usebibmacro{prenote}}%
+{\usebibmacro{citeindex}%
+ \toggletrue{cms@fullnote}%
+ \togglefalse{cms@shortnote}%
+ \usebibmacro{footcite:save}%
+ \usebibmacro{cite:full}%
+ \usebibmacro{cite:save}}
+{\multicitedelim}
+{}
+
+\def\cmsfwrap#1{\clearfield{prenote}#1}%
+
+\def\cmswrap#1{%
+ \gundef{\cms@pncic}%
+ \savefield{postnote}{\cms@pncic}%
+ \clearfield{postnote}\clearfield{prenote}%
+ \begingroup#1\endgroup%
+ \ifdef{\blx@thepostpunct}%
+ {\ifdefvoid{\abx@field@postpunct}%
+ {\blx@dopostpunct}{}}%
+ {}%
+ \global\let\abx@field@postnote\cms@pncic%
+ \global\let\abx@field@postpunct\@empty}%
+
+\def\cmswrapf#1{%
+ \gundef{\cms@pncic}%
+ \savefield{postnote}{\cms@pncic}%
+ \clearfield{postnote}\clearfield{prenote}%
+ \begingroup#1\ifdef{\blx@thepostpunct}{\cms@cicpunct}{}\endgroup
+ \global\let\abx@field@postnote\cms@pncic}%
+
+\def\cms@cicpunct{}% Only needed in US; redefine in lbx
+
\DeclareCiteCommand{\shortcite}
- {\usebibmacro{prenote}}
+ {\usebibmacro{prenote}}%
{\toggletrue{cms@shortnote}%
\togglefalse{cms@fullnote}%
\usebibmacro{citeindex}%
\usebibmacro{cite:short}{\thefield{entrytype}}%
\usebibmacro{cite:save}}
{\multicitedelim}
- {\usebibmacro{postnote}}
+ {\usebibmacro{postnote}}%
\DeclareCiteCommand*{\shortcite}
{\boolfalse{citetracker}%
@@ -2576,6 +2873,7 @@
\DeclareBibliographyDriver{cite:article}{%
\iffieldequalstr{entrysubtype}{magazine}%
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{cmag+news+author}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{cmag+news+title}%
@@ -2620,6 +2918,7 @@
{}%
\usebibmacro{finentry}}%
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{cmag+news+title}%
@@ -2668,6 +2967,7 @@
\DeclareBibliographyDriver{cite:artwork}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock
\usebibmacro{citaltitle+stitle}%
@@ -2720,6 +3020,7 @@
\DeclareBibliographyDriver{cite:audio}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{ctitle+stitle}%
@@ -2757,12 +3058,12 @@
\printfield{volume}%
\printfield{part}%
\setunit{\addspace}
- \bibstring{ofseries}%
- \setunit{\addspace}
- \printtext[maintitle]{%
- \printfield[mtnoformat]{maintitle}%
+ \bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
+ \printtext[default]{%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
- \printfield[smtnoformat]{mainsubtitle}}%
+ \printfield[title]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}
\printfield{maintitleaddon}}}
\newcunit
@@ -2804,6 +3105,7 @@
\DeclareBibliographyDriver{cite:book}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{citaltitle+stitle}%
@@ -2938,6 +3240,7 @@
\DeclareBibliographyDriver{cite:bookinbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{citaltitle+stitle}%
@@ -3091,6 +3394,7 @@
\DeclareBibliographyDriver{cite:booklet}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock
\usebibmacro{citaltitle+stitle}%
@@ -3124,6 +3428,7 @@
\DeclareBibliographyDriver{cite:collection}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock%
\usebibmacro{citaltitle+stitle}%
@@ -3237,15 +3542,21 @@
\DeclareBibliographyDriver{cite:customc}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{justauthor}%
- \iffieldundef{nameaddon}%
- {\newcunit}
+ \ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ togl {cms@citenona}%
+ }%
+ {\newcunit}%
{\setunit{\addspace}}%
\usebibmacro{italtitle+stitle}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{cite:dataset}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\iftoggle{cms@headlessnote}{}{\setunit{\addspace}\newblock}%
\printtext[parens]{%
@@ -3319,6 +3630,7 @@
\DeclareBibliographyDriver{cite:image}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock
\usebibmacro{citaltitle+stitle}%
@@ -3371,6 +3683,7 @@
\DeclareBibliographyDriver{cite:inbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{ctitle+stitle}%
@@ -3511,6 +3824,7 @@
\DeclareBibliographyDriver{cite:incollection}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock%
\usebibmacro{ctitle+stitle}%
@@ -3651,6 +3965,7 @@
\DeclareBibliographyDriver{cite:inproceedings}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{ctitle+stitle}%
@@ -3696,6 +4011,14 @@
\usebibmacro{cser+num}%
\newcunit\newblock
\usebibmacro{cnotefield}%
+ \newcunit\newblock
+ \printfield{eventtitle}%
+ \setunit{\ctitleaddonpunct}%
+ \printfield{eventtitleaddon}%
+ \newcunit%
+ \printfield{venue}%
+ \newcunit\newblock
+ \printeventdate%
\setunit{\addspace}\newblock%
\printtext[parens]{%
\usebibmacro{org+publ+loc+year}}%
@@ -3787,6 +4110,7 @@
\DeclareBibliographyDriver{cite:inreference}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\iffieldundef{clonesourcekey}{}{\newcunit}%
\usebibmacro{citaltitle+stitle}%
\newcunit\newblock
@@ -3847,6 +4171,7 @@
\DeclareBibliographyDriver{cite:jurisdiction}{%
\iffieldequalstr{entrysubtype}{square}% FIXME?
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{clegis+news+title}%
\setunit{\addspace}%
\usebibmacro{language+transtitle}%
@@ -3908,6 +4233,7 @@
\usebibmacro{finentry}}
{\iffieldequalstr{entrysubtype}{round}% FIXME?
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{clegis+news+title}%
\setunit{\addspace}%
\usebibmacro{language+transtitle}%
@@ -3968,6 +4294,7 @@
{}%
\usebibmacro{finentry}}
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{clegis+news+title}%
\setunit{\addspace}%
\usebibmacro{language+transtitle}%
@@ -4038,6 +4365,7 @@
\DeclareBibliographyDriver{cite:legal}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{clegis+news+title}%
@@ -4107,6 +4435,7 @@
\DeclareBibliographyDriver{cite:legislation}{%
\iffieldequalstr{entrysubtype}{uk}% FIXME?
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{clegis+news+title}%
@@ -4174,6 +4503,7 @@
\usebibmacro{finentry}}
{\iffieldequalstr{entrysubtype}{hansard}% FIXME?
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{clegis+news+title}%
@@ -4234,6 +4564,7 @@
{}%
\usebibmacro{finentry}}
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{clegis+news+title}%
@@ -4310,6 +4641,7 @@
\DeclareBibliographyDriver{cite:letter}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\savefield{fullhash}{\bbx@lasthash}%
\printtext[title]{%
\printfield[noformat]{title}}%
@@ -4452,6 +4784,7 @@
\DeclareBibliographyDriver{cite:manual}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author+org}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock%
\usebibmacro{citaltitle+stitle}%
@@ -4495,6 +4828,7 @@
\DeclareBibliographyDriver{cite:misc}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock
\iffieldundef{entrysubtype}%
@@ -4556,6 +4890,7 @@
\DeclareBibliographyDriver{cite:music}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock
\usebibmacro{citaltitle+stitle}%
@@ -4598,12 +4933,12 @@
\printfield{volume}%
\printfield{part}%
\setunit{\addspace}
- \bibstring{ofseries}%
- \setunit{\addspace}
- \printtext[maintitle]{%
- \printfield[mtnoformat]{maintitle}%
+ \bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
+ \printtext[default]{%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
- \printfield[smtnoformat]{mainsubtitle}}%
+ \printfield[title]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
\printfield{maintitleaddon}}}
\newcunit
@@ -4657,6 +4992,7 @@
\DeclareBibliographyDriver{cite:mvbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{citaltitle+stitle}%
@@ -4797,6 +5133,7 @@
\DeclareBibliographyDriver{cite:mvcollection}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock%
\usebibmacro{citaltitle+stitle}%
@@ -4931,6 +5268,7 @@
\DeclareBibliographyDriver{cite:mvproceedings}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock%
\usebibmacro{citaltitle+stitle}%
@@ -4976,6 +5314,14 @@
{\usebibmacro{cmtitle+mstitle+vol+part+title+stitle}%
\newcunit\newblock
\usebibmacro{cnotefield}%
+ \newcunit\newblock
+ \printfield{eventtitle}%
+ \setunit{\ctitleaddonpunct}%
+ \printfield{eventtitleaddon}%
+ \newcunit%
+ \printfield{venue}%
+ \newcunit\newblock
+ \printeventdate%
\setunit{\addspace}\newblock%
\printtext[parens]{%
\usebibmacro{org+publ+loc+year}}%
@@ -5062,6 +5408,7 @@
\DeclareBibliographyDriver{cite:mvreference}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{citaltitle+stitle}%
\newcunit\newblock
\iffieldundef{edition}%
@@ -5128,6 +5475,7 @@
\DeclareBibliographyDriver{cite:online}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock
\IfBeginWith{\thefield{title}}{CCCCCC}%
@@ -5204,6 +5552,7 @@
\DeclareBibliographyDriver{cite:patent}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author+holder}% +holder?
\usebibmacro{hlpunct}%\newcunit\newblock
\iffieldundef{title}%
@@ -5264,6 +5613,7 @@
\DeclareBibliographyDriver{cite:performance}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock
\usebibmacro{citaltitle+stitle}%
@@ -5313,6 +5663,7 @@
\DeclareBibliographyDriver{cite:periodical}{%
\iffieldequalstr{entrysubtype}{magazine}%
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{issuetitle}%
@@ -5349,6 +5700,7 @@
{}%
\usebibmacro{finentry}}%
{\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{issuetitle}%
@@ -5391,6 +5743,7 @@
\DeclareBibliographyDriver{cite:proceedings}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock%
\usebibmacro{citaltitle+stitle}%
@@ -5422,6 +5775,14 @@
\usebibmacro{cser+num}%
\newcunit\newblock
\usebibmacro{cnotefield}%
+ \newcunit\newblock
+ \printfield{eventtitle}%
+ \setunit{\ctitleaddonpunct}%
+ \printfield{eventtitleaddon}%
+ \newcunit%
+ \printfield{venue}%
+ \newcunit\newblock
+ \printeventdate%
\setunit{\addspace}\newblock%
\printtext[parens]{%
\usebibmacro{org+publ+loc+year}}%
@@ -5501,6 +5862,7 @@
\DeclareBibliographyDriver{cite:reference}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\iffieldundef{clonesourcekey}{}{\newcunit}%
\usebibmacro{citaltitle+stitle}%
\newcunit\newblock
@@ -5553,6 +5915,7 @@
\DeclareBibliographyDriver{cite:report}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock
\iffieldequalstr{entrysubtype}{unpublished}%
@@ -5600,6 +5963,7 @@
\DeclareBibliographyDriver{cite:review}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\iffieldequalstr{entrysubtype}{magazine}%
{\usebibmacro{cmag+news+author}}%
{\usebibmacro{author/editor}}%
@@ -5707,12 +6071,14 @@
\DeclareBibliographyDriver{cite:standard}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\iffieldundef{entrysubtype}%
{}%
{\ifnameundef{author}%
{\iflistundef{organization}%
{}%
- {\printlist{organization}}}%
+ {\printlist{organization}%
+ \usebibmacro{print+nameaddon}}}%
{\usebibmacro{justauthor}}%
\usebibmacro{hlpunct}}%\setunit{\addcomma\addspace}\newblock%
\usebibmacro{citaltitle+stitle}%
@@ -5782,6 +6148,7 @@
\DeclareBibliographyDriver{cite:suppbook}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author}%
\usebibmacro{hlpunct}%\newcunit\newblock
\usebibmacro{inforaft}%
@@ -5845,6 +6212,7 @@
\DeclareBibliographyDriver{cite:thesis}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock
\usebibmacro{ctitle+stitle}%
@@ -5880,6 +6248,7 @@
\DeclareBibliographyDriver{cite:unpublished}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\usebibmacro{author/editor}%
\usebibmacro{hlpunct}%\setunit{\addcomma\addspace}\newblock
\usebibmacro{ctitle+stitle}%
@@ -5929,6 +6298,7 @@
\DeclareBibliographyDriver{cite:video}{%
\usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
\ifboolexpr{%
test {\iffieldequalstr{entrysubtype}{tvepisode}}%
and
@@ -5984,12 +6354,12 @@
\printfield{volume}%
\printfield{part}%
\setunit{\addspace}
- \bibstring{ofseries}%
- \setunit{\addspace}
- \printtext[maintitle]{%
- \printfield[mtnoformat]{maintitle}%
+ \bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
+ \printtext[default]{%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
- \printfield[smtnoformat]{mainsubtitle}}%
+ \printfield[title]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
\printfield{maintitleaddon}}}
\newcunit
@@ -6158,29 +6528,29 @@
%% 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}}}%
+ \ifpages{#1}% xetex and luatex revealed a bug in original logic
+ {\iftoggle{cms@comprange}%
+ {{\iffieldundef{pagination}%
+ {\mkcomprange{#1}}%
+ {\mkcomprange[{\mkpageprefix[pagination]}]{#1}}}}%
+ {{\iffieldundef{pagination}%
+ {\mknormrange{#1}}%
+ {\mknormrange[{\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}}}%
+ \ifpages{#1}%
+ {\iftoggle{cms@comprange}%
+ {\iffieldundef{pagination}%
+ {\bibsstring{subverbo}\addnbspace\mkbibquote{#1}}%
+ {\mkcomprange[{\mkpageprefix[pagination]}]{#1}}}%
+ {\iffieldundef{pagination}%
+ {\bibsstring{subverbo}\addnbspace\mkbibquote{#1}}%
+ {\mknormrange[{\mkpageprefix[pagination]}]{#1}}}}%
{\iffieldundef{pagination}%
- {\bibsstring{subverbo}\addspace\mkbibquote{#1}}%
+ {\bibsstring{subverbo}\addnbspace\mkbibquote{#1}}%
{\mkpageprefix[pagination]{#1}}}}%
\newrobustcmd*{\mkjuridprefix}[1]{%
@@ -6251,20 +6621,47 @@
\mkbibemph{#1}\isdot}
\DeclareFieldFormat[customc]{title}{%
- \iffieldundef{nameaddon}%
+ \ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ (
+ test {\ifbibliography}%
+ and
+ togl {cms@bibnona}%
+ )
+ or
+ (
+ test {\ifcitation}%
+ and
+ togl {cms@citenona}%
+ )
+ }%
{\mkbibemph{\bibstring{see}}%
\addspace%
#1}%
{#1}}
\DeclareFieldFormat[customc]{citetitle}{%
- \iffieldundef{nameaddon}%
+ \ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ togl {cms@citenona}%
+ }%
{\mkbibemph{\bibstring{see}}%
\addspace%
#1}%
{\printfield{nameaddon}\addspace #1}}
-\DeclareFieldAlias[customc]{lostitle}[customc]{title}
+\DeclareFieldFormat[customc]{lostitle}{%
+ \ifboolexpr{%
+ test {\iffieldundef{nameaddon}}%
+ or
+ togl {cms@bibnona}%
+ }%
+ {\mkbibemph{\bibstring{see}}%
+ \addspace%
+ #1}%
+ {\addspace #1}}
\DeclareFieldFormat[misc]{title}{%
\iffieldundef{entrysubtype}%
@@ -6288,6 +6685,7 @@
\mkbibparens{\ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}}
\DeclareFieldFormat[dataset]{lostitle}{%
+ \addspace% Instead of in shorthand driver (2.1)
\mkbibparens{\ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}}
\DeclareFieldFormat[review,suppperiodical]{title}{%
@@ -6387,7 +6785,10 @@
\DeclareFieldFormat{letterday}{\mkbibcurdinal{#1}}
\DeclareFieldFormat{note}{%
- \ifcapital{\MakeCapital{#1}}{#1}}%
+ \if@cms@capital{#1}{\MakeCapital{#1}}{#1}}%
+
+\DeclareFieldFormat{capital}{%
+ \ifcapital{\MakeCapital{#1}}{#1}}
\DeclareFieldFormat
[audio,manual,music,patent,report,suppbook,suppcollection,thesis,video]
@@ -6502,14 +6903,34 @@
\DeclareFieldAlias{userd}{titleaddon}% 16th ed.
-\DeclareFieldFormat{nameaddon}{\mkbibbrackets{#1\bibsentence}}% ?!
+\DeclareFieldFormat{nameaddon}{%
+ \ifdefvoid{\cms@naformat}%
+ {\mkbibbrackets{#1\bibsentence}}%
+ {\printtext[\cms@naformat]{#1\isdot}}}%
-\DeclareFieldFormat[online,review,suppperiodical]{nameaddon}{#1\bibsentence}
+\DeclareFieldFormat[online,review,suppperiodical]{nameaddon}{%
+ \ifdefvoid{\cms@naformat}%
+ {#1\ifboolexpr{%(
+ test {\IfEndWith{\thefield{nameaddon}}{)}}%[
+ or
+ test {\IfEndWith{\thefield{nameaddon}}{]}}%
+ }%
+ {\bibsentence}{\isdot}}%
+ {\printtext[\cms@naformat]{#1\isdot}}}
\DeclareFieldFormat[misc]{nameaddon}{%
\iffieldundef{entrysubtype}%
- {\mkbibbrackets{#1\bibsentence}}%
- {#1\bibsentence}}
+ {\ifdefvoid{\cms@naformat}%
+ {\mkbibbrackets{#1\bibsentence}}%
+ {\printtext[\cms@naformat]{#1\isdot}}}%
+ {\ifdefvoid{\cms@naformat}%
+ {#1\ifboolexpr{%(
+ test {\IfEndWith{\thefield{nameaddon}}{)}}%[
+ or
+ test {\IfEndWith{\thefield{nameaddon}}{]}}%
+ }%
+ {\bibsentence}{\isdot}}%
+ {\printtext[\cms@naformat]{#1\isdot}}}}
\DeclareFieldFormat[customc]{nameaddon}{% For cross-refs
\ifbibstring{#1}%
@@ -6544,7 +6965,7 @@
\DeclareFieldFormat{usere}{[#1]} % Better than mkbibbrackets?
\DeclareFieldFormat{titleaddon}{%
- \ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}%
+ \if@cms@capital{#1}{\MakeCapital{#1\isdot}}{#1\isdot}}%
\DeclareFieldAlias{booktitleaddon}{titleaddon}
@@ -6559,10 +6980,14 @@
\DeclareFieldFormat{journaltitle}{\mkbibemph{#1}\isdot}
+\DeclareFieldFormat{injournaltitle}{\mkbibemph{#1}\isdot}
+
\DeclareFieldFormat{issuetitle}{\mkbibquote{#1\isdot}}
\DeclareFieldFormat{shortjournal}{\mkbibemph{#1}\isdot}
+\DeclareFieldFormat{inshortjournal}{\mkbibemph{#1}\isdot}
+
\DeclareFieldFormat[periodical]{shorttitle}{\mkbibemph{#1}\isdot}
\DeclareFieldFormat{jourser}{%
@@ -6608,6 +7033,8 @@
\DeclareFieldFormat{jourvol}{#1}
+\DeclareFieldFormat{shortvol}{#1}
+
\DeclareFieldFormat{sernum}{%
\ifnumeral{#1}%
{\addnbspace #1}%
@@ -6618,15 +7045,38 @@
\DeclareFieldFormat{shortseries}{#1\isdot}
\DeclareFieldFormat{addendum}{%
- \ifcapital{\MakeCapital{#1\isdot}}{#1\isdot}}
+ \if@cms@capital{#1}{\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.
+% There was unfortunate interaction between the case-changing code and
+% cite commands when the latter were at the beginning of the
+% field. This modified \ifcapital will be used in the fields in which
+% the \citeincite(s) commands can appear.
+
+\newrobustcmd*{\if@cms@capital}[1]{%
+ \noexpandarg
+ \StrChar{#1}{1}[\cms@char]%
+ \ifboolexpr{%
+ test {\ifcapital}%
+ and
+ not test {\ifdefstring{\cms@char}{\citeincite}}%
+ and
+ not test {\ifdefstring{\cms@char}{\citeincitef}}%
+ and
+ not test {\ifdefstring{\cms@char}{\citeincites}}%
+ and
+ not test {\ifdefstring{\cms@char}{\citeincitefs}}%
+ }%
+ {\@firstoftwo}%
+ {\@secondoftwo}%
+}
-\DeclareFieldFormat{annotation}{\par\nobreak \vskip \bibitemsep #1}
+% For annotation fixes move all code for separators to the entrytail
+% macro, below.
+
+\DeclareFieldFormat{annotation}{#1}%
\DeclareFieldFormat{part}{% xref revision ???
\ifnumerals{#1}%
@@ -6723,10 +7173,14 @@
not togl {blx@skipbib}%
}%
{\printtext[bibhyperref]{#1}}%
- {#1}}%
+ {\ifentryinbib{\thefield{clonesourcekey}}%
+ {\printtext{\bibhyperref[\abx@field@clonesourcekey]{#1}}}%
+ {#1}}}%
{\iftoggle{cms@allshort}%
{\iftoggle{blx@skipbib}{#1}{\printtext[bibhyperref]{#1}}}%
- {\printtext[bibhyperlink]{#1}}}}%
+ {\iffieldundef{clonesourcekey}%
+ {\printtext[bibhyperlink]{#1}}%
+ {\printtext{\bibhyperlink{\abx@field@clonesourcekey}{#1}}}}}}%
\newrobustcmd*{\cmsshhyper}[1]{%
\iffootnote%
@@ -6765,7 +7219,7 @@
{#1}}%
\ifentrytype{jurisdiction}%
{\newcunit}%
- {\printunit{\relatedpunct}}}% Issue w/ printunit. Our bug?
+ {\iftoggle{smartof}{}{\printunit{\relatedpunct}}}}% Issue w/ printunit.
\DeclareFieldFormat{relatedstring:reprintfrom}{% For notes + bib
\ifboolexpr{%
@@ -6776,8 +7230,7 @@
{#1}%
{\ifcapital%
{\MakeCapital{#1}}%
- {#1}}%
- \addspace}%
+ {#1}}}%
%%%% Commands, for users and internal %%%%
@@ -6815,7 +7268,7 @@
\newcommand*{\reprintpunct}{%
\iftoggle{cms@fullnote}%
{\setunit*{\addsemicolon\addspace}}%
- {\setunit*{\addperiod\addspace}}}
+ {\setunit*{\newunitpunct}}}
\newcommand*{\encypunct}{% for named entries in an encyclopedia
\iftoggle{cms@fullnote}%
@@ -6931,7 +7384,9 @@
{\addcomma\addspace}%
{\addcomma\addspace\bibstring{and}\addspace}}}%
-\renewcommand*{\postnotedelim}{%
+\newcommand*{\journalpagespunct}{\addcolon\space}% Make it configurable
+
+\renewcommand*{\postnotedelim}{% v 2.1: Made all punct use units
\ifboolexpr{%
test {\ifciteibid}%
and
@@ -6943,40 +7398,59 @@
test {\ifentrytype{legislation}}%
)
}%
- {\addspace}%
+ {\setunit{\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.
+ {\setunit{\addspace}}%
+ {\newcunit}\DeclareNumChars{.}}%
+ {\newcunit}}% 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}}}}%
+ {\setunit{\journalpagespunct}}%
+ {\newcunit}}%
+ {\newcunit}}}}%
\newcommand*{\postnotewrapper}{%
- \iftoggle{cms@modpostnote}%
+ \iftoggle{cms@modpostnote}% Multiple bugs in v 2.0.
{\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}}}%
+ {\togglefalse{blx@unit}%
+ \expandarg
+ \StrGobbleLeft{\abx@field@postnote}{1}[\abx@field@postnote]%
+ \iffieldstart{postnote}{\ }%
+ {\setunit{\addcomma}}%
+ {\newcunit}}%
+ {\iffieldstart{postnote}{;}%
+ {\togglefalse{blx@unit}%
+ \expandarg
+ \StrGobbleLeft{\abx@field@postnote}{1}[\abx@field@postnote]%
+ \iffieldstart{postnote}{\ }%
+ {\setunit{\addsemicolon}}%
+ {\setunit{\addsemicolon\addspace}}}%
+ {\iffieldstart{postnote}{:}%
+ {\togglefalse{blx@unit}%
+ \expandarg
+ \StrGobbleLeft{\abx@field@postnote}{1}[\abx@field@postnote]%
+ \iffieldstart{postnote}{\ }%
+ {\setunit{\addcolon}}%
+ {\setunit{\addcolon\addspace}}}%
+ {\iffieldstart{postnote}{.}%
+ {\togglefalse{blx@unit}%
+ \expandarg
+ \StrGobbleLeft{\abx@field@postnote}{1}[\abx@field@postnote]%
+ \iffieldstart{postnote}{\ }%
+ {\setunit{\addperiod}}%
+ {\newunit}}%
+ {\postnotedelim}}}}}%
{\postnotedelim}}%
\newrobustcmd*{\iffieldstart}[2]{% Philipp Lehman's code, from
@@ -7077,7 +7551,11 @@
\newbibmacro*{finentry}{%{\finentry} To make annotated bibliography
\togglefalse{cms@switchdates}%
- \ifbibliography
+ \ifboolexpr{%
+ togl {cms@annotation}%
+ or
+ togl {cms@cbxannote}%
+ }%
{\usebibmacro{entrytail}}%
{}%
\finentry}
@@ -7154,11 +7632,30 @@
{}}%
\newbibmacro*{entrytail}{% From reading.bbx, for annotated bibliography
- \newunit\newblock
- \iftoggle{cms@annotation}%
- {\usebibmacro{annotation}%
- \newunit\newblock}%
- {}}%
+ \ifbibliography%
+ {\iftoggle{cms@annotation}%
+ {\togglefalse{blx@unit}%
+ \togglefalse{blx@keepunit}%
+ \setunit{\bibannotesep}%
+ \usebibmacro{annotation}%
+ \newunit\newblock}%
+ {\newunit}}%
+ {\iftoggle{cms@cbxannote}%
+ {\togglefalse{blx@unit}%
+ \togglefalse{blx@keepunit}%
+ \setunit{\citeannotesep}%
+ \usebibmacro{annotation}%
+ \newunit\newblock}%
+ {\newunit}}}%
+
+% From biblatex.def; biblatex 3.15 toggled blx@bibliography off here,
+% but we still need to be able to test it in Chicago, at least with
+% the current code, so redefine the macro.
+
+\renewbibmacro*{annotation}{%
+ \iffieldundef{annotation}%
+ {\printfile[annotation]{\bibannotationprefix\thefield{entrykey}.tex}}%
+ {\printfield{annotation}}}
\newbibmacro*{author+holder}{%
\ifnameundef{author}%
@@ -7182,7 +7679,7 @@
{\bibstring{byauthor}\addspace%
\printnames[byauthor]{author}}}}
-\newbibmacro*{byauthorpunct}{%
+\newbibmacro*{byauthorpunct}{% Obsolete?
\ifthenelse{\ifuseauthor\OR\ifnameundef{author}}%
{\addperiod\addspace}%
{\newcunit}}
@@ -7254,7 +7751,7 @@
togl {cms@namedash}%
}%
{\printtext{\bibnamedash}}%
- {\usebibmacro{journal+sub}%
+ {\usebibmacro{journal+sub}{}%
\setunit*{\addspace}%
\printlist[periodplace]{location}%
\savefield{journaltitle}{\bbx@lasthash}}}%
@@ -7346,14 +7843,14 @@
{\bibstring{by#2}}%
{\ifbibxstring{by\thefield{#1type}}%
{\bibstring{by\thefield{#1type}}}%
- {\printtext[note]{\thefield{#1type}}}}}%
+ {\printtext[capital]{\thefield{#1type}}}}}%
\newbibmacro*{cbytypestrg}[2]{%
\iffieldundef{#1type}%
{\bibstring{cby#2}}%
{\ifbibxstring{cby\thefield{#1type}}%
{\bibstring{cby\thefield{#1type}}}%
- {\printtext[note]{\thefield{#1type}}}}}%
+ {\printtext[capital]{\thefield{#1type}}}}}%
\newbibmacro*{cbyeditor}{%
\ifnameundef{editor}%
@@ -7618,7 +8115,9 @@
and
not test {\IfBeginWith{\thefield{relatedtype}}{maintitl}}%
}%
- {\printfield{volume}%
+ {\DeclareFieldAlias{citetitle}{title:hook:alt}%
+ \DeclareFieldAlias{shorthand}{shorthand:hook}%
+ \printfield{volume}%
\clearfield{volume}%
\global\let\cbx@incollvol\undefined% Volume fix
\printfield{part}%
@@ -7626,7 +8125,7 @@
\global\let\cbx@incollpart\undefined% Volume fix
\setunit{\addspace}%
\bibstring{ofseries}%
- \setunit{\addspace}}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}}%
{\bibstring{in}\setunit{\addspace}}}%
{\iffieldundef{part}%
{\ifcsdef{cbx@incollpart}%
@@ -7637,13 +8136,17 @@
test {\IfBeginWith{\thefield{entrytype}}{mv}}%
and
not test {\IfBeginWith{\thefield{relatedtype}}{maintitl}}%
+ and
+ togl {cms@xrefpart}%
}%
- {\printfield[xrefpart]{part}%
+ {\DeclareFieldAlias{citetitle}{title:hook:alt}%
+ \DeclareFieldAlias{shorthand}{shorthand:hook}%
+ \printfield[xrefpart]{part}%
\clearfield{part}%
\global\let\cbx@incollpart\undefined% Volume fix
\setunit{\addspace}%
\bibstring{ofseries}%
- \setunit{\addspace}}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}}%
{\bibstring{in}\setunit{\addspace}}}}%
{\iffieldundef{part}%
{\ifcsdef{cbx@incollpart}%
@@ -7652,7 +8155,9 @@
{}%
\ifthenelse{\ifentrytype{mvbook}\OR\ifentrytype{mvcollection}\OR%
\ifentrytype{mvproceedings}\OR\ifentrytype{mvreference}}%
- {\printfield{volume}%
+ {\DeclareFieldAlias{citetitle}{title:hook:alt}%
+ \DeclareFieldAlias{shorthand}{shorthand:hook}%
+ \printfield{volume}%
\clearfield{volume}%
\global\let\cbx@incollvol\undefined% Volume fix
\printfield{part}%
@@ -7660,7 +8165,7 @@
\global\let\cbx@incollpart\undefined% Volume fix
\setunit{\addspace}%
\bibstring{ofseries}%
- \setunit{\addspace}}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}}%
{\bibstring{in}\setunit{\addspace}}}}%
\newbibmacro*{chapincoll}{%
@@ -7691,7 +8196,13 @@
{\printfield{chapter}\clearfield{chapter}%
\iffieldundef{booktitle}%
{}%
- {\addspace\bibstring{of}\setunit{\addspace}}}}%
+ {\iftoggle{cms@reprintfrom}%
+ {\DeclareFieldAlias{btnoformat}{title:hook}}%
+ {\DeclareFieldAlias{btnoformat}{title:hook:alt}}%
+ \DeclareFieldAlias{sbtnoformat}{title}%
+ \DeclareFieldAlias{booktitle}{default}%
+ \addspace\bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}}}}%
\newbibmacro*{chap+as+track}{%
\iffieldundef{chapter}%
@@ -7705,7 +8216,7 @@
{\printfield{chapter}\clearfield{chapter}%
\iffieldundef{booktitle}%
{}%
- {\addspace\bibstring{on}\setunit{\addspace}}}}%
+ {\addspace\bibstring[\cms@ofwrap]{on}\setunit{\addspace}}}}%
\newbibmacro*{caddendum}{% New macros for 16th ed. field exclusion
\ifboolexpr{%
@@ -7878,8 +8389,10 @@
{}%
\printtext[issuetitle]{%
\printfield[itnoformat]{issuetitle}%
- \setunit{\subtitlepunct}%
- \printfield[sitnoformat]{issuesubtitle}}}}
+ \iftoggle{cms@reprintfrom}% Complications due to \smartof
+ {}%
+ {\setunit{\subtitlepunct}%
+ \printfield[sitnoformat]{issuesubtitle}}}}}
\newbibmacro*{btitle+bstitle}{%
\iffieldundef{booktitle}%
@@ -8079,7 +8592,7 @@
{\bibstring{origedition}%
\setunit{\addspace}%
\printlist[edlang]{origlanguage}%
- \addcolon%
+ \addcolon\addspace%
\origfullcite{\thefield{userf}}%
\usebibmacro{endrelated}%
\newunit}%
@@ -8128,7 +8641,7 @@
{\ifthenelse{\iffieldundef{pagination}\AND%
\iffieldundef{bookpagination}\AND\iffieldundef{eid}}%
{\setunit{\postvolpunct}}%
- {\setunit{\addcolon\addspace}}}%
+ {\setunit{\journalpagespunct}}}%
{\addcomma\addspace}}%
{\ifthenelse{\iffieldundef{volume}\AND\iffieldundef{number}}% 16th ed.
{\newcunit%
@@ -8310,7 +8823,7 @@
{\printorigdate}}}%
\newbibmacro*{cjournal+ser+vol+num}{%
- \usebibmacro{journal+sub}%
+ \usebibmacro{journal+sub}{in}%
\setunit*{\addspace}%
\printlist[periodplace]{location}%
\setunit*{\addspace}%
@@ -8357,7 +8870,7 @@
\setunit{\addcomma\addspace}% need * here?
\printfield[journum]{number}}% Move eid field for 17th ed.
-\newbibmacro*{journal+sub}{%
+\newbibmacro*{journal+sub}[1]{%
\iffieldundef{journaltitle}%
{}%
{\ifboolexpr{%
@@ -8375,9 +8888,9 @@
togl {cms@bibjtabb}%
))
}%
- {\clearlist{location}\printtext[shortjournal]{%
+ {\clearlist{location}\printtext[#1shortjournal]{%
\printfield[jtsnoformat]{shortjournal}}}%
- {\printtext[journaltitle]{%
+ {\printtext[#1journaltitle]{%
\printfield[jtnoformat]{journaltitle}%
\setunit{\subtitlepunct}%
\printfield[sjtnoformat]{journalsubtitle}}}}}%
@@ -8467,7 +8980,7 @@
\usebibmacro{cmsyear}}}
\newbibmacro*{cmag+date+issue}{%
- \usebibmacro{journal+sub}%
+ \usebibmacro{journal+sub}{in}%
\setunit*{\addspace}%
\printlist[periodplace]{location}%
\newcunit\newblock
@@ -8485,7 +8998,7 @@
\usebibmacro{date+issue}}
\newbibmacro*{mag+date+issue}{%
- \usebibmacro{journal+sub}%
+ \usebibmacro{journal+sub}{in}%
\setunit*{\addspace}%
\printlist[periodplace]{location}%
\newunit\newblock
@@ -8540,6 +9053,8 @@
\newcunit\newblock
\usebibmacro{date+issue}}
+\def\cms@ofwrap#1{#1}
+
\newbibmacro*{cmtitle+mstitle+vol+part+title+stitle}{%
\iffieldundef{maintitle}%
{}%
@@ -8557,12 +9072,12 @@
\printfield{volume}%
\printfield{part}%
\setunit{\addspace}%
- \bibstring{ofseries}%
- \setunit{\addspace}%
- \printtext[maintitle]{%
- \printfield[mtnoformat]{maintitle}%
+ \bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
+ \printtext[default]{%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
- \printfield[smtnoformat]{mainsubtitle}}%
+ \printfield[title]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
\printfield{maintitleaddon}}}}
@@ -8587,12 +9102,12 @@
\printfield{volume}%
\printfield{part}%
\setunit{\addspace}%
- \bibstring{ofseries}%
- \setunit{\addspace}%
- \printtext[maintitle]{%
- \printfield[mtnoformat]{maintitle}%
+ \bibstring[\cms@ofwrap]{ofseries}%
+ \iftoggle{smartof}{}{\setunit{\addspace}}%
+ \printtext[default]{%
+ \printfield[title:hook:alt]{maintitle}%
\setunit{\subtitlepunct}%
- \printfield[smtnoformat]{mainsubtitle}}%
+ \printfield[title]{mainsubtitle}}%
\setunit{\ctitleaddonpunct}%
\printfield{maintitleaddon}}}}
@@ -8747,7 +9262,7 @@
{\iffieldundef{part}%
{\ifthenelse{\iffieldnums{pages}\AND%
\iffieldundef{bookpagination}\AND\iffieldnums{volume}}%
- {\newcunit\printfield[default]{volume}%
+ {\newcunit\printfield[shortvol]{volume}%
\postvolpunct%
\printfield{pages}}%
{\newcunit\printfield{volume}%
@@ -8764,7 +9279,7 @@
{\iffieldundef{part}%
{\ifthenelse{\iffieldnums{postnote}\AND%
\iffieldundef{pagination}\AND\iffieldnums{volume}}%
- {\newcunit\printfield[default]{volume}%
+ {\newcunit\printfield[shortvol]{volume}%
\postvolpunct%
\usebibmacro{semel:postnote}}%
{\newcunit\printfield{volume}%
@@ -8925,7 +9440,7 @@
\iffieldundef{part}%
{\ifthenelse{\iffieldnums{pages}\AND%
\iffieldundef{bookpagination}\AND\iffieldnums{volume}}%
- {\newcunit\printfield[default]{volume}%
+ {\newcunit\printfield[shortvol]{volume}%
\postvolpunct%
\printfield{pages}}%
{\newcunit\printfield{volume}%
@@ -8940,7 +9455,7 @@
\iffieldundef{part}%
{\ifthenelse{\iffieldnums{postnote}\AND%
\iffieldundef{pagination}\AND\iffieldnums{volume}}%
- {\newcunit\printfield[default]{volume}%
+ {\newcunit\printfield[shortvol]{volume}%
\postvolpunct%
\usebibmacro{semel:postnote}}%
{\newcunit\printfield{volume}%
@@ -9003,7 +9518,7 @@
\newbibmacro*{hlpunct}{%
\iftoggle{cms@headlessnote}%
- {}%
+ {\iftoggle{cms@reprintfrom}{\setunit{\addspace}}{}}%
{\newcunit\newblock}}
\newbibmacro*{journalprenote}{%
@@ -9115,6 +9630,11 @@
}
\AtEndPreamble{%
+ \iftoggle{cms@inheritshhand}%
+ {\DeclareDataInheritance{*}{*}{%
+ \inherit{shorthand}{shorthand}
+ \inherit{shorthandintro}{shorthandintro}
+ }}{}%
\iftoggle{cms@blogurl}% 17th ed. blogs w/ comments
{\DeclareDataInheritance{article}{review,suppperiodical}{%
\inherit{url}{url}%
@@ -9125,6 +9645,29 @@
{\toggletrue{cms@endnote}\enoteformat}
{}
{\blx@err@patch{'endnotes' package}}}%
+ {}%
+ \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}%
+ }}%
+ {}%
+ \ifboolexpr{% Needed for nameaddon 'first' option in notes
+ test {\ifdefvoid{\blx@idemtracker}}%
+ and
+ togl {cms@subseqnona}%
+ }%
+ {\let\blx@idemtracker\blx@idemtracker@context}%
{}}%
\DeclareDataInheritance{*}{*}{%
@@ -9276,7 +9819,7 @@
{\ifthenelse{\value{editor}>1\OR\ifandothers{editor}}%
{\bibstring{\thefield{editortype}s}}%
{\bibstring{\thefield{editortype}}}}%
- {\printtext[note]{\thefield{editortype}}}}%
+ {\printtext[capital]{\thefield{editortype}}}}%
\clearname{editor}}%
\newbibmacro*{parteditstrg}{%
@@ -9311,7 +9854,7 @@
{\ifthenelse{\value{namea}>1\OR\ifandothers{namea}}%
{\bibstring{\thefield{nameatype}s}}%
{\bibstring{\thefield{nameatype}}}}%
- {\printtext[note]{\thefield{nameatype}}}}%
+ {\printtext[capital]{\thefield{nameatype}}}}%
\clearname{namea}}%
\newbibmacro*{clearorigin}{%
@@ -9361,7 +9904,7 @@
\clearfield{titleaddon}%
\clearfield{usere}%
\clearlist{language}%
- \ifentrytype{music}%
+ \ifthenelse{\ifentrytype{music}\OR\ifentrytype{audio}}%
{\clearfield{note}\clearfield{howpublished}\clearfield{eventyear}%
\clearfield{eventmonth}}%
{}}%
@@ -9396,6 +9939,11 @@
{\newcunitpunct}%
{\newunitpunct}}}
+\newcommand*{\relateddelimshort}{%
+ \ifnumequal{\value{bbx:relatedcount}}{\value{bbx:relatedtotal}}%
+ {\addsemicolon\addspace\bibstring{and}\space}%
+ {\addsemicolon\addspace}}%
+
\newbibmacro*{related:reviewof}[1]{%
\iftoggle{cms@shortnote}%
{\entrydata*{#1}{%
@@ -9555,13 +10103,13 @@
\usebibmacro{at+every+item}%
\renewbibmacro*{name:hook}[1]{%
\ifnumequal{\value{listcount}}{1}%
- {\begingroup
- \mkrelatedstring%
- \lbx@initnamehook{#1}%
- \endgroup}
- {}}%
+ {\begingroup
+ \mkrelatedstringtext{%
+ \lbx@initnamehook{##1}}%
+ \endgroup}%
+ {}}%
\printnames[bytranslator]{translator}%
- \setunit*{\addspace\bibstring[\mkrelatedstring]{astitle}\addspace}%
+ \setunit*{\addspace\bibstring[\mkrelatedstringtext]{astitle}\addspace}%
\clearname{translator}%
\usebibmacro{cite:origfull}}}%
@@ -9595,7 +10143,9 @@
\ifthenelse{\ifentrytype{mvbook}\OR\ifentrytype{mvcollection}\OR%
\ifentrytype{mvproceedings}\OR\ifentrytype{mvreference}}%
{\iffieldundef{volumes}{}{\savefield*{volumes}{\cms@mtvolumes}}%
- \bibstring{in}\nopunct}%
+ \iftoggle{cms@reprintfrom}%
+ {}%
+ {\bibstring{in}\nopunct}}%
{\ifcsdef{cms@mtvolumes}{\restorefield{savedvolumes}{\cms@mtvolumes}}{}%
\ifthenelse{\iffieldundef{volume}\AND\iffieldundef{part}}%
{\ifthenelse{\iffieldundef{volumes}\AND\iffieldundef{savedvolumes}}%
@@ -9637,8 +10187,12 @@
\ifcsequal{cms@mtnamec}{cms@mtsecnamec}%
{\clearname{namec}}%
{}}%
- {}}%
- \ifbibliography%
+ {}\iftoggle{cms@reprintfrom}{\newcunit}{}}%
+ \ifboolexpr{%
+ test {\ifbibliography}%
+ and
+ not togl {cms@reprintfrom}%
+ }%
{\printtext[cmsdefrelhypertarget]{%
\usedriver%
{\ifnameundef{savedauthor}%
@@ -9804,102 +10358,91 @@
}%
{}%
{\midsentence% Why is this kludge necessary?
- \setunit{\addspace\bibstring[\mkrelatedstring]{bypublisher}\space}%
+ \setunit{\addspace\bibstring[\mkrelatedstringtext]{bypublisher}\space}%
\printlist{publisher}%
\setunit{\addcomma\space}%
\iflistsequal{location}{savedlocation}%
{}%
{\printlist{location}}}}}
+\newbibmacro*{related:short}[1]{% For cross-refs in bib.
+ \entrydata*{#1}{%
+ \toggletrue{cms@noidem}%
+ \togglefalse{cms@fullnote}%
+ \toggletrue{cms@shortnote}%
+ \usebibmacro{cite:short}{\thefield{entrytype}}}}%
+
\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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
\mkbibemph{#1}}
+\DeclareFieldFormat{title:hook:alt}{%
+ \iftoggle{cms@reprintmt}%
+ {\begingroup
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
+ \endgroup}%
+ {\lbx@inittitlehook{#1}}% Inside entries don't use main doc. lang.
+ \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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
- \mkbibquote{#1}}
+ \iffieldundef{issuesubtitle}%
+ {\mkbibquote{#1}}%
+ {\mkbibquote{#1\subtitlepunct\printfield{issuesubtitle}}}}
\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}}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{chapter}}%
+ \bibstring{chapter}~#1\addspace\bibstring{in}}%
+ \endgroup}%
\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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{chapter}}%
+ \bibstring{chapter}~#1}
+ \endgroup}%
\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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{track}}%
+ \bibstring{track}~#1}%
+ \endgroup}
+
+\DeclareFieldFormat{volume:hook}{%
+ \begingroup
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{volume}}%
+ \bibstring{volume}~#1}%
+ \endgroup}%
+
+\DeclareFieldFormat{parttoo:hook}{%
+ \ifnumerals{#1}%
+ {\addcomma\addspace\bibstring[\mkrelatedstringtext]{partvolume}~#1}%
+ {\addcomma\addspace\ifcapital{\MakeCapital{#1}}{#1}}}
+
+\DeclareFieldFormat{part:hook}{%
+ \begingroup
+ \ifnumerals{#1}%
+ {\mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{partvolume}}%
+ \bibstring{partvolume}~#1}}%
+ {\mkrelatedstringtext{\lbx@inittitlehook{#1}}%
+ \ifcapital{\MakeCapital{#1}}{#1}}%
+ \endgroup}
+
+\DeclareFieldFormat{shorthand:hook}{%
+ \lbx@inittitlehook{#1}%
+ #1}
\DeclareFieldFormat{sitnoformat}{#1}
\DeclareFieldFormat{sjtnoformat}{#1}
@@ -9913,15 +10456,7 @@
\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}}
+\providetoggle{cms@reprintmt}
\newbibmacro*{cms:titlehook}{% Needed for full drivers in reprintfrom
\ifthenelse{\iffieldundef{chapter}\OR\NOT\(\ifentrytype{audio}\OR%
@@ -9933,14 +10468,35 @@
{\iffieldundef{booktitle}%
{\iffieldundef{journaltitle}% Switched order for 17th ed.
{\iffieldundef{maintitle}%
- {}%
- {\DeclareFieldAlias{mtnoformat}{title:hook}%
- \DeclareFieldAlias{smtnoformat}{title}%
- \DeclareFieldAlias{maintitle}{default}}}%
+ {\ifthenelse{\iffieldequalstr{relatedtype}{maintitle}\OR%
+ \iffieldequalstr{relatedtype}{maintitlenc}}%
+ {\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}}%
+ {}}%
+ {\toggletrue{cms@reprintmt}%
+ \ifthenelse{\(\iffieldundef{volume}\AND\iffieldundef{part}\)%
+ \OR\ifentrytype{inbook}\OR\ifentrytype{incollection}\OR%
+ \ifentrytype{inproceedings}\OR\ifentrytype{letter}}%
+ {\DeclareFieldAlias{mtnoformat}{title:hook}%
+ \DeclareFieldAlias{smtnoformat}{title}%
+ \DeclareFieldAlias{maintitle}{default}}%
+ {\iffieldundef{volume}%
+ {\DeclareFieldAlias{part}{part:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}%
+ {\DeclareFieldAlias{volume}{volume:hook}%
+ \DeclareFieldAlias{part}{parttoo:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}}}}%
{\DeclareFieldAlias{jtnoformat}{title:hook}%
\DeclareFieldAlias{sjtnoformat}{title}%
\DeclareFieldAlias{journaltitle}{default}%
+ \DeclareFieldAlias{injournaltitle}{default}%
\DeclareFieldAlias{shortjournal}{series}%
+ \DeclareFieldAlias{inshortjournal}{series}%
\DeclareFieldAlias{jtsnoformat}{title:hook}}}%
{\DeclareFieldAlias{btnoformat}{title:hook}%
\DeclareFieldAlias{sbtnoformat}{title}%
@@ -9952,16 +10508,16 @@
\DeclareFieldAlias[music]{title}{default}%
\DeclareFieldAlias{title}{default}%
\DeclareFieldAlias[periodical]{shorttitle}{series}}}%
- {\iffieldundef{issuesubtitle}%
- {\DeclareFieldAlias{itnoformat}{ititle:hook}%
- \DeclareFieldAlias{issuetitle}{default}}%
- {\DeclareFieldAlias{issuetitle}{ititle:hook}}}}%
+ {\DeclareFieldAlias{itnoformat}{ititle:hook}%
+ \DeclareFieldAlias{issuetitle}{default}}}%
{\ifthenelse{\ifentrytype{audio}\OR\ifentrytype{music}\OR%
\ifentrytype{video}}%
{\iffieldundef{title}%
{\ifentrytype{music}%
- {\DeclareFieldAlias[music]{chapter}{muschapter:hook}}%
- {\DeclareFieldAlias{chapter}{avchapter:hook}}}%
+ {\DeclareFieldAlias[music]{chapter}{muschapter:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}%
+ {\DeclareFieldAlias{chapter}{avchapter:hook}%
+ \let\cms@ofwrap\mkrelatedstringtext}}%
{\DeclareFieldAlias{tnoformat}{title:hook}%
\DeclareFieldAlias{stnoformat}{citetitle}%
\DeclareFieldAlias[video]{title}{default}%
@@ -9983,10 +10539,12 @@
\usedriver
{\DeclareNameAlias{sortname}{default}\clearfield{postnote}%
\usebibmacro{clearpublin}\clearfield{shorthand}%
+ \clearfield{crossref}\clearfield{xref}%
+ \toggletrue{cms@bookcitexref}\global\toggletrue{cms@reprintfrom}%
\toggletrue{cms@fullnote}\toggletrue{cms@headlessnote}%
\toggletrue{cms@origpublished}\frenchspacing%
\usebibmacro{cms:titlehook}}%
- {cite:\thefield{entrytype}}}}
+ {cite:\thefield{entrytype}}}\global\togglefalse{cms@reprintfrom}}%
\newbibmacro*{cite:related:full}{%
\printtext[cmsdefrelhypertarget]{%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes16.bbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes16.bbx
index 383cc3cd187..e406c5847e8 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes16.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes16.bbx
@@ -2,7 +2,7 @@
% standard.bbx It provides the bibliography formatting for the Chicago
% notes + bibliography style.
-\ProvidesFile{chicago-notes16.bbx}[2020/04/20 v 3.14 biblatex
+\ProvidesFile{chicago-notes16.bbx}[2021/03/27 v 3.16 biblatex
bibliography style]
%%%% Initialize and format bibliography and los %%%%
@@ -3644,6 +3644,8 @@ bibliography style]
%%%% Related functionality from standard.bbx %%%%
+\providecommand*{\mkrelatedstringtext}[1]{{{\mainlang #1}}}
+
\newcounter{bbx:relatedcount}
\newcounter{bbx:relatedtotal}
@@ -3714,14 +3716,14 @@ bibliography style]
test {\ifbibxstring{\thefield{relatedtype}s}}%
}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedtype}s}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedtype}s}}}%
{\iffieldbibstring{relatedtype}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedtype}}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedtype}}}}%
{}}}%
{\iffieldbibstring{relatedstring}%
{\printtext[\bbx@tempb]{%
- \bibstring[\mkrelatedstring]{\thefield{relatedstring}}}}%
+ \bibstring[\mkrelatedstringtext]{\thefield{relatedstring}}}}%
{\printfield[\bbx@tempb]{relatedstring}}}%
\docsvfield{related}%
\usebibmacro{endrelatedloop}}}%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes16.cbx b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes16.cbx
index bf8060da7fe..ae7e9b1a7a8 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes16.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/chicago-notes16.cbx
@@ -3,7 +3,7 @@
% of providing footnote citations and a bibliography formatted
% according to the specifications of the Chicago Manual of Style.
-\ProvidesFile{chicago-notes16.cbx}[2020/04/20 v 3.14 biblatex citation style]
+\ProvidesFile{chicago-notes16.cbx}[2021/03/27 v 3.16 biblatex citation style]
%%%% Biblatex initialization + Chicago options + Toggles %%%%
@@ -1285,13 +1285,7 @@
\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.
+ \nopunct}%\unspace Put \nopunct and \unspace here for 0.8e.
{\usedriver
{\DeclareNameAlias{sortname}{default}\clearfield{postnote}%
\usebibmacro{clearpublin}\clearfield{shorthand}%
@@ -1444,6 +1438,8 @@
\DeclareMultiCiteCommand{\headlessparenshortcites}[\mkbibparens]%
{headlessparenshortcite}{\multicitedelim}
+\def\cms@cicpunct{}%
+
%% Textcite commands adapted from verbose.cbx %%
\DeclareCiteCommand{\cbx@textcite}
@@ -4472,7 +4468,7 @@
{\ifcapital%
{\MakeCapital{#1}}%
{#1}}%
- \addspace}%
+}%\addspace
%%%% Commands, for users and internal %%%%
@@ -5481,8 +5477,10 @@
{}%
\printtext[issuetitle]{%
\printfield[itnoformat]{issuetitle}%
- \setunit{\subtitlepunct}%
- \printfield[sitnoformat]{issuesubtitle}}}}
+ \iftoggle{cms@origpublished}% Complications due to \smartof
+ {}%
+ {\setunit{\subtitlepunct}%
+ \printfield[sitnoformat]{issuesubtitle}}}}}
\newbibmacro*{btitle+bstitle}{%
\iffieldundef{booktitle}%
@@ -6496,7 +6494,7 @@
\newbibmacro*{hlpunct}{%
\iftoggle{cms@headlessnote}%
- {}%
+ {\iftoggle{cms@origpublished}{\setunit{\addspace}}{}}%
{\newcunit\newblock}}
\newbibmacro*{journalprenote}{%
@@ -6906,13 +6904,13 @@
\usebibmacro{at+every+item}%
\renewbibmacro*{name:hook}[1]{%
\ifnumequal{\value{listcount}}{1}%
- {\begingroup
- \mkrelatedstring%
- \lbx@initnamehook{#1}%
- \endgroup}
- {}}%
+ {\begingroup
+ \mkrelatedstringtext{%
+ \lbx@initnamehook{##1}}%
+ \endgroup}%
+ {}}%
\printnames[bytranslator]{translator}%
- \setunit*{\addspace\bibstring[\mkrelatedstring]{astitle}\addspace}%
+ \setunit*{\addspace\bibstring[\mkrelatedstringtext]{astitle}\addspace}%
\clearname{translator}%
\usebibmacro{cite:origfull}}}%
@@ -6991,7 +6989,7 @@
}%
{}%
{\midsentence% Why is this kludge necessary?
- \setunit{\addspace\bibstring[\mkrelatedstring]{bypublisher}\space}%
+ \setunit{\addspace\bibstring[\mkrelatedstringtext]{bypublisher}\space}%
\printlist{publisher}%
\setunit{\addcomma\space}%
\iflistsequal{location}{savedlocation}%
@@ -7000,75 +6998,33 @@
\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}%
+ \mkrelatedstringtext{%
+ \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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{#1}}%
\endgroup
- \mkbibquote{#1}}
+ \iffieldundef{issuesubtitle}%
+ {\mkbibquote{#1}}%
+ {\mkbibquote{#1\subtitlepunct\printfield{issuesubtitle}}}}
\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}}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{chapter}}%
+ \bibstring{chapter}~#1\addspace\bibstring{in}}%
+ \endgroup}%
\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}%
+ \mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{chapter}}%
+ \bibstring{chapter}~#1}
+ \endgroup}%
\DeclareFieldFormat{sitnoformat}{#1}
\DeclareFieldFormat{sjtnoformat}{#1}
@@ -7082,15 +7038,15 @@
\DeclareFieldFormat{btnoformat}{#1}
\DeclareFieldFormat{mtnoformat}{#1}
-\providetoggle{cms@otherlang}
+% \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}}
+% \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%
@@ -7121,10 +7077,8 @@
\DeclareFieldAlias[music]{title}{default}%
\DeclareFieldAlias{title}{default}%
\DeclareFieldAlias[periodical]{shorttitle}{series}}}%
- {\iffieldundef{issuesubtitle}%
- {\DeclareFieldAlias{itnoformat}{ititle:hook}%
- \DeclareFieldAlias{issuetitle}{default}}%
- {\DeclareFieldAlias{issuetitle}{ititle:hook}}}}%
+ {\DeclareFieldAlias{itnoformat}{ititle:hook}%
+ \DeclareFieldAlias{issuetitle}{default}}}%
{\ifthenelse{\ifentrytype{audio}\OR\ifentrytype{music}\OR%
\ifentrytype{video}}%
{\iffieldundef{title}%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-american.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-american.lbx
index 3934e01c8f2..27a0cbea6cd 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-american.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-american.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-american.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-american.lbx}[2021/03/27 v 3.16 biblatex localization]
\InheritBibliographyExtras{american}
@@ -9,6 +9,8 @@
\savecommand\mkdaterangecompextra%
\savecommand\mkdaterangeterseextra%
\savecommand\mkdaterangefullextra%
+ \savecommand\cms@cicpunct%
+ \def\cms@cicpunct{\ifcitation{}{\addperiod\printunit{\space\bibsentence}}}%
\def\introductionname{Introduction}%
\def\sectionname{Section}%
\def\subsectionname{Subsection}%
@@ -125,6 +127,7 @@
\restorecommand\mkdaterangecompextra%
\restorecommand\mkdaterangeterseextra%
\restorecommand\mkdaterangefullextra%
+ \restorecommand\cms@cicpunct%
}
\DeclareBibliographyStrings{%
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-brazilian.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-brazilian.lbx
index 320935b6eb1..eaef1d770db 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-brazilian.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-brazilian.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-brazilian.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-brazilian.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Strings provided by native speaker Gustavo Barros.
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-british.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-british.lbx
index 74db7a87f79..ab14578a30b 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-british.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-british.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-british.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-british.lbx}[2021/03/27 v 3.16 biblatex localization]
\InheritBibliographyExtras{british}
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-dutch.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-dutch.lbx
index 662909b8ad3..01f30be3c0c 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-dutch.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-dutch.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-dutch.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-dutch.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Strings provided by native speaker Wouter Lancee.
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-finnish.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-finnish.lbx
index 571b232b77b..daa43138e1e 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-finnish.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-finnish.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-finnish.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-finnish.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Translated by a native speaker (Antti-Juhani Kaijanaho).
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-french.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-french.lbx
index c2a6b664921..52c03352bf2 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-french.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-french.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-french.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-french.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Some strings still missing
@@ -81,9 +81,10 @@
afterwordto = {{postface \`a}{postf\adddot\ \`a}},
forewordto = {{pr\'eface \`a}{pr\'ef\adddot\ \`a}},
introductionto = {{introduction \`a}{introd\adddot\ \`a}},
- partvolume = {{\unspace}{\unspace}},
+ partvolume = {{livre}{livre}},
by = {{par}{par}},
of = {{de}{de}},
+ ofseries = {{\smartof}{\smartof}},
on = {{sur}{sur}},
compiler = {{comp\adddot}{comp\adddot}},
compilers = {{comp\adddot}{comp\adddot}},
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-german.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-german.lbx
index 7bf991606ca..51cdb8dc664 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-german.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-german.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-german.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-german.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Translated strings and formatting decisions need review by native
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-icelandic.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-icelandic.lbx
index 0524c160d84..2dd0a86714f 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-icelandic.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-icelandic.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-icelandic.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-icelandic.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Translated by a native speaker (Baldur Kristinsson).
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-ngerman.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-ngerman.lbx
index ac93c989b98..c18325c696f 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-ngerman.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-ngerman.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-ngerman.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-ngerman.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Translated strings and formatting decisions need review by native
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-norsk.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-norsk.lbx
index 2b53432fb5d..c5b1623efad 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-norsk.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-norsk.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-norsk.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-norsk.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Translated by a native speaker (H{\aa}kon Malmedal).
@@ -421,7 +421,7 @@
verses = {{v\adddot}{v\adddot}},
number = {{nr\adddot}{nr\adddot}},
chapter = {{kap\adddot}{kap\adddot}},
- track = {{sporet}{sporet}},
+ track = {{spor}{spor}},
cfromamerican = {{fra amerikansk-engelsk av}{fra amerikansk-engelsk av}},
cfrombrazilian = {{fra brasiliansk-portugisisk av}{fra
brasiliansk-portugisisk av}},
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-norwegian.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-norwegian.lbx
index fd690c94bfe..9d4e3e4a552 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-norwegian.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-norwegian.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-norwegian.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-norwegian.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Translated by a native speaker (H{\aa}kon Malmedal).
@@ -421,7 +421,7 @@
verses = {{v\adddot}{v\adddot}},
number = {{nr\adddot}{nr\adddot}},
chapter = {{kap\adddot}{kap\adddot}},
- track = {{sporet}{sporet}},
+ track = {{spor}{spor}},
cfromamerican = {{fra amerikansk-engelsk av}{fra amerikansk-engelsk av}},
cfrombrazilian = {{fra brasiliansk-portugisisk av}{fra
brasiliansk-portugisisk av}},
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-nynorsk.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-nynorsk.lbx
index e5d451151b5..98f4181d6be 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-nynorsk.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-nynorsk.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-nynorsk.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-nynorsk.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Translated by a native speaker (H{\aa}kon Malmedal).
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-romanian.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-romanian.lbx
new file mode 100644
index 00000000000..63a213e0bf8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-romanian.lbx
@@ -0,0 +1,758 @@
+\ProvidesFile{cms-romanian.lbx}[2021/03/27 v 3.16 biblatex localization]
+
+% STATUS OF THIS FILE
+% - Strings provided by native speaker Patrick Danilevici, creator of
+% - the main romanian.lbx file in biblatex.
+
+\InheritBibliographyExtras{romanian}
+
+\DeclareBibliographyExtras{%
+ \savecommand\mkdaterangecomp%
+ \savecommand\mkdaterangeterse%
+ \savecommand\mkdaterangefull%
+ \savecommand\mkdaterangecompextra%
+ \savecommand\mkdaterangeterseextra%
+ \savecommand\mkdaterangefullextra%
+ \savecommand\cms@datelong%
+ \savecommand\postvolpunct%
+ \savecommand\journalpagespunct%
+ \savecommand\bibdaterangesep%
+ \toggletrue{cms@postposit}%
+ \def\introductionname{Introducere}%
+ \def\sectionname{Secțiune}%
+ \def\subsectionname{Subsecțiune}%
+ \def\forewordname{Prefață}%
+ \def\notesname{Note}%
+ \protected\def\mkjuridordinal{\mkbibordinal}%
+ \savefieldformat{postnote}%
+ \savefieldformat{pages}%
+ \savefieldformat{shortvol}%
+ \savefieldformat{jourvol}%
+ \savefieldformat{injournaltitle}%
+ \savefieldformat{inshortjournal}%
+ \savefieldformat{part}%
+ \savefieldformat{part:hook}%
+ \savefieldformat{parttoo:hook}%
+ \renewrobustcmd*{\bibdaterangesep}{\bibrangedash}
+ \DeclareFieldFormat{postnote}{%
+ \ifpages{#1}%
+ {\iffieldequalstr{entrysubtype}{classical}%
+ {\iftoggle{cms@comprange}%
+ {\mkcomprange{#1}}%
+ {\mknormrange{#1}}}%
+ {\iftoggle{cms@comprange}%
+ {\mkpageprefix[pagination][\mkcomprange]{#1}}%
+ {\mkpageprefix[pagination][\mknormrange]{#1}}}}%
+ {\iffieldequalstr{entrysubtype}{classical}%
+ {#1}%
+ {\mkpageprefix[pagination]{#1}}}}%
+ \DeclareFieldFormat{pages}{%
+ \ifboolexpr{%
+ togl {cms@comprange}%
+ and
+ test {\ifpages{#1}}%
+ }%
+ {\mkpageprefix[bookpagination][\mkcomprange]{#1}}%
+ {\mkpageprefix[bookpagination]{#1}}}%
+ \DeclareFieldAlias{shortvol}{volume}%
+ \DeclareFieldFormat{jourvol}{\addcomma\space\bibstring{volume}\space #1}%
+ \DeclareFieldFormat{injournaltitle}{%
+ \ifthenelse{\iffieldundef{issuetitle}\AND\iffieldundef{note}}%
+ {\bibstring{in}\space\mkbibemph{#1}\isdot}%
+ {\mkbibemph{#1}\isdot}}%
+ \DeclareFieldFormat{part}{%
+ \ifinteger{#1}
+ {\addcomma\addspace\bibstring{partvolume}~\mkcmsrompart{#1}}%
+ {\addcomma\addspace\ifcapital{\MakeCapital{#1}}{#1}}}%
+ \DeclareFieldFormat{parttoo:hook}{%
+ \ifinteger{#1}%
+ {\addcomma\addspace%
+ \bibstring[\mkrelatedstringtext]{partvolume}~\mkcmsrompart{#1}}%
+ {\addcomma\addspace\ifcapital{\MakeCapital{#1}}{#1}}}%
+ \DeclareFieldFormat{part:hook}{%
+ \begingroup
+ \ifinteger{#1}%
+ {\mkrelatedstringtext{%
+ \lbx@inittitlehook{\bibxstring{partvolume}}%
+ \bibstring{partvolume}~\mkcmsrompart{#1}}}%
+ {\mkrelatedstringtext{\lbx@inittitlehook{#1}}%
+ \ifcapital{\MakeCapital{#1}}{#1}}%
+ \endgroup}%
+ \protected\def\mkcmsrompart#1{%
+ \ifnumgreater{#1}{1}
+ {\autocap{a}~#1-a}
+ {#1}}%
+ \protected\def\cmsmkdecade#1#2{%
+ \dateeraprintpre{#2year}%
+ \bibsstring{decade}%
+ \printdelim{dateaddelim}%
+ \stripzeros{\thefield{#2year}}%
+ \cmsdateeraprint{#2endyear}\clearfield{#2endyear}%
+ \ifbool{cms:extraparens}%
+ {\usebibmacro{cmsparensextradate}%
+ \global\boolfalse{cms:extraparens}}%
+ {\usebibmacro{cmsextradate}}}%
+ \protected\def\cmsmkcentury#1{%
+ \ifnumequal{\thefield{#1year}}{1}%
+ {}{\dateeraprintpre{#1year}}%
+ \bibsstring{century}%
+ \printdelim{dateaddelim}%
+ \csuse{mkcmscentury}{#1year}%
+ \cmsdateeraprint{#1endyear}\clearfield{#1endyear}%
+ \usebibmacro{cmsparensextradate}%
+ \global\boolfalse{cms:extraparens}}%
+ \protected\def\mkcmscentury#1{%
+ \MakeUppercase{\romannumeral\numexpr\thefield{#1}/100+1}-lea}%
+ \protected\def\mkdaterangecomp{%
+ \cms@mkbibrangetrunc{long}}%
+ \protected\def\mkdaterangeterse{%
+ \cms@mkbibrangetrunc{short}}%
+ \protected\def\mkdaterangefull{%
+ \cms@mkbibrangefull}%
+ \protected\def\mkdaterangecompextra{%
+ \cms@mkyearrangeextra[]{long}}%
+ \protected\def\mkdaterangeterseextra{%
+ \cms@mkyearrangeextra[]{short}}%
+ \protected\def\mkdaterangefullextra{%
+ \cms@mkyearrangeextra[1]}%
+ \def\cms@datelong#1{\csname print#1date\endcsname}%
+ \renewcommand*{\postvolpunct}{\addcomma\space}%
+ \renewcommand*{\journalpagespunct}{\addcomma\space}}%
+
+\UndeclareBibliographyExtras{%
+ \restorecommand\mkdaterangecomp%
+ \restorecommand\mkdaterangeterse%
+ \restorecommand\mkdaterangefull%
+ \restorecommand\mkdaterangecompextra%
+ \restorecommand\mkdaterangeterseextra%
+ \restorecommand\mkdaterangefullextra%
+ \restorecommand\cms@datelong%
+ \restorecommand\postvolpunct%
+ \restorecommand\journalpagespunct%
+ \restorecommand\bibdaterangesep%
+ \togglefalse{cms@postposit}%
+ \restorefieldformat{postnote}%
+ \restorefieldformat{pages}%
+ \restorefieldformat{shortvol}%
+ \restorefieldformat{jourvol}%
+ \restorefieldformat{injournaltitle}%
+ \restorefieldformat{inshortjournal}%
+ \restorefieldformat{part}%
+ \restorefieldformat{part:hook}%
+ \restorefieldformat{parttoo:hook}%
+}
+
+\DeclareBibliographyStrings{%
+ inherit = {romanian},
+ afterwordto = {{postfață la}{postf\adddot\space la}},
+ forewordto = {{prefață la}{pref\adddot\space la}},
+ introductionto = {{introducere la}{introd\adddot\space la}},
+ partvolume = {{partea}{partea}},
+ by = {{de}{de}},
+ of = {{la}{la}},
+ on = {{în}{în}},
+ compiler = {{red\adddot}{red\adddot}},
+ compilers = {{red\adddot}{red\adddot}},
+ transcompiler = {{trad\adddot\addspace și alcăt\adddot}%
+ {trad\adddot\addspace și alcăt\adddot}},
+ transcompilers = {{trad\adddot\addspace și alcăt\adddot}%
+ {trad\adddot\addspace și alcăt\adddot}},
+ editortranscompiler = {{ed\adddot\addcomma\addspace
+ trad\adddot\addcomma\addspace și alcăt\adddot}%
+ {ed\adddot\addcomma\addspace
+ trad\adddot\addcomma\addspace și alcăt\adddot}},
+ editorcompiler = {{ed\adddot\addspace și alcăt\adddot}%
+ {ed\adddot\addspace și alcăt\adddot}},
+ editortranslator = {{ed\adddot\addspace și trad\adddot}%
+ {ed\adddot\addspace și trad\adddot}},
+ editortranscompilers = {{ed\adddot\addcomma\addspace
+ trad\adddot\addcomma\addspace și alcăt\adddot}%
+ {ed\adddot\addcomma\addspace
+ trad\adddot\addcomma\addspace și alcăt\adddot}},
+ editorcompilers = {{ed\adddot\addspace și alcăt\adddot}%
+ {ed\adddot\addspace și alcăt\adddot}},
+ editortranslators = {{ed\adddot\addspace și trad\adddot}%
+ {ed\adddot\addspace și trad\adddot}},
+ conductor = {{dirij\adddot}{dirij\adddot}},
+ conductors = {{dirij\adddot}{dirij\adddot}},
+ director = {{regiz\adddot}{regiz\adddot}},
+ directors = {{regiz\adddot}{regiz\adddot}},
+ none = {{}{}},
+ nones = {{}{}},
+ producer = {{prod\adddot}{prod\adddot}},
+ producers = {{prod\adddot}{prod\adddot}},
+ editor = {{ed\adddot}{ed\adddot}},
+ editors = {{ed\adddot}{ed\adddot}},
+ choreographer = {{coreogr\adddot}{coreogr\adddot}},
+ choreographers = {{coreogr\adddot}{coreogr\adddot}},
+ ibidem = {{ibid\adddot}{id\adddot}},% Shorter for legal
+ origpub = {{publicare originală ca\addspace}%
+ {pub\adddot\ orig\adddot\ ca\addspace}},
+ origpubin = {{prima ediție}%
+ {prima ed\adddot}},
+ origpublin = {{publicare originală în\addspace}%
+ {pub\adddot\ orig\adddot\addspace în\addspace}},
+ origpubyear = {{publicare originală în\addspace}%
+ {pub\adddot\ orig\adddot\addspace}},
+ origpubyearalt = {{prima ediție\addspace}%
+ {prima ed\adddot\addspace}},
+ origreleaseyear = {{lansare originală în\addspace}%
+ {lans\adddot\ orig\addspace}},
+ origshownyear = {{prezentare originală în\addspace}%
+ {prez\adddot\ orig\addspace}},
+ origedition ={{ediție}{ed\adddot}},
+ revisededition = {{ed\adddot\addspace reviz\adddot}%
+ {ed\adddot\addspace reviz\adddot}},
+ broadcast = {{difuzare}{difuzare}},
+ songrecorded = {{înregistrat}{înregistrat}},
+ discrecorded = {{înregistrat}{înregistrat}},
+ numbers = {{nr\adddot}{nr\adddot}},
+ nodate = {{{}f\adddot d\adddot}{{}f\adddot d\adddot}},
+ commonera = {{era noastră}{e\adddot n\adddot}}, %long
+ beforecommonera= {{înaintea erei noastre}{î\adddot e\adddot n\adddot}}, %long
+ annodomini = {{Anul Domnului}{AD}}, % long
+ beforechrist = {{înainte de Hristos}{î\adddot Hr\adddot}}, % long
+ circa = {{circa}{cca\adddot}}, % long
+ am = {{am}{a\adddot m\adddot}}, %
+ pm = {{pm}{p\adddot m\adddot}},
+ decade = {{anii}{anii}}, % very good %
+ century = {{secolul al}{sec\adddotspace al}}, %
+ pseudonym = {{pseud\adddot}{pseud\adddot}},
+ patentfiled = {{depus}{depus}},
+ patentissued = {{eliberat}{eliberat}},
+ inlang = {{în\addspace}{în\addspace}},
+ edamerican = {{engleză}{engleză}},
+ edbrazilian = {{braziliană}{braziliană}},
+ edbulgarian = {{bulgară}{bulgară}},
+ edcatalan = {{catalană}{catalană}},
+ edcroatian = {{croată}{croată}},
+ edczech = {{cehă}{cehă}},
+ eddanish = {{daneză}{daneză}},
+ eddutch = {{olandeză}{olandeză}},
+ edenglish = {{engleză}{engleză}},
+ edestonian = {{estonă}{estonă}},
+ edfinnish = {{finlandeză}{finlandeză}},
+ edfrench = {{franceză}{franceză}},
+ edgalician = {{galeză}{galeză}},
+ edgerman = {{germană}{germană}},
+ edgreek = {{greacă}{greacă}},
+ editalian = {{italiană}{italiană}},
+ edjapanese = {{japoneză}{japoneză}},
+ edlatin = {{latină}{latină}},
+ ednorwegian = {{norvegiană}{norvegiană}},
+ edportuguese = {{portugheză}{portugheză}},
+ edrussian = {{rusă}{rusă}},
+ edslovak = {{slovacă}{slovacă}},
+ edslovene = {{slovenă}{slovenă}},
+ edspanish = {{spaniolă}{spaniolă}},
+ edswedish = {{suedeză}{suedeză}},
+ edukrainian = {{ucraineană}{ucraineană}},
+ translator = {{trad\adddot}{trad\adddot}},
+ translators = {{trad\adddot}{trad\adddot}},
+ redactor = {{red\adddot}{red\adddot}},
+ redactors = {{red\adddot}{red\adddot}},
+ founder = {{fond\adddot}{fond\adddot}},
+ founders = {{fond\adddot}{fond\adddot}},
+ continuator = {{cont\adddot}{cont\adddot}}, % ?
+ continuators = {{cont\adddot}{cont\adddot}}, % ?
+ collaborator = {{colab\adddot}{colab\adddot}}, % ?
+ collaborators = {{colab\adddot}{colab\adddot}}, % ?
+ annotator = {{adnot\adddot}{adnot\adddot}},
+ annotators = {{adnot\adddot}{adnot\adddot}},
+ review = {{recenzie}{recenzie}},
+ reviewof = {{recenzie la}{recenzie la}},
+ commenton = {{comentariu la}{comentariu la}},
+ reprint = {{republicare}{repub\adddot}},
+ printed = {{publicare}{publicare}},% 17th ed.
+ selfpublished = {{publicare personală}{publ\adddot pers\adddot}},
+ shorthands = {{Abrevieri}{Abrevieri}},
+ newseries = {{s\adddot n\adddot}{s\adddot n\adddot}},
+ urlseen = {{accesat}{accesat}},
+ cbynone = {{}{}},
+ cbyauthor = {{de}{de}},
+ cbyeditor = {{ed\adddot}{ed\adddot}},
+ cbytranslator = {{trad\adddot\addspace\lbx@cfromlang}%
+ {trad\adddot\addspace\lbx@cfromlang}},
+ cbycompiler = {{alcăt\adddot}{alcăt\adddot}},
+ cbyredactor = {{red\adddot}{red\adddot}},
+ cbycommentator = {{coment\adddot}{coment\adddot}},
+ cbyannotator = {{adnot\addot}{adnot\addot}},
+ cbyfounder = {{fond\adddot}{fond\adddot}},
+ cbycontinuator = {{cont\adddot}{cont\adddot}},
+ cbycollaborator = {{în colab\adddotspace cu}%
+ {în colab\adddotspace cu}},
+ cbyconductor = {{dirij\adddot}{dirij\adddot}},
+ cbydirector = {{regiz\adddot}{regiz\adddot}},
+ cbyproducer = {{prod\adddot}{prod\adddot}},
+ cbychoreographer = {{coreogr\adddot}{coreogr\adddot}},
+ cbyeditortr = {{ed\adddot\space și
+ trad\adddot\addspace\lbx@cfromlang}%
+ {ed\adddot\space și trad\adddot\addspace\lbx@cfromlang}},
+ cbyeditorcp = {{ed\adddot\space și alcăt\adddot}%
+ {ed\adddot\space și alcăt\adddot}},
+ cbyeditorco = {{ed\adddot\space și coment\adddot}%
+ {ed\adddot\space și coment\adddot}},
+ cbyeditoran = {{ed\adddot\space și adnot\adddot}%
+ {ed\adddot\space și adnot\adddot}},
+ cbyeditorin = {{ed.,\addabbrvspace cu o introducere de}%
+ {ed.,\addabbrvspace cu o introducere de}},
+ cbyeditorfo = {{ed.,\addabbrvspace cu o prefață de}%
+ {ed.,\addabbrvspace cu o prefață de}},
+ cbyeditoraf = {{ed.,\addabbrvspace cu o postfață de}%
+ {ed.,\addabbrvspace cu o postfață de}},
+ cbyeditortrcp = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și
+ alcăt\adddot}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și alcăt\adddot}},
+ cbyeditortrco = {{ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și
+ coment\adddot}%
+ {ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și coment\adddot}},
+ cbyeditortran = {{ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și
+ adnot\adddot}%
+ {ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și adnot\adddot}},
+ cbyeditortrin = {{ed\adddot\space și trad.\addspace\lbx@fromlang,
+ cu o introducere de}%
+ {ed\adddot\space și trad.\addspace\lbx@fromlang, cu
+ o introducere de}},
+ cbyeditortrfo = {{ed\adddot\space și trad.\addspace\lbx@fromlang, cu
+ o prefață de}%
+ {ed\adddot\space și trad.\addspace\lbx@fromlang, cu
+ o prefață de}},
+ cbyeditortraf = {{ed\adddot\space și trad.\addspace\lbx@fromlang, cu
+ o postfață de}%
+ {ed\adddot\space și trad.\addspace\lbx@fromlang, cu
+ o postfață de}},
+ cbyeditorcpco = {{ed.,\addabbrvspace alcăt., și coment\adddot}%
+ {ed.,\addabbrvspace alcăt., și coment\adddot}},
+ cbyeditorcpan = {{ed.,\addabbrvspace alcăt., și adnot\adddot}%
+ {ed.,\addabbrvspace alcăt., și adnot\adddot}},
+ cbyeditorcpin = {{ed\adddot\space și alcăt., cu o introducere
+ de}%
+ {ed\adddot\space și alcăt., cu o introducere de}},
+ cbyeditorcpfo = {{ed\adddot\space și alcăt., cu o prefață de}%
+ {ed\adddot\space și alcăt., cu o prefață de}},
+ cbyeditorcpaf = {{ed\adddot\space și alcăt., cu o postfață de}%
+ {ed\adddot\space și alcăt., cu o postfață de}},
+ cbyeditorcpcoin = {{ed.,\addabbrvspace alcăt., și coment., cu o
+ introducere de}%
+ {ed.,\addabbrvspace alcăt., și coment., cu o introducere de}},
+ cbyeditorcpcofo = {{ed.,\addabbrvspace alcăt., și coment., cu o
+ prefață de}%
+ {ed.,\addabbrvspace alcăt., și coment., cu o prefață de}},
+ cbyeditorcpcoaf = {{ed.,\addabbrvspace alcăt., și coment., cu o
+ postfață de}%
+ {ed.,\addabbrvspace alcăt., și coment., cu o postfață de}},
+ cbyeditorcpanin = {{ed.,\addabbrvspace alcăt., și adnot., cu o
+ introducere de}%
+ {ed.,\addabbrvspace alcăt., și adnot., cu o introducere de}},
+ cbyeditorcpanfo = {{ed.,\addabbrvspace alcăt., și adnot., cu o
+ prefață de}%
+ {ed.,\addabbrvspace alcăt., și adnot., cu o prefață de}},
+ cbyeditorcpanaf = {{ed.,\addabbrvspace alcăt., și adnot., cu o
+ postfață de}%
+ {ed.,\addabbrvspace alcăt., și adnot., cu o postfață de}},
+ cbyeditortrcpco = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang,
+ alcăt., și coment\adddot}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și coment\adddot}},
+ cbyeditortrcpan = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang,
+ alcăt., și adnot\adddot}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și adnot\adddot}},
+ cbyeditortrcpin = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și
+ alcăt., cu o introducere de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și alcăt.,
+ cu o introducere de}},
+ cbyeditortrcpfo = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și
+ alcăt., cu o prefață de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și alcăt.,
+ cu o prefață de}},
+ cbyeditortrcpaf = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și
+ alcăt., cu o postfață de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și alcăt.,
+ cu o postfață de}},
+ cbyeditortrcpcoin = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang,
+ alcăt., și coment., cu o introducere de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și coment., cu o introducere de}},
+ cbyeditortrcpcofo = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang,
+ alcăt., și coment., cu o prefață de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și coment.,cu o prefață de}},
+ cbyeditortrcpcoaf = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang,
+ alcăt., și coment., cu o postfață de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și coment., cu o postfață de}},
+ cbyeditortrcpanin = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang,
+ alcăt., și adnot., cu o introducere de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și adnot., cu o introducere de}},
+ cbyeditortrcpanfo = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang,
+ alcăt., și adnot., cu o prefață de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și adnot., cu o prefață de}},
+ cbyeditortrcpanaf = {{ed.,\addabbrvspace trad.\addspace\lbx@fromlang,
+ alcăt., și adnot., cu o postfață de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și adnot., cu o postfață de}},
+ cbyeditorcoin = {{ed\adddot\space și coment., cu o introducere de}%
+ {ed\adddot\space și coment., cu o introducere de}},
+ cbyeditorcofo = {{ed\adddot\space și coment., cu o prefață de}%
+ {ed\adddot\space și coment., cu o prefață de}},
+ cbyeditorcoaf = {{ed\adddot\space și coment., cu o postfață de}%
+ {ed\adddot\space și coment., cu o postfață de}},
+ cbyeditoranin = {{ed\adddot\space și adnot., cu o introducere de}%
+ {ed\adddot\space și adnot., cu o introducere de}},
+ cbyeditoranfo = {{ed\adddot\space și adnot., cu o prefață de}%
+ {ed\adddot\space și adnot., cu o prefață de}},
+ cbyeditoranaf = {{ed\adddot\space și adnot., cu o postfață de}%
+ {ed\adddot\space și adnot., cu o postfață de}},
+ cbyeditortrcoin = {{ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și coment., cu
+ o introducere de}%
+ {ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și coment., cu
+ o introducere de}},
+ cbyeditortrcofo = {{ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și coment., cu
+ o prefață de}%
+ {ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și coment., cu
+ o prefață de}},
+ cbyeditortrcoaf = {{ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și coment., cu
+ o postfață de}%
+ {ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și coment., cu
+ o postfață de}},
+ cbyeditortranin = {{ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și adnot., cu
+ o introducere de}%
+ {ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și adnot., cu
+ o introducere de}},
+ cbyeditortranfo = {{ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și adnot., cu
+ o prefață de}%
+ {ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și adnot., cu
+ o prefață de}},
+ cbyeditortranaf = {{ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și adnot., cu
+ o postfață de}%
+ {ed.,\addabbrvspace
+ trad\adddot\addspace\lbx@fromlang\finalandcomma\space și adnot., cu
+ o postfață de}},
+ cbytranslatorcp = {{trad\adddot\addspace\lbx@fromlang\ și alcăt\adddot}%
+ {trad\adddot\addspace\lbx@fromlang\ și alcăt\adddot}},
+ cbytranslatorco = {{trad\adddot\addspace\lbx@fromlang\ și coment\adddot}%
+ {trad\adddot\addspace\lbx@fromlang\ și coment\adddot}},
+ cbytranslatoran = {{trad\adddot\addspace\lbx@fromlang\ și adnot\adddot}%
+ {trad\adddot\addspace\lbx@fromlang\ și adnot\adddot}},
+ cbytranslatorin = {{trad\adddot\addspace\lbx@fromlang, cu o
+ introducere de}%
+ {trad\adddot\addspace\lbx@fromlang, cu o introducere de}},
+ cbytranslatorfo = {{trad\adddot\addspace\lbx@fromlang, cu o
+ prefață de}%
+ {trad\adddot\addspace\lbx@fromlang, cu o prefață de}},
+ cbytranslatoraf = {{trad\adddot\addspace\lbx@fromlang, cu o
+ postfață de}%
+ {trad\adddot\addspace\lbx@fromlang, cu o postfață de}},
+ cbytranslatorcoin = {{trad\adddot\addspace\lbx@fromlang\ și coment.,
+ cu o introducere de}%
+ {trad\adddot\addspace\lbx@fromlang\ și coment., cu o introducere de}},
+ cbytranslatorcofo = {{trad\adddot\addspace\lbx@fromlang\ și coment.,
+ cu o prefață de}%
+ {trad\adddot\addspace\lbx@fromlang\ și coment., cu o prefață de}},
+ cbytranslatorcoaf = {{trad\adddot\addspace\lbx@fromlang\ și coment.,
+ cu o postfață de}%
+ {trad\adddot\addspace\lbx@fromlang\ și coment., cu o postfață de}},
+ cbytranslatoranin = {{trad\adddot\addspace\lbx@fromlang\ și adnot.,
+ cu o introducere de}%
+ {trad\adddot\addspace\lbx@fromlang\ și adnot., cu o introducere de}},
+ cbytranslatoranfo = {{trad\adddot\addspace\lbx@fromlang\ și adnot.,
+ cu o prefață de}%
+ {trad\adddot\addspace\lbx@fromlang\ și adnot., cu o prefață de}},
+ cbytranslatoranaf = {{trad\adddot\addspace\lbx@fromlang\ și adnot.,
+ cu o postfață de}%
+ {trad\adddot\addspace\lbx@fromlang\ și adnot., cu o postfață de}},
+ cbytranslatorcpco = {{trad\adddot\addspace\lbx@fromlang, alcăt., și
+ coment\adddot}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și coment\adddot}},
+ cbytranslatorcpan = {{trad\adddot\addspace\lbx@fromlang, alcăt., și
+ adnot\adddot}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și adnot\adddot}},
+ cbytranslatorcpin = {{trad\adddot\addspace\lbx@fromlang\ și alcăt.,
+ cu o introducere de}%
+ {trad\adddot\addspace\lbx@fromlang\ și alcăt., cu o introducere de}},
+ cbytranslatorcpfo = {{trad\adddot\addspace\lbx@fromlang\ și alcăt.,
+ cu o prefață de}%
+ {trad\adddot\addspace\lbx@fromlang\ și alcăt., cu o prefață de}},
+ cbytranslatorcpaf = {{trad\adddot\addspace\lbx@fromlang\ și alcăt.,
+ cu o postfață de}%
+ {trad\adddot\addspace\lbx@fromlang\ și alcăt., cu o postfață de}},
+ cbytranslatorcpcoin = {{trad\adddot\addspace\lbx@fromlang, alcăt., și
+ coment., cu o introducere de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și coment.,
+ cu o introducere de}},
+ cbytranslatorcpcofo = {{trad\adddot\addspace\lbx@fromlang, alcăt., și
+ coment., cu o prefață de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și coment.,
+ cu o prefață de}},
+ cbytranslatorcpcoaf = {{trad\adddot\addspace\lbx@fromlang, alcăt., și
+ coment., cu o postfață de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și coment.,
+ cu o postfață de}},
+ cbytranslatorcpanin = {{trad\adddot\addspace\lbx@fromlang, alcăt., și
+ adnot., cu o introducere de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și adnot.,
+ cu o introducere de}},
+ cbytranslatorcpanfo = {{trad\adddot\addspace\lbx@fromlang, alcăt., și
+ adnot., cu o prefață de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și adnot.,
+ cu o prefață de}},
+ cbytranslatorcpanaf = {{trad\adddot\addspace\lbx@fromlang, alcăt., și
+ adnot., cu o postfață de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și adnot.,
+ cu o postfață de}},
+ cbycompilerco = {{alcăt\adddot\space și coment\adddot}%
+ {alcăt\adddot\space și coment\adddot}},
+ cbycompileran = {{alcăt\adddot\space și adnot\adddot}%
+ {alcăt\adddot\space și adnot\adddot}},
+ cbycompilerin = {{alcăt.,\addabbrvspace cu o introducere de}%
+ {alcăt.,\addabbrvspace cu o introducere de}},
+ cbycompilerfo = {{alcăt.,\addabbrvspace cu o prefață de}%
+ {alcăt.,\addabbrvspace cu o prefață de}},
+ cbycompileraf = {{alcăt.,\addabbrvspace cu o postfață de}%
+ {alcăt.,\addabbrvspace cu o postfață de}},
+ cbycompilercoin = {{alcăt\adddot\space și coment., cu o
+ introducere de}%
+ {alcăt\adddot\space și coment., cu o introducere de}},
+ cbycompilercofo = {{alcăt\adddot\space și coment., cu o prefață de}%
+ {alcăt\adddot\space și coment., cu o prefață de}},
+ cbycompilercoaf = {{alcăt\adddot\space și coment., cu o postfață de}%
+ {alcăt\adddot\space și coment., cu o postfață de}},
+ cbycompileranin = {{alcăt\adddot\space și adnot., cu o
+ introducere de}%
+ {alcăt\adddot\space și adnot., cu o introducere de}},
+ cbycompileranfo = {{alcăt\adddot\space și adnot., cu o prefață de}%
+ {alcăt\adddot\space și adnot., cu o prefață de}},
+ cbycompileranaf = {{alcăt\adddot\space și adnot., cu o postfață de}%
+ {alcăt\adddot\space și adnot., cu o postfață de}},
+ volume = {{vol\adddot}{vol\adddot}},
+ volumes = {{vol\adddot}{vol\adddot}},
+ jourvol = {{vol\adddot}{vol\adddot}},
+ jourser = {{ser\adddot}{ser\adddot}},
+ oldseries = {{s\adddot a\adddot}{s\adddot a\adddot}},
+ edition = {{ed\adddot}{ed\adddot}},
+ version = {{versiune}{v\adddot}},
+ page = {{p\adddot}{p\adddot}},
+ pages = {{pp\adddot}{pp\adddot}},
+ column = {{col\adddot}{col\adddot}},
+ columns = {{col\adddot}{col\adddot}},
+ line = {{linie}{linie}},
+ lines = {{linii}{linii}},
+ paragraph = {{\P}{\P}},
+ paragraphs = {{\P\P}{\P\P}},
+ section = {{\S}{\S}},
+ sections = {{\S\S}{\S\S}},
+ subsection = {{\S}{\S}},
+ subsections = {{\S\S}{\S\S}},
+ preface = {{prefață}{pref\adddot}},
+ note = {{notă}{n\adddot}},
+ canadasection = {{s\adddot}{s\adddot}},% For legal citations
+ canadasections = {{s\adddot}{s\adddot}},% ditto
+ supranote = {{\mkbibemph{supra}\addspace notă\addnbspace}% ditto
+ {\mkbibemph{supra}\addspace n\adddotspace}},
+ hereinafter = {{în continuare}{în continuare}},
+ subverbo = {{s\adddot v\adddot}{s\adddot v\adddot}},
+ subverbis = {{s\adddot vv\adddot}{s\adddot vv\adddot}},
+ verse = {{v\adddot}{v\adddot}},
+ verses = {{v\adddot}{v\adddot}},
+ number = {{nr\adddot}{nr\adddot}},
+ chapter = {{cap\adddot}{cap\adddot}},%
+ part = {{parte}{part\adddot}},% for legal citations
+ track = {{pista}{pista}},
+ mathesis = {{teză de dizerație}{teză de dizerație}},
+ phdthesis = {{teză de doct\adddot}{teză de doct\adddot}},
+ techreport = {{raport tehnic}{raport tehnic}},
+ cfromamerican = {{din engleză de}{din engleză de}},
+ cfrombrazilian = {{din braziliană de}{din braziliană
+ de}},
+ cfrombulgarian = {{din bulgară de}{din bulgară de}},
+ cfromcatalan = {{din catalană de}{din catalană de}},
+ cfromcroatian = {{din croată de}{din croată de}},
+ cfromczech = {{din cehă de}{din cehă de}},
+ cfromdanish = {{din daneză de}{din daneză de}},
+ cfromdutch = {{din olandeză de}{din olandeză de}},
+ cfromenglish = {{din engleză de}{din engleză de}},
+ cfromestonian = {{din estonă de}{din estonă de}},
+ cfromfinnish = {{din finlandeză de}{din finlandeză de}},
+ cfromfrench = {{din franceză de}{din franceză de}},
+ cfromgalician = {{din galeză de}{din galeză de}},
+ cfromgerman = {{din germană de}{din germană de}},
+ cfromgreek = {{din greacă de}{din greacă de}},
+ cfromitalian = {{din italiană de}{din italiană de}},
+ cfromjapanese = {{din japoneză de}{din japoneză de}},
+ cfromlatin = {{din latină de}{din latină de}},
+ cfromnorwegian = {{din norvegiană de}{din norvegiană
+ de}},
+ cfrompolish = {{din poloneză de}{din poloneză de}},
+ cfromportuguese = {{din portugheză de}{din portugheză
+ de}},
+ cfromrussian = {{din rusă de}{din rusă de}},
+ cfromslovak = {{din slovacă de}{din slovacă de}},
+ cfromslovene = {{din slovenă de}{din slovenă de}},
+ cfromspanish = {{din spaniolă de}{din spaniolă de}},
+ cfromswedish = {{din suedeză de}{din suedeză de}},
+ cfromukrainian = {{din ucraineană de}{din ucraineană de}},
+ bynone = {{}{}},
+ bycompiler = {{alcătuire de}{alcăt\adddot}},
+ byconductor = {{dirijat de}{dirij\adddot}},
+ bydirector = {{regizat de}{regiz\adddot}},
+ byproducer = {{produs de}{prod\adddot}},
+ bychoreographer = {{coreografie de}{coreogr\adddot}},
+ byeditorcp = {{editare și alcătuire de}{ed\adddot\space și alcăt\adddot}},
+ byeditortrcp = {{editare, traducere \lbx@fromlang, și alcătuire de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și alcăt\adddot}},
+ byeditortrcpco = {{editare, traducere \lbx@fromlang, alcătuire, și
+ comentarii de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și coment\adddot}},
+ byeditortrcpan = {{editare, traducere \lbx@fromlang, alcătuire, și
+ adnotări de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și adnot\adddot}},
+ byeditortrcpin = {{editare, traducere \lbx@fromlang, și alcătuire, cu
+ o introducere, de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și alcăt\adddot,
+ cu o introducere, de}},
+ byeditortrcpfo = {{editare, traducere \lbx@fromlang, și alcătuire, cu o
+ prefață, de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și alcăt\adddot,
+ cu o prefață, de}},
+ byeditortrcpaf = {{editare, traducere \lbx@fromlang, și alcătuire, cu
+ o postfață, de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, și alcăt\adddot,
+ cu o postfață, de}},
+ byeditortrcpcoin = {{editare, traducere \lbx@fromlang, alcătuire, și
+ comentarii, cu o introducere, de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și coment\adddot, cu o introducere, de}},
+ byeditortrcpcofo = {{editare, traducere \lbx@fromlang, alcătuire, și
+ comentarii, cu o prefață, de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și coment\adddot, cu o prefață, de}},
+ byeditortrcpcoaf = {{editare, traducere \lbx@fromlang, alcătuire, și
+ comentarii, cu o postfață, de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și coment\adddot, cu o postfață, de}},
+ byeditortrcpanin = {{editare, traducere \lbx@fromlang, alcătuire, și
+ adnotări, cu o introducere, de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și adnot\adddot, cu o introducere, de}},
+ byeditortrcpanfo = {{editare, traducere \lbx@fromlang, alcătuire, și
+ adnotări, cu o prefață, de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și adnot\adddot, cu o prefață, de}},
+ byeditortrcpanaf = {{editare, traducere \lbx@fromlang, alcătuire, și
+ adnotări, cu o postfață, de}%
+ {ed.,\addabbrvspace trad.\addspace\lbx@fromlang, alcăt.,
+ și adnot\adddot, cu o postfață, de}},
+ byeditorcpco = {{editare, alcătuire, și comentarii de}%
+ {ed.,\addabbrvspace alcăt., și coment\adddot}},
+ byeditorcpan = {{editare, alcătuire, și adnotări de}%
+ {ed.,\addabbrvspace alcăt., și adnot\adddot}},
+ byeditorcpin = {{editare și alcătuire, cu o introducere, de}%
+ {ed\adddot\space și alcăt., cu o introducere, de}},
+ byeditorcpfo = {{editare și alcătuire, cu o prefață, de}%
+ {ed\adddot\space și alcăt., cu o prefață, de}},
+ byeditorcpaf = {{editare și alcătuire, cu o postfață, de}%
+ {ed\adddot\space și alcăt., cu o postfață, de}},
+ byeditorcpcoin = {{editare, alcătuire, și comentarii, cu o
+ introducere, de}%
+ {ed.,\addabbrvspace alcăt., și coment., cu o introducere, de}},
+ byeditorcpcofo = {{editare, alcătuire, și comentarii, cu o prefață,
+ de}%
+ {ed.,\addabbrvspace alcăt., și coment., cu o prefață, de}},
+ byeditorcpcoaf = {{editare, alcătuire, și comentarii, cu o
+ postfață, de}%
+ {ed.,\addabbrvspace alcăt., și coment., cu o postfață, de}},
+ byeditorcpanin = {{editare, alcătuire, și adnotări, cu o
+ introducere, de}%
+ {ed.,\addabbrvspace alcăt., și adnot., cu o introducere, de}},
+ byeditorcpanfo = {{editare, alcătuire, și adnotări, cu o prefață,
+ de}%
+ {ed.,\addabbrvspace alcăt., și adnot., cu o prefață, de}},
+ byeditorcpanaf = {{editare, alcătuire, și adnotări, cu o
+ postfață, de}%
+ {ed.,\addabbrvspace alcăt., și adnot., cu o postfață, de}},
+ bytranslatorcp = {{traducere \lbx@fromlang\ și alcătuire de}%
+ {trad\adddot\addspace\lbx@fromlang\ și alcăt\adddot}},
+ bytranslatorcpco = {{traducere \lbx@fromlang, alcătuire, și
+ comentarii de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și coment\adddot}},
+ bytranslatorcpan = {{traducere \lbx@fromlang, alcătuire, și
+ adnotări de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și adnot\adddot}},
+ bytranslatorcpin = {{traducere \lbx@fromlang\ și alcătuire, cu o
+ introducere, de}%
+ {trad\adddot\addspace\lbx@fromlang\ și alcăt., cu o introducere, de}},
+ bytranslatorcpfo = {{traducere \lbx@fromlang\ și alcătuire, cu o
+ prefață, de}%
+ {trad\adddot\addspace\lbx@fromlang\ și alcăt., cu o prefață, de}},
+ bytranslatorcpaf = {{traducere \lbx@fromlang\ și alcătuire, cu o
+ postfață, de}%
+ {trad\adddot\addspace\lbx@fromlang\ și alcăt., cu o postfață, de}},
+ bytranslatorcpcoin = {{traducere \lbx@fromlang, alcătuire, și comentarii,
+ cu o introducere, de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și coment., cu o
+ introducere, de}},
+ bytranslatorcpcofo = {{traducere \lbx@fromlang, alcătuire, și comentarii,
+ cu o prefață, de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și coment.,
+ cu o prefață, de}},
+ bytranslatorcpcoaf = {{traducere \lbx@fromlang, alcătuire, și comentarii,
+ cu o postfață, de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și coment., cu o
+ postfață, de}},
+ bytranslatorcpanin = {{traducere \lbx@fromlang, alcătuire, și adnotări,
+ cu o introducere, de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și adnot., cu o
+ introducere, de}},
+ bytranslatorcpanfo = {{traducere \lbx@fromlang, alcătuire, și adnotări,
+ cu o prefață, de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și adnot.,
+ cu o prefață, de}},
+ bytranslatorcpanaf = {{traducere \lbx@fromlang, alcătuire, și adnotări,
+ cu o postfață, de}%
+ {trad\adddot\addspace\lbx@fromlang, alcăt., și adnot.,
+ cu o postfață, de}},
+ bycompilerco = {{alcătuire și comentarii de}%
+ {alcăt\adddot\space și coment\adddot}},
+ bycompileran = {{alcătuire și adnotări de}%
+ {alcăt\adddot\space și adnot\adddot}},
+ bycompilerin = {{alcătuire, cu o introducere, de}%
+ {alcăt\adddot, cu o introducere, de}},
+ bycompilerfo = {{alcătuire, cu o prefață, de}%
+ {alcăt\adddot, cu o prefață, de}},
+ bycompileraf = {{alcătuire, cu o postfață, de}%
+ {alcăt\adddot, cu o postfață, de}},
+ bycompilercoin = {{alcătuire și comentarii, cu o introducere, de}%
+ {alcăt\adddot\space și coment\adddot, cu o introducere, de}},
+ bycompilercofo = {{alcătuire și comentarii, cu o prefață, de}%
+ {alcăt\adddot\space și coment\adddot, cu o prefață, de}},
+ bycompilercoaf = {{alcătuire și comentarii, with an afterword, de}%
+ {alcăt\adddot\space și coment\adddot, cu o postfață, de}},
+ bycompileranin = {{alcătuire și adnotări, cu o introducere, de}%
+ {alcăt\adddot\space și adnot\adddot, cu o introducere, de}},
+ bycompileranfo = {{alcătuire și adnotări, cu o prefață, de}%
+ {alcăt\adddot\space și adnot\adddot, cu o prefață, de}},
+ bycompileranaf = {{alcătuire și adnotări, cu o postfață, de}%
+ {alcăt\adddot\space şi adnot\adddot, cu o postfață, de}},
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-swedish.lbx b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-swedish.lbx
index 87c3d962687..7b7dde6e1d1 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cms-swedish.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cms-swedish.lbx
@@ -1,4 +1,4 @@
-\ProvidesFile{cms-swedish.lbx}[2020/04/20 v 3.14 biblatex localization]
+\ProvidesFile{cms-swedish.lbx}[2021/03/27 v 3.16 biblatex localization]
% STATUS OF THIS FILE
% - Translated by a native speaker (Stefan Bj\"{o}rk).
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cmsdocs.sty b/Master/texmf-dist/tex/latex/biblatex-chicago/cmsdocs.sty
index 08cb5f61db7..317fcb1c393 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cmsdocs.sty
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cmsdocs.sty
@@ -374,7 +374,7 @@
\hyperlink{\getrefbykeydefault{#1}{anchor}{}}%
{\texttt{#1}}}
-\DeclareFieldFormat{annotation}{\par\nobreak \vskip \bibitemsep%
+\DeclareFieldFormat{annotation}{%\addperiod\par\nobreak \vskip \bibitemsep%
\hyperlink{\getrefbykeydefault{\cmsdoc@entrykey}{anchor}{}}%
{\small{\textbf{[\cmsdocref@entry]\addspace}}}\small#1}
@@ -382,7 +382,7 @@
%%% biblatex-chicago.pdf.
\newrobustcmd*{\cmssecref}[2][]{\marginpar{\href{\@baseurl%
- \getrefbykeydefault{#2}{anchor}{}}{\small §\,\getrefnumber{#2}}%
+ \getrefbykeydefault{#2}{anchor}{}}{\small \S\,\getrefnumber{#2}}%
\ifblank{#1}{}{\scriptsize,\, s.v.\\[1pt]\enquote{#1}}}}
\newrobustcmd*{\cmspagref}[1]{\marginpar{\href{\@baseurl%
page.\getpagerefnumber{#1}}{p.~\getpagerefnumber{#1}}}}
diff --git a/Master/texmf-dist/tex/latex/biblatex-chicago/cmsendnotes.sty b/Master/texmf-dist/tex/latex/biblatex-chicago/cmsendnotes.sty
index 5f6d430831b..84425e11dd6 100644
--- a/Master/texmf-dist/tex/latex/biblatex-chicago/cmsendnotes.sty
+++ b/Master/texmf-dist/tex/latex/biblatex-chicago/cmsendnotes.sty
@@ -1,6 +1,6 @@
% Copyright (c) 2003 John Lavagnino
% 2003 Ulrich Dirr
-% 2020 David Fussner
+% 2020-2021 David Fussner
%
% This package is currently maintained by David Fussner.
%
@@ -28,7 +28,7 @@
% Please see biblatex-chicago.pdf for details of how to use this
% package.
-\ProvidesPackage{cmsendnotes}[2020/04/20 v 3.14 biblatex auxiliary package]
+\ProvidesPackage{cmsendnotes}[2021/03/27 v 3.16 biblatex auxiliary package]
\RequirePackage{kvoptions}
\RequirePackage{endnotes}