summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/chicago-dates-common.cbx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/chicago-dates-common.cbx')
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/chicago-dates-common.cbx79
1 files changed, 78 insertions, 1 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/chicago-dates-common.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/chicago-dates-common.cbx
index 7cfe99f699..b1320bf695 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/chicago-dates-common.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-chicago/latex/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}[2022/11/17 v 3.18b biblatex
+\ProvidesFile{chicago-dates-common.cbx}[2024/04/15 v 3.20 biblatex
citation style]
%%%% Biblatex initialization + Chicago options + Toggles %%%%
@@ -1034,6 +1034,43 @@ citation style]
\namepart{given}
}
+ %% Biblatex version 3.20 added this declaration to its name-parts
+ %% apparatus, and you need one for each new style you add when using
+ %% that version, or else documents won't compile. I include them
+ %% here inside the \ifdef test because earlier versions of biblatex
+ %% don't define the command.
+
+ \ifdef{\DeclareNamehashTemplate}{%
+ \DeclareNamehashTemplate[western]{
+ \namepart[hashscope=full]{family}
+ \namepart[hashscope=full]{given}
+ \namepart[hashscope=full]{prefix}
+ \namepart[hashscope=full]{suffix}
+ }%
+ \cms@template@wrapper{\DeclareNamehashTemplate}[russian]{
+ \namepart[hashscope=full]{prefix}
+ \namepart[hashscope=full]{family}
+ \namepart[hashscope=full]{suffix}
+ \namepart[hashscope=full]{given}
+ \namepart[hashscope=full]{patronymic}
+ }%
+ \cms@template@wrapper{\DeclareNamehashTemplate}[ethiopian]{
+ \namepart[hashscope=full]{prefix}
+ \namepart[hashscope=full]{family}
+ \namepart[hashscope=full]{suffix}
+ \namepart[hashscope=full]{given}
+ \namepart[hashscope=full]{patronymic}
+ \namepart[hashscope=full]{papponymic}
+ }%
+ \cms@template@wrapper{\DeclareNamehashTemplate}[cjk]{
+ \namepart[hashscope=full]{prefix}
+ \namepart[hashscope=full]{family}
+ \namepart[hashscope=full]{suffix}
+ \namepart[hashscope=full]{given}
+ \namepart[hashscope=full]{cjk}
+ }%
+ }{}%
+
%% These bibmacros print the names when the standard biblatex
%% equivalents are insufficient. You only need to provide a new one
%% for a new style if standard biblatex doesn't provide one that is
@@ -2068,6 +2105,46 @@ citation style]
{}%
{\usebibmacro{postnote}}
+\DeclareCiteCommand{\citetitle}
+ {\boolfalse{citetracker}%
+ \boolfalse{pagetracker}%
+ \usebibmacro{prenote}}
+ {\ifciteindex
+ {\indexfield{indextitle}}
+ {}%
+ \ifthenelse{\ifentrytype{article}\OR\ifentrytype{review}\OR
+ \ifentrytype{suppperiodical}}%
+ {\iffieldundef{shorttitle}%
+ {\iffieldundef{title}%
+ {\iffieldundef{shortjournal}%
+ {\iffieldundef{journaltitle}
+ {}%
+ {\printtext[cmsyearhyper]{\printfield{journaltitle}}}}%
+ {\printtext[cmsyearhyper]{\printfield{shortjournal}}}}%
+ {\printtext[cmsyearhyper]{\printfield{title}}}}%
+ {\printtext[cmsyearhyper]{\printfield[title]{shorttitle}}}}%
+ {\printtext[cmsyearhyper]{\printfield[citetitle]{labeltitle}}}}
+ {\multicitedelim}
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand*{\citetitle}
+ {\boolfalse{citetracker}%
+ \boolfalse{pagetracker}%
+ \usebibmacro{prenote}}
+ {\ifciteindex
+ {\indexfield{indextitle}}
+ {}%
+ \ifthenelse{\ifentrytype{article}\OR\ifentrytype{review}\OR
+ \ifentrytype{suppperiodical}}%
+ {\iffieldundef{title}%
+ {\iffieldundef{journaltitle}
+ {}%
+ {\printtext[cmsyearhyper]{\printfield{journaltitle}}}}%
+ {\printtext[cmsyearhyper]{\printfield{title}}}}%
+ {\printtext[cmsyearhyper]{\printfield{title}}}}%
+ {\multicitedelim}
+ {\usebibmacro{postnote}}
+
\DeclareCiteCommand{\atcite}
{\usebibmacro{cite:init}%
\usebibmacro{prenote}}