summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex')
-rw-r--r--Master/texmf-dist/tex/latex/biblatex/biblatex.sty200
1 files changed, 137 insertions, 63 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex/biblatex.sty b/Master/texmf-dist/tex/latex/biblatex/biblatex.sty
index 9fce90b22f1..8b33c5d0217 100644
--- a/Master/texmf-dist/tex/latex/biblatex/biblatex.sty
+++ b/Master/texmf-dist/tex/latex/biblatex/biblatex.sty
@@ -12,8 +12,8 @@
% particular purpose.
% Set up the version strings here
-\def\abx@date{2022/07/02}
-\def\abx@version{3.18a}
+\def\abx@date{2022/07/12}
+\def\abx@version{3.18b}
\def\abx@bbxid{\abx@date\space v\abx@version\space biblatex bibliography style (PK/MW)}
\def\abx@cbxid{\abx@date\space v\abx@version\space biblatex citation style (PK/MW)}
\def\abx@lbxid{\abx@date\space v\abx@version\space biblatex localization (PK/MW)}
@@ -5052,73 +5052,147 @@
\ifbibstring \ifbibxstring \iffieldbibstring
\iffieldplusstringbibstring}
-\let\blx@hook@uc\relax
-\let\blx@hook@lc\relax
-
-\iffalse
-% disable this as emergency "fix"
-% for LaTeX 2022-06-01-PL4
-\AtEndPreamble{%
- \toggletrue{blx@tempa}%
- \toggletrue{blx@tempb}%
- \expandafter\patchcmd\csname MakeUppercase \endcsname
- {\protected@edef}
- {\blx@hook@uc\protected@edef}
- {\togglefalse{blx@tempa}}
- {}%
- \expandafter\patchcmd\csname MakeLowercase \endcsname
- {\protected@edef}
- {\blx@hook@lc\protected@edef}
- {\togglefalse{blx@tempb}}
- {}%
- \@ifpackageloaded{textcase}
- {\expandafter\patchcmd\csname MakeUppercase \endcsname
- {\def\i}
- {\blx@hook@uc\def\i}
+% \DeclareCaseChangeEquivalent is available in
+% LaTeX 2022-06-01-PL5
+% the older code works-ish for LaTeX before 2022-06-01
+% it errors with 2022-06-01-PL4
+% but we'll not guard against this specific PL
+\ifundef\DeclareCaseChangeEquivalent
+ {\let\blx@hook@uc\relax
+ \let\blx@hook@lc\relax
+ %
+ \AtEndPreamble{%
+ \toggletrue{blx@tempa}%
+ \toggletrue{blx@tempb}%
+ \expandafter\patchcmd\csname MakeUppercase \endcsname
+ {\protected@edef}
+ {\blx@hook@uc\protected@edef}
{\togglefalse{blx@tempa}}
{}%
\expandafter\patchcmd\csname MakeLowercase \endcsname
- {\@uclcnotmath{}}
- {\@uclcnotmath{\blx@hook@lc}}
+ {\protected@edef}
+ {\blx@hook@lc\protected@edef}
{\togglefalse{blx@tempb}}
{}%
- \expandafter\patchcmd\csname MakeTextUppercase \endcsname
- {\def\i}
- {\blx@hook@uc\def\i}
- {}
+ \@ifpackageloaded{textcase}
+ {\expandafter\patchcmd\csname MakeUppercase \endcsname
+ {\def\i}
+ {\blx@hook@uc\def\i}
+ {\togglefalse{blx@tempa}}
+ {}%
+ \expandafter\patchcmd\csname MakeLowercase \endcsname
+ {\@uclcnotmath{}}
+ {\@uclcnotmath{\blx@hook@lc}}
+ {\togglefalse{blx@tempb}}
+ {}%
+ \expandafter\patchcmd\csname MakeTextUppercase \endcsname
+ {\def\i}
+ {\blx@hook@uc\def\i}
+ {}
+ {}%
+ \expandafter\patchcmd\csname MakeTextLowercase \endcsname
+ {\@uclcnotmath{}}
+ {\@uclcnotmath{\blx@hook@lc}}
+ {}
+ {}}
{}%
- \expandafter\patchcmd\csname MakeTextLowercase \endcsname
- {\@uclcnotmath{}}
- {\@uclcnotmath{\blx@hook@lc}}
- {}
- {}}
- {}%
- \iftoggle{blx@tempa}{\blx@err@patch{\string\MakeUppercase}}{}%
- \iftoggle{blx@tempb}{\blx@err@patch{\string\MakeLowercase}}{}%
-}
-\fi
-
-\appto\blx@blxinit{%
- \def\blx@hook@uc{%
- \def\bibstring{\blx@imc@bibucstring}%
- \def\biblstring{\blx@imc@bibuclstring}%
- \def\bibsstring{\blx@imc@bibucsstring}%
- \def\biblcstring{\blx@imc@bibucstring}%
- \def\biblclstring{\blx@imc@bibuclstring}%
- \def\biblcsstring{\blx@imc@bibucsstring}%
- \def\bibcpstring{\blx@imc@bibucstring}%
- \def\bibcplstring{\blx@imc@bibuclstring}%
- \def\bibcpsstring{\blx@imc@bibucsstring}}%
- \def\blx@hook@lc{%
- \def\bibstring{\blx@imc@biblcstring}%
- \def\biblstring{\blx@imc@biblclstring}%
- \def\bibsstring{\blx@imc@biblcsstring}%
- \def\bibucstring{\blx@imc@biblcstring}%
- \def\bibuclstring{\blx@imc@biblclstring}%
- \def\bibucsstring{\blx@imc@biblcsstring}%
- \def\bibcpstring{\blx@imc@biblcstring}%
- \def\bibcplstring{\blx@imc@biblclstring}%
- \def\bibcpsstring{\blx@imc@biblcsstring}}}
+ \iftoggle{blx@tempa}{\blx@err@patch{\string\MakeUppercase}}{}%
+ \iftoggle{blx@tempb}{\blx@err@patch{\string\MakeLowercase}}{}%
+ }
+ %
+ \appto\blx@blxinit{%
+ \def\blx@hook@uc{%
+ \def\bibstring{\blx@imc@bibucstring}%
+ \def\biblstring{\blx@imc@bibuclstring}%
+ \def\bibsstring{\blx@imc@bibucsstring}%
+ \def\biblcstring{\blx@imc@bibucstring}%
+ \def\biblclstring{\blx@imc@bibuclstring}%
+ \def\biblcsstring{\blx@imc@bibucsstring}%
+ \def\bibcpstring{\blx@imc@bibucstring}%
+ \def\bibcplstring{\blx@imc@bibuclstring}%
+ \def\bibcpsstring{\blx@imc@bibucsstring}}%
+ \def\blx@hook@lc{%
+ \def\bibstring{\blx@imc@biblcstring}%
+ \def\biblstring{\blx@imc@biblclstring}%
+ \def\bibsstring{\blx@imc@biblcsstring}%
+ \def\bibucstring{\blx@imc@biblcstring}%
+ \def\bibuclstring{\blx@imc@biblclstring}%
+ \def\bibucsstring{\blx@imc@biblcsstring}%
+ \def\bibcpstring{\blx@imc@biblcstring}%
+ \def\bibcplstring{\blx@imc@biblclstring}%
+ \def\bibcpsstring{\blx@imc@biblcsstring}}}}
+ {\DeclareCaseChangeEquivalent{\bibstring}{%
+ \CaseSwitch
+ {\blx@imc@bibstring}
+ {\blx@imc@bibucstring}
+ {\blx@imc@biblcstring}
+ {\blx@imc@bibcpstring}}
+ \DeclareCaseChangeEquivalent{\biblstring}{%
+ \CaseSwitch
+ {\blx@imc@biblstring}
+ {\blx@imc@bibuclstring}
+ {\blx@imc@biblclstring}
+ {\blx@imc@bibcplstring}}
+ \DeclareCaseChangeEquivalent{\bibsstring}{%
+ \CaseSwitch
+ {\blx@imc@bibsstring}
+ {\blx@imc@bibucsstring}
+ {\blx@imc@biblcsstring}
+ {\blx@imc@bibcpsstring}}
+ \DeclareCaseChangeEquivalent{\biblcstring}{%
+ \CaseSwitch
+ {\blx@imc@bibstring}
+ {\blx@imc@bibucstring}
+ {\blx@imc@biblcstring}
+ {\blx@imc@bibcpstring}}
+ \DeclareCaseChangeEquivalent{\biblclstring}{%
+ \CaseSwitch
+ {\blx@imc@biblstring}
+ {\blx@imc@bibuclstring}
+ {\blx@imc@biblclstring}
+ {\blx@imc@bibcplstring}}
+ \DeclareCaseChangeEquivalent{\biblcsstring}{%
+ \CaseSwitch
+ {\blx@imc@bibsstring}
+ {\blx@imc@bibucsstring}
+ {\blx@imc@biblcsstring}
+ {\blx@imc@bibcpsstring}}
+ \DeclareCaseChangeEquivalent{\bibucstring}{%
+ \CaseSwitch
+ {\blx@imc@bibstring}
+ {\blx@imc@bibucstring}
+ {\blx@imc@biblcstring}
+ {\blx@imc@bibcpstring}}
+ \DeclareCaseChangeEquivalent{\bibuclstring}{%
+ \CaseSwitch
+ {\blx@imc@biblstring}
+ {\blx@imc@bibuclstring}
+ {\blx@imc@biblclstring}
+ {\blx@imc@bibcplstring}}
+ \DeclareCaseChangeEquivalent{\bibucsstring}{%
+ \CaseSwitch
+ {\blx@imc@bibsstring}
+ {\blx@imc@bibucsstring}
+ {\blx@imc@biblcsstring}
+ {\blx@imc@bibcpsstring}}
+ \DeclareCaseChangeEquivalent{\bibcpstring}{%
+ \CaseSwitch
+ {\blx@imc@bibstring}
+ {\blx@imc@bibucstring}
+ {\blx@imc@biblcstring}
+ {\blx@imc@bibcpstring}}
+ \DeclareCaseChangeEquivalent{\bibcplstring}{%
+ \CaseSwitch
+ {\blx@imc@biblstring}
+ {\blx@imc@bibuclstring}
+ {\blx@imc@biblclstring}
+ {\blx@imc@bibcplstring}}
+ \DeclareCaseChangeEquivalent{\bibcpsstring}{%
+ \CaseSwitch
+ {\blx@imc@bibsstring}
+ {\blx@imc@bibucsstring}
+ {\blx@imc@biblcsstring}
+ {\blx@imc@bibcpsstring}}}
\def\abx@dostrings{%
\do{bibliography}%