summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-03-07 03:02:56 +0000
committerNorbert Preining <norbert@preining.info>2023-03-07 03:02:56 +0000
commit4f55c9271affed648c1a939790a73083043752f5 (patch)
tree5de3491421bbf46cdb941a9a70158ca43e748919 /macros/latex/contrib/biblatex
parent75cd005305bd2c2a0ec383f30ee5b1749ed15183 (diff)
CTAN sync 202303070302
Diffstat (limited to 'macros/latex/contrib/biblatex')
-rw-r--r--macros/latex/contrib/biblatex/CHANGES.md7
-rw-r--r--macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst4
-rw-r--r--macros/latex/contrib/biblatex/doc/biblatex.pdfbin1640031 -> 1641916 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/biblatex.tex63
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/02-annotations-biber.pdfbin207854 -> 224457 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/02-annotations-bibtex.pdfbin207478 -> 224065 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/03-localization-keys-biber.pdfbin283555 -> 264864 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/03-localization-keys-bibtex.pdfbin283040 -> 264322 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/16-numeric-prefixed-1-biber.pdfbin157684 -> 173370 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/16-numeric-prefixed-1-bibtex.pdfbin156540 -> 172206 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/17-numeric-prefixed-2-biber.pdfbin157655 -> 173353 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/17-numeric-prefixed-2-bibtex.pdfbin156540 -> 172213 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/19-alphabetic-prefixed-biber.pdfbin158306 -> 173977 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/19-alphabetic-prefixed-bibtex.pdfbin157616 -> 173304 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/20-indexing-single-biber.pdfbin176169 -> 186156 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/20-indexing-single-bibtex.pdfbin169812 -> 185461 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/21-indexing-multiple-biber.pdfbin177358 -> 187356 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/21-indexing-multiple-bibtex.pdfbin171031 -> 186681 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/40-style-alphabetic-biber.pdfbin207609 -> 217634 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/40-style-alphabetic-bibtex.pdfbin199318 -> 216840 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/50-style-authoryear-biber.pdfbin280070 -> 301379 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/50-style-authoryear-bibtex.pdfbin277799 -> 299140 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/60-style-authortitle-biber.pdfbin290007 -> 299861 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/60-style-authortitle-bibtex.pdfbin275259 -> 297499 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/91-sorting-schemes.tex2
-rw-r--r--macros/latex/contrib/biblatex/doc/examples/96-dates-biber.pdfbin25280 -> 25295 bytes
-rw-r--r--macros/latex/contrib/biblatex/latex/biblatex.def5
-rw-r--r--macros/latex/contrib/biblatex/latex/biblatex.sty80
-rw-r--r--macros/latex/contrib/biblatex/latex/blx-bibtex.def2
-rw-r--r--macros/latex/contrib/biblatex/latex/cbx/alphabetic.cbx5
-rw-r--r--macros/latex/contrib/biblatex/latex/cbx/authortitle-comp.cbx5
-rw-r--r--macros/latex/contrib/biblatex/latex/cbx/authortitle-icomp.cbx5
-rw-r--r--macros/latex/contrib/biblatex/latex/cbx/authoryear-comp.cbx5
-rw-r--r--macros/latex/contrib/biblatex/latex/cbx/authoryear-icomp.cbx5
-rw-r--r--macros/latex/contrib/biblatex/latex/cbx/numeric-comp.cbx5
-rw-r--r--macros/latex/contrib/biblatex/latex/cbx/numeric.cbx5
-rw-r--r--macros/latex/contrib/biblatex/latex/lbx/lithuanian.lbx2
37 files changed, 151 insertions, 49 deletions
diff --git a/macros/latex/contrib/biblatex/CHANGES.md b/macros/latex/contrib/biblatex/CHANGES.md
index c4db07a41c..c8d35de4ec 100644
--- a/macros/latex/contrib/biblatex/CHANGES.md
+++ b/macros/latex/contrib/biblatex/CHANGES.md
@@ -1,3 +1,7 @@
+# RELEASE NOTES FOR VERSION 3.19
+- Added `\AtNextRefsection`.
+- Added `\DeclareExtradateContext`.
+
# RELEASE NOTES FOR VERSION 3.18b
- Reenable `\MakeUppercase`/`\MakeLowercase` "patches" for `\bibstring`
based on `\CaseSwitch`.
@@ -9,8 +13,7 @@
# RELEASE NOTES FOR VERSION 3.18
- New sorting name key generation macro `\visibility` which allows
application of sorting name key generation to apply only to sorting
- within citati
- ons.
+ within citations.
- New sorting macro `\intciteorder` which allows sorting by order internal
to a cite command like \cite{a,b,c}.
- New option `pluralothers` to force "et al." to be plural (i.e. only
diff --git a/macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst b/macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst
index 6cd54a3486..55ff9acd66 100644
--- a/macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst
+++ b/macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst
@@ -184,7 +184,7 @@ STRINGS { ctrl.alphaothers ctrl.sortalphaothers ctrl.sortstr
last.name last.hash last.year last.extra }
FUNCTION {initialize} {
- "$Revision: 3.18 $"
+ "$Revision: 3.19 $"
#12 entry.max$ substring$
#-3 entry.max$ substring$
"Biblatex version: " swap$ * top$
@@ -1928,7 +1928,7 @@ FUNCTION {input:control:options} {
% This version corresponds to the .bcf version, *not* the biblatex version!
FUNCTION {input:control:version} {
input:control:parse
- "$Revision: 3.9 $"
+ "$Revision: 3.10 $"
#12 entry.max$ substring$
#-3 entry.max$ substring$
'tempstrga :=
diff --git a/macros/latex/contrib/biblatex/doc/biblatex.pdf b/macros/latex/contrib/biblatex/doc/biblatex.pdf
index a1f4b3d3c1..fde8bee537 100644
--- a/macros/latex/contrib/biblatex/doc/biblatex.pdf
+++ b/macros/latex/contrib/biblatex/doc/biblatex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/biblatex.tex b/macros/latex/contrib/biblatex/doc/biblatex.tex
index 67d334accd..6c4e147b7b 100644
--- a/macros/latex/contrib/biblatex/doc/biblatex.tex
+++ b/macros/latex/contrib/biblatex/doc/biblatex.tex
@@ -68,7 +68,7 @@
url={\biblatexhome},
author={Philip Kime, Moritz Wemheuer, Philipp Lehman},
email={},
- revision={3.18b},
+ revision={3.19},
date={\today}}
\hypersetup{%
@@ -413,6 +413,7 @@ compatibility matrix for the recent versions.
\sffamily\bfseries\spotcolor Biber version
& \sffamily\bfseries\spotcolor \biblatex\ version\\
\midrule
+2.19 & 3.19\\
2.18 & 3.18\\
2.17 & 3.17\\
2.16 & 3.16\\
@@ -857,7 +858,7 @@ The author(s) of the \bibfield{title}.
\fielditem{authortype}{key}
-The type of author. This field will affect the string (if any) used to introduce the author. Not used by the standard bibliography styles.
+The type of author. This field will affect the string (if any) used to introduce the author.
\listitem{bookauthor}{name}
@@ -1082,7 +1083,7 @@ however better to use the \bibfield{date} field as this supports many more featu
\fielditem{nameaddon}{literal}
-An addon to be printed immediately after the author name in the bibliography. Not used by the standard bibliography styles. This field may be useful to add an alias or pen name (or give the real name if the pseudonym is commonly used to refer to that author).
+An addon to be printed immediately after the author name in the bibliography. Not used by the standard bibliography styles.
\fielditem{note}{literal}
@@ -2663,7 +2664,7 @@ The option is intended mainly for backwards compatibility, because earlier versi
\boolitem[true]{dashed}
-This option controls whether recurrent the same author\slash editor list in the bibliography are replaced by a dash (\cmd{bibnamdeash}, see \secref{use:fmt:fmt}). If the option is enabled, subsequent mentions of the same name list at the beginning of an entry are replaced by a dash provided the entry is not the first on the current page. If the option is disabled, name lists are never replaced by a dash.
+This option controls whether recurrent the same author\slash editor list in the bibliography are replaced by a dash (\cmd{bibnamedash}, see \secref{use:fmt:fmt}). If the option is enabled, subsequent mentions of the same name list at the beginning of an entry are replaced by a dash provided the entry is not the first on the current page. If the option is disabled, name lists are never replaced by a dash.
\end{optionlist}
@@ -2857,7 +2858,7 @@ This option is also settable on a per-type, per-entry, per-namelist and per-name
If \opt{giveninits} is set to \opt{true}, the default name formats will only render the given name initials and not the full given name. The standard styles only use the test \cmd{ifgiveninits} and hence only respond to the option \opt{giveninits}. Setting the option for a name part different from \texttt{given} has no effect on the default name formats.
-Note that sorting and name uniqueness are not automatically affected by this option, that have to be requested explicitly via \cmd{DeclareSortingNamekeyTemplate} and the \opt{uniquename} option (or \cmd{DeclareUniquenameTemplate}), respectively. A warning will be issued if \opt{giveninits} is used together with \opt{uniquename} set to one of the \opt{full} values and \opt{uniquename} is automatically set to the corresponding \opt{init} value.
+Note that sorting and name uniqueness are not automatically affected by this option, these have to be requested explicitly via \cmd{DeclareSortingNamekeyTemplate} and the \opt{uniquename} option (or \cmd{DeclareUniquenameTemplate}), respectively. A warning will be issued if \opt{giveninits} is used together with \opt{uniquename} set to one of the \opt{full} values and \opt{uniquename} is automatically set to the corresponding \opt{init} value.
\boolitem[false]{terseinits}
@@ -3047,8 +3048,8 @@ This option is also settable on a per-type, per-entry and per-namelist basis.
\multicolumn{1}{@{}H}{Counter tracks} \\
\cmidrule(r){1-1}\cmidrule(r){2-2}\cmidrule(r){3-3}\cmidrule{4-4}
labelalpha & labelalpha & extraalpha & label\\
-labeldateparts & labelyear & extradate & labelname+\\
- & labelmonth & & labelyear\\
+labeldateparts & labelyear & extradate & extradate context+labelyear\\
+ & labelmonth & & \\
& labelday & & \\
& labelendyear & & \\
& labelendmonth & & \\
@@ -4354,7 +4355,7 @@ The \opt{refcontext} environment cannot be nested and \biblatex will generate an
\cmditem{newrefcontext}[key=value, \dots]{name}
-This command is similar to the \env{refcontext} environment except that it is a stand"=alone command rather than an environment. It automatically ends any previous reference context section begun with \cmd{newrefcontext} (if any) and immediately starts a new one. Note that the context section started by the last \cmd{newrefcontext} command in the document will extend to the very end of the document. Use \cmd{endrefcontext} if you want to terminate it earlier.
+This command is similar to the \env{refcontext} environment except that it is a stand"=alone command rather than an environment. It automatically ends any previous reference context section begun with \cmd{newrefcontext} (if any) and immediately starts a new one. Note that the context section started by the last \cmd{newrefcontext} command in the document will extend to the end of the current refsection. Use \cmd{endrefcontext} if you want to terminate it earlier.
\cmditem{localrefcontext}[key=value, \dots]{name}
@@ -7139,11 +7140,11 @@ The end day of the date field selected by \cmd{DeclareLabeldate} (\secref{aut:ct
\fielditem{extradate}{integer}
-The author"=year citation scheme usually requires a letter to be appended to the year if the bibliography contains two or more works by the same author which were all published in the same year. In this case, the \bibfield{extradate} field holds an integer which may be converted to a letter with \cmd{mknumalph} or formatted in some other way. This field is undefined if there is only one work by the author in the bibliography or if all works by the author have different publication years. A complete author-year label consists of the fields \bibfield{labelyear} plus \bibfield{extradate}. Note that the \bibfield{labelyear} and \bibfield{extradate} fields need to be requested with the package option \opt{labeldateparts}, see \secref{use:opt:pre:int} for details. See also \bibfield{labelyear}. Table \ref{use:opt:tab1} summarises the various \opt{extra*} disambiguation counters and what they track.
+The author"=year citation scheme usually requires a letter to be appended to the year if the bibliography contains two or more works by the same author (actually the \bibfield{labelname}, which is usually the author by default but which need not be) which were all published in the same year. In this case, the \bibfield{extradate} field holds an integer which may be converted to a letter with \cmd{mknumalph} or formatted in some other way. This field is undefined if there is only one work by the author in the bibliography or if all works by the author have different publication years. A complete author-year label consists of the fields \bibfield{labelyear} plus \bibfield{extradate}. Note that the \bibfield{labelyear} and \bibfield{extradate} fields need to be requested with the package option \opt{labeldateparts}, see \secref{use:opt:pre:int} for details. See also \bibfield{labelyear}. Table \ref{use:opt:tab1} summarises the various \opt{extra*} disambiguation counters and what they track. Note that \biblatex allows a generalisation of this behaviour and the default context for \bibfield{extradate} disambiguation can be changed to allow other contexts than the author. The default will fall back to the \bibfield{labeltitle} if there is no \bibfield{labelname} (which is usually the author). See \cmd{DeclareExtradateContext} in \secref{aut:ctm:fld} to customise the \bibfield{extradate} context.
\fielditem{extradatescope}{literal}
-This field contains the name of the most specific field which determined the value of \bibfield{extradate}. It is not used by the standard styles but may be useful in controlling the placement of the \bibfield{extradate} field value.
+This field contains the name of the most specific date part which determined the value of \bibfield{extradate}. It is not used by the standard styles but may be useful in controlling the placement of the \bibfield{extradate} field value. For example, if two works by the same author with dates <2020-05-04> and <2020-06-04> were disambiguated by \bibfield{extradate}, then \bibfield{extradatascope} would contain <labelyear> for both entries as the most specific difference is the (label)year. If the dates were <2020-05-04> and <2020-05-02>, then \bibfield{extradatascope} would contain <labelmonth>. See also \cmd{DeclareExtradate} (\secref{aut:ctm:fld}) which describes how to change the scope used to track dates.
\end{fieldlist}
@@ -8268,6 +8269,11 @@ limiting source maps to specific refsections only (see \opt{refsection}
option to the \cmd{map} command above).
\begin{itemize}
+\item If \texttt{final} is \texttt{true} for a step then no more steps
+ after this one are run within the current map for the current entry if
+ the conditions for the step so far are not satisfied. Examples are given in
+ the descriptions for specific steps as to what this means for their
+ particular semantics.
\item If \texttt{entrynew} is set, a new entry is created with the entry key \texttt{entrynewkey} and the entry type given in the option \texttt{entrynewtype}. This
entry is only in-scope during the processing of the current entry and can be referenced by
\texttt{entrytarget}. In \texttt{entrynewkey}, you may use standard Perl regular expression
@@ -8315,15 +8321,7 @@ option to the \cmd{map} command above).
\texttt{match} regular expression (logic is reversed if you use \texttt{notmatch} and case-insensitive if you use the versions ending in <i>)\footnote{Regular expressions are full Perl 5.16 regular expressions. This means you may need to deal with special characters, see examples.}. You may use capture parenthesis as usual and refer to these (\$1\ldots\$9) in later \texttt{fieldvalue} specifications. This allows you to pull out parts of some fields and put these parts in other fields.
\item Perform a regular expression match and replace on the value of the \texttt{fieldsource} \prm{entryfield} if \texttt{match} and \texttt{replace} are defined.
\item If \texttt{matches} is defined, it should be a comma-separated list of literal strings which are replaced by corresponding locations in a comma-separated list provided in \texttt{replace}. The lists must have the same number of elements or the step will be skipped. \texttt{matchesi} is the same but case-insensitive.
-\item If \texttt{fieldset} is defined, then its value is \prm{entryfield}
- which will be set to a value specified by further options. If
- \texttt{overwrite} is false for this step and the field to set already
- exists then the map step is ignored. If \texttt{final} is also true for
- this step, then processing of the parent map stops at this point. If
- \texttt{append} is true, then the value to set is appended to the current
- value of \prm{entryfield}. \texttt{appendstrict} only appends to
- \prm{entryfield} if \prm{entryfield} is not empty. The value to set is
- specified by a mandatory one and only one of the following options:
+\item If \texttt{fieldset} is defined, then its value is \prm{entryfield} which will be set to a value specified by further options. If \texttt{overwrite} is false for this step and the field to set already exists then the map step is ignored. If \texttt{final} is also true when \texttt{overwrite} is false for this step, then processing of the parent map stops at this point. If \texttt{append} is true, then the value to set is appended to the current value of \prm{entryfield}. \texttt{appendstrict} only appends to \prm{entryfield} if \prm{entryfield} is not empty. The value to set is specified by a mandatory one and only one of the following options:
\begin{itemize}
\item\ \texttt{fieldvalue} --- The \texttt{fieldset} \prm{entryfield} is set to the \texttt{fieldvalue} \prm{string}
\item\ \texttt{null} --- The \texttt{fieldset} \prm{entryfield} is ignored, as if it did not exist in the datasource
@@ -9953,7 +9951,7 @@ The \bibfield{label*} fields may be customized globally or on a per-type basis.
\cmditem{DeclareExtradate}{specification}
-Defines how \biber tracks information used to construct the \bibfield{extradate} field. This field (see \secref{aut:bbx:fld:lab}) is printed to disambiguate works by the same author which occur in the same date scope. By default, the date scope is the year and so two works by the same author within the same year will have different \bibfield{extradate} values which are used to disambiguate the works in the bibliography in the usual manner seen in many authoryear type styles. The \prm{specification} is one or more \cmd{scope} specifications which can contain one or more \cmd{field} specifications. Within a \cmd{scope}, the existence of each \cmd{field} will be checked and if found, the first \cmd{field} is used and the rest are ignored. This allows a fallback in case certain fields are not available in all entries. All \cmd{scope}s are used to track information and \cmd{scope}s should be specified in decreasing order of generality (e.g. year then month then day etc) The default definition is:
+Defines which date information used to construct the \bibfield{extradate} field. With the default setting for \cmd{DeclareExtradateContext}, this field (see \secref{aut:bbx:fld:lab}) is printed to disambiguate works by the same \bibfield{labelname} (usually the author) or \bibfield{labeltitle} (usually the main title) which occur in the same date scope. By default, the date scope is the year and so two works by the same author/title within the same year will have different \bibfield{extradate} values which are used to disambiguate the works in the bibliography in the usual manner seen in many authoryear type styles. The \prm{specification} is one or more \cmd{scope} specifications which can contain one or more \cmd{field} specifications. Within a \cmd{scope}, the existence of each \cmd{field} will be checked and if found, the first \cmd{field} is used and the rest are ignored. This allows a fallback in case certain fields are not available in all entries. All \cmd{scope}s are used to track information and \cmd{scope}s should be specified in decreasing order of generality (e.g. year then month then day etc) The default definition is:
\begin{ltxexample}
\DeclareExtradate{%
@@ -10066,6 +10064,19 @@ Doe 2001b
%
This command may only be used in the preamble.
+\cmditem{DeclareExtradateContext}[entrytype, \dots]{specification}
+
+Defines the context in which identical dates (as determined by \cmd{DeclareExtradate}) are tracked so that \bibfield{extradate} can be appended for disambiguation purposes. Normally this context is the author name so that works of the same date by the same author can be disambiguated in authoryear type styles. Often, when there is no author, the title appears in the author position and the title is used as the context to disambiguate instead. Therefore, the default definition is:
+
+\begin{ltxexample}
+\DeclareExtradateContext{%
+ \field{labelname}
+ \field{labeltitle}
+}
+\end{ltxexample}
+%
+It is unlikely that this will need to be customised for normal use cases.
+
\cmditem{DeclareLabeltitle}[entrytype, \dots]{specification}
Defines the fields to consider when generating the \bibfield{labeltitle} field (see \secref{aut:bbx:fld:lab}). The \prm{specification} is an ordered list of \cmd{field} commands. The fields are checked in the order listed and the first field which is available will be used as \bibfield{labeltitle}. This is the default definition:
@@ -13270,6 +13281,10 @@ The name of the name list currently being processed by \cmd{printnames}. This in
Appends the \prm{code} to an internal hook executed at the beginning of every reference section. The \prm{code} is executed just after setting the reference section number. This command may only be used in the preamble.
+\cmditem{AtNextRefsection}{code}
+
+Appends the \prm{code} to an internal hook executed at the beginning of the next reference section. The \prm{code} is executed just after setting the reference section number.
+
\cmditem{AtBeginBibliography}{code}
Appends the \prm{code} to an internal hook executed at the beginning of the bibliography. The \prm{code} is executed at the beginning of the list of references, immediately after the \prm{begin code} of \cmd{defbibenvironment}. This command may only be used in the preamble.
@@ -14858,7 +14873,13 @@ use$<$name$>$ &\+&\+&\_&\+&\+&\_&\_\\
This revision history is a list of changes relevant to users of this package. Changes of a more technical nature which do not affect the user interface or the behavior of the package are not included in the list. More technical details are to be found in the \file{CHANGES.md} file. The numbers on the right indicate the relevant section of this manual.
\begin{changelog}
-\begin{release}{3.18b}{2022-07-12}
+\begin{release}{3.19}{2023-03-05}
+\item Added \cmd{AtNextRefsection}\see{aut:fmt:hok}
+\item Added \cmd{DeclareExtradateContext} option\see{aut:ctm:fld}
+\item Modified warning for using bibtex backend
+\item Enhanced \bibfield{extradate} tracking to fallback on \bibfield{labeltitle} when there is no author
+\end{release}
+ \begin{release}{3.18b}{2022-07-12}
\item Reenable \cmd{MakeUppercase}/\cmd{MakeLowercase} <patches>
based on \cmd{CaseSwitch}
\end{release}
diff --git a/macros/latex/contrib/biblatex/doc/examples/02-annotations-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/02-annotations-biber.pdf
index a6a3c22705..c870935219 100644
--- a/macros/latex/contrib/biblatex/doc/examples/02-annotations-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/02-annotations-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/02-annotations-bibtex.pdf b/macros/latex/contrib/biblatex/doc/examples/02-annotations-bibtex.pdf
index 188b707462..6341afe161 100644
--- a/macros/latex/contrib/biblatex/doc/examples/02-annotations-bibtex.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/02-annotations-bibtex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/03-localization-keys-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/03-localization-keys-biber.pdf
index d8f867fff7..6e8d59197d 100644
--- a/macros/latex/contrib/biblatex/doc/examples/03-localization-keys-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/03-localization-keys-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/03-localization-keys-bibtex.pdf b/macros/latex/contrib/biblatex/doc/examples/03-localization-keys-bibtex.pdf
index c2953f7e4e..bef6ba6cc6 100644
--- a/macros/latex/contrib/biblatex/doc/examples/03-localization-keys-bibtex.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/03-localization-keys-bibtex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/16-numeric-prefixed-1-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/16-numeric-prefixed-1-biber.pdf
index e1fddfe1b8..1a43b99ec6 100644
--- a/macros/latex/contrib/biblatex/doc/examples/16-numeric-prefixed-1-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/16-numeric-prefixed-1-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/16-numeric-prefixed-1-bibtex.pdf b/macros/latex/contrib/biblatex/doc/examples/16-numeric-prefixed-1-bibtex.pdf
index 64db9af5a6..17d38864f3 100644
--- a/macros/latex/contrib/biblatex/doc/examples/16-numeric-prefixed-1-bibtex.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/16-numeric-prefixed-1-bibtex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/17-numeric-prefixed-2-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/17-numeric-prefixed-2-biber.pdf
index 906a18b8a0..76a9175ac6 100644
--- a/macros/latex/contrib/biblatex/doc/examples/17-numeric-prefixed-2-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/17-numeric-prefixed-2-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/17-numeric-prefixed-2-bibtex.pdf b/macros/latex/contrib/biblatex/doc/examples/17-numeric-prefixed-2-bibtex.pdf
index 1660f1fa12..0f85b8c344 100644
--- a/macros/latex/contrib/biblatex/doc/examples/17-numeric-prefixed-2-bibtex.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/17-numeric-prefixed-2-bibtex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/19-alphabetic-prefixed-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/19-alphabetic-prefixed-biber.pdf
index b0a7303384..22822fa190 100644
--- a/macros/latex/contrib/biblatex/doc/examples/19-alphabetic-prefixed-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/19-alphabetic-prefixed-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/19-alphabetic-prefixed-bibtex.pdf b/macros/latex/contrib/biblatex/doc/examples/19-alphabetic-prefixed-bibtex.pdf
index fd02d3ee77..b2dddeeeb4 100644
--- a/macros/latex/contrib/biblatex/doc/examples/19-alphabetic-prefixed-bibtex.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/19-alphabetic-prefixed-bibtex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/20-indexing-single-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/20-indexing-single-biber.pdf
index ac1fb850af..bef1f6f3f1 100644
--- a/macros/latex/contrib/biblatex/doc/examples/20-indexing-single-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/20-indexing-single-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/20-indexing-single-bibtex.pdf b/macros/latex/contrib/biblatex/doc/examples/20-indexing-single-bibtex.pdf
index b41bf9968e..52d3cbeba8 100644
--- a/macros/latex/contrib/biblatex/doc/examples/20-indexing-single-bibtex.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/20-indexing-single-bibtex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/21-indexing-multiple-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/21-indexing-multiple-biber.pdf
index 26b3acae8b..eaaabde6a1 100644
--- a/macros/latex/contrib/biblatex/doc/examples/21-indexing-multiple-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/21-indexing-multiple-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/21-indexing-multiple-bibtex.pdf b/macros/latex/contrib/biblatex/doc/examples/21-indexing-multiple-bibtex.pdf
index 2d2de8ea76..2fdd6bbc9a 100644
--- a/macros/latex/contrib/biblatex/doc/examples/21-indexing-multiple-bibtex.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/21-indexing-multiple-bibtex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/40-style-alphabetic-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/40-style-alphabetic-biber.pdf
index 17f5db2dce..81d00c245c 100644
--- a/macros/latex/contrib/biblatex/doc/examples/40-style-alphabetic-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/40-style-alphabetic-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/40-style-alphabetic-bibtex.pdf b/macros/latex/contrib/biblatex/doc/examples/40-style-alphabetic-bibtex.pdf
index 1095df8ce6..b6d7e8f48c 100644
--- a/macros/latex/contrib/biblatex/doc/examples/40-style-alphabetic-bibtex.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/40-style-alphabetic-bibtex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/50-style-authoryear-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/50-style-authoryear-biber.pdf
index dbf2370b9d..f21e332306 100644
--- a/macros/latex/contrib/biblatex/doc/examples/50-style-authoryear-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/50-style-authoryear-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/50-style-authoryear-bibtex.pdf b/macros/latex/contrib/biblatex/doc/examples/50-style-authoryear-bibtex.pdf
index 371dcc0e4c..f553a865b1 100644
--- a/macros/latex/contrib/biblatex/doc/examples/50-style-authoryear-bibtex.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/50-style-authoryear-bibtex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/60-style-authortitle-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/60-style-authortitle-biber.pdf
index d088d528a8..2c4d4c059b 100644
--- a/macros/latex/contrib/biblatex/doc/examples/60-style-authortitle-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/60-style-authortitle-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/60-style-authortitle-bibtex.pdf b/macros/latex/contrib/biblatex/doc/examples/60-style-authortitle-bibtex.pdf
index c148d4278c..0c3a82bd9c 100644
--- a/macros/latex/contrib/biblatex/doc/examples/60-style-authortitle-bibtex.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/60-style-authortitle-bibtex.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/doc/examples/91-sorting-schemes.tex b/macros/latex/contrib/biblatex/doc/examples/91-sorting-schemes.tex
index 251e27dcc2..617ceb629c 100644
--- a/macros/latex/contrib/biblatex/doc/examples/91-sorting-schemes.tex
+++ b/macros/latex/contrib/biblatex/doc/examples/91-sorting-schemes.tex
@@ -6,7 +6,7 @@
\usepackage{hyperref}
\addbibresource{biblatex-examples.bib}
\begin{document}
-% This demonstrates that the sorting of citations can be difference to the
+% This demonstrates that the sorting of citations can be different to the
% bibliography. However, this is not always advisable in case of multiple
% citations in the same year for the same author list. This is because
% extradate (the "a", "b" etc. in "Smith 2010a" and "Smith 2010b" etc.)
diff --git a/macros/latex/contrib/biblatex/doc/examples/96-dates-biber.pdf b/macros/latex/contrib/biblatex/doc/examples/96-dates-biber.pdf
index e1d6a5dcef..52e1a2f310 100644
--- a/macros/latex/contrib/biblatex/doc/examples/96-dates-biber.pdf
+++ b/macros/latex/contrib/biblatex/doc/examples/96-dates-biber.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex/latex/biblatex.def b/macros/latex/contrib/biblatex/latex/biblatex.def
index 8e52b7fa0d..3b4c4bd68a 100644
--- a/macros/latex/contrib/biblatex/latex/biblatex.def
+++ b/macros/latex/contrib/biblatex/latex/biblatex.def
@@ -1398,6 +1398,11 @@
}
}
+\DeclareExtradateContext{%
+ \field{labelname}
+ \field{labeltitle}
+}
+
\DeclareLabeltitle{%
\field{shorttitle}
\field{title}
diff --git a/macros/latex/contrib/biblatex/latex/biblatex.sty b/macros/latex/contrib/biblatex/latex/biblatex.sty
index 8b33c5d021..a006c5ecd2 100644
--- a/macros/latex/contrib/biblatex/latex/biblatex.sty
+++ b/macros/latex/contrib/biblatex/latex/biblatex.sty
@@ -12,8 +12,8 @@
% particular purpose.
% Set up the version strings here
-\def\abx@date{2022/07/12}
-\def\abx@version{3.18b}
+\def\abx@date{2023/03/05}
+\def\abx@version{3.19}
\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)}
@@ -22,7 +22,7 @@
% This is not updated by build script as the control file version
% does not necessarily change with the package version.
% This is used when writing the .bcf
-\def\blx@bcfversion{3.9}
+\def\blx@bcfversion{3.10}
% This is not updated by build script as the bbl version
% does not necessarily change with the package version.
@@ -9476,18 +9476,23 @@
{\blx@printbibchecks
\blx@notfilter\blx@tempa{blx@catg@#1}}}
+\let\blx@default@thefilter\@empty
+\blx@kv@defkey{blx@bibdefaults}{filter}{%
+ \def\blx@default@thefilter{#1}}
\blx@kv@defkey{blx@bib2}{filter}{\blx@key@filter{#1}}
\blx@kv@defkey{blx@biblist2}{filter}{\blx@key@filter{#1}}
\def\blx@key@filter#1{%
- \ifcsdef{blx@filter@#1}
- {\blx@printbibchecks
- \blx@bibfilter\blx@tempa{blx@filter@#1}}
- {\let\blx@tempa\@empty
- \blx@error
- {Filter '#1' not found}
- {The filter '#1' could not be found.\MessageBreak
- Use \string\defbibfilter\space to define it}}}
+ \ifblank{#1}
+ {}
+ {\ifcsdef{blx@filter@#1}
+ {\blx@printbibchecks
+ \blx@bibfilter\blx@tempa{blx@filter@#1}}
+ {\let\blx@tempa\@empty
+ \blx@error
+ {Filter '#1' not found}
+ {The filter '#1' could not be found.\MessageBreak
+ Use \string\defbibfilter\space to define it}}}}
\blx@kv@defkey{blx@bib2}{check}{\blx@key@bibcheck{#1}}
\blx@kv@defkey{blx@biblist2}{check}{\blx@key@bibcheck{#1}}
@@ -9672,6 +9677,7 @@
\let\blx@theprenote\blx@default@theprenote
\let\blx@thepostnote\blx@default@thepostnote
\let\blx@thetitle\blx@default@thetitle
+ \let\blx@thefilter\blx@default@thefilter
\undef\blx@thelabel
% defaults
\let\blx@tempa\@empty% before there is a .bbl, this must not be undef
@@ -9697,6 +9703,7 @@
% \printbibliography following one with this set will inherit any
% previous "true" value
\togglefalse{blx@omitnumbers}%
+ \expandafter\blx@key@filter\expandafter{\blx@thefilter}% Can only be defaulted once \blx@tempa is set since it filters on this
\blx@kv@setkeys{blx@bib2}{#1}% ... now we have correct \blx@tempa, set rest of options
\blx@rest@actives
% Add datalist to list of seen datalists to prevent duplicates
@@ -9727,6 +9734,7 @@
\let\blx@theprenote\blx@default@theprenote
\let\blx@thepostnote\blx@default@thepostnote
\let\blx@thetitle\blx@default@thetitle
+ \let\blx@thefilter\blx@default@thefilter
\undef\blx@thelabel
\c@refsection\z@
\blx@safe@actives
@@ -9767,6 +9775,7 @@
\let\blx@theprenote\blx@default@theprenote
\let\blx@thepostnote\blx@default@thepostnote
\let\blx@thetitle\blx@default@thetitle
+ \let\blx@thefilter\blx@default@thefilter
\undef\blx@thelabel
\c@refsegment\@ne
\blx@safe@actives
@@ -9812,8 +9821,8 @@
\let\blx@theprenote\blx@default@theprenote
\let\blx@thepostnote\blx@default@thepostnote
\let\blx@thetitle\blx@default@thetitle
+ \let\blx@thefilter\blx@default@thefilter
\undef\blx@thelabel
- \c@refsection\z@
\blx@safe@actives
\blx@kv@setkeys{blx@bbc}{#1}%
\blx@rest@actives
@@ -10113,6 +10122,7 @@
\let\blx@theprenote\@empty
\let\blx@thepostnote\@empty
\let\blx@thetitle\@empty
+ \let\blx@thefilter\@empty
\undef\blx@thelabel
% defaults
\let\blx@tempa\@empty% before there is a .bbl, this must not be undef
@@ -10559,6 +10569,12 @@
\newrobustcmd*{\AtBeginRefsection}{\gappto\blx@hook@refsectioninit}
\@onlypreamble\AtBeginRefsection
+\newrobustcmd*{\AtNextRefsection}{%
+ \ifundef\blx@hook@refsection@next
+ {\gdef\blx@hook@refsection@next{\global\undef\blx@hook@refsection@next}}
+ {}%
+ \gappto\blx@hook@refsection@next}
+
\newrobustcmd*{\newrefsection}{%
\endrefcontext
\ifnum\c@refsection>\z@
@@ -10592,6 +10608,7 @@
\stepcounter{blx@maxsection}%
\setcounter{refsection}{\value{blx@maxsection}}%
\csuse{blx@hook@refsectioninit}%
+ \csuse{blx@hook@refsection@next}%
\xifinlist{\the\c@refsection}\blx@allrefsections
{}
{\listxadd\blx@allrefsections{\the\c@refsection}}%
@@ -11388,6 +11405,21 @@
\blx@auxwrite\blx@bcfout{}{\blx@xml@citeset{\blx@tempa}{\blx@tempb}}%
\endgroup}
+
+\def\abx@warn@emptycite{%
+ \abx@warn@emptycite@print
+ \abx@warn@emptycite@log}
+
+\def\abx@warn@emptycite@print@text{%
+ \textless empty citation\textgreater}
+
+\def\abx@warn@emptycite@print{%
+ \abx@missing@entry{\abx@warn@emptycite@print@text}}
+
+\def\abx@warn@emptycite@log{%
+ \@latex@warning{\blx@msg@cundefon{}}}
+
+
% {<entrykey>,...}
% a crude way to check for a do-nothing argument:
% loop over it to see what happens
@@ -11397,8 +11429,7 @@
\expandafter\docsvlist\expandafter{\detokenize{#1}}%
\iftoggle{blx@tempa}
{\expandafter\blx@citeloop@i\expandafter{\detokenize{#1}}}
- {\abx@missing@entry{empty citation}%
- \@latex@warning{\blx@msg@cundefon{}}}}
+ {\abx@warn@emptycite}}
\protected\def\blx@citeloop@i#1{%
\begingroup
% This must be here and not after \blx@citeadd as this changes the refcontext
@@ -13422,6 +13453,7 @@
\blx@xml@comment{GLOBAL}%
\blx@xml@options{biblatex}{global}{%
\blx@xml@svalue{alphaothers}{\labelalphaothers}%
+ \blx@xml@mvalue{extradatecontext}{\blx@bcf@extradatecontext}%
\blx@xml@toggle{labelalpha}%
\blx@xml@mvalue{labelnamespec}{\blx@bcf@labelnamespec}%
\blx@xml@toggle{labeltitle}%
@@ -13467,6 +13499,10 @@
\def\blx@bcf@options@type#1{%
\blx@xml@comment{#1}%
\blx@xml@options{biblatex}{#1}{%
+ \blx@xml@mvalue{extradatecontext}{%
+ \ifcsdef{blx@bcf@extradatecontext@#1}
+ {\csuse{blx@bcf@extradatecontext@#1}}
+ {\blx@bcf@extradatecontext}}%
\blx@xml@toggle{labelalpha}%
\blx@xml@mvalue{labelnamespec}{%
\ifcsdef{blx@bcf@labelnamespec@#1}
@@ -14700,6 +14736,21 @@
\noexpand\blx@xml@edordered{\the\blx@tempcnta}{#1}}}
% [<type,type,...>]{<field,field,...>}
+\newrobustcmd*{\DeclareExtradateContext}[2][]{%
+ \begingroup
+ \let\blx@tempa\@empty
+ \def\blx@tempb{extradatecontext}%
+ \let\field\blx@ordered@field
+ \ifblank{#1}
+ {\global\cslet{blx@bcf@extradatecontext}\@empty}
+ {\def\blx@tempa{#1}%
+ \def\do##1{\global\cslet{blx@bcf@extradatecontext@##1}\@empty}%
+ \expandafter\docsvlist\expandafter{#1}}%
+ #2%
+ \endgroup}
+\@onlypreamble\DeclareExtradateContext
+\blx@DeclareBackendOption{global,type}[xml]{extradatecontext}
+
\newrobustcmd*{\DeclareLabelname}[2][]{%
\begingroup
\let\blx@tempa\@empty
@@ -16306,6 +16357,7 @@
\blx@bblinput
\setcounter{blx@maxsection}{0}%
\csuse{blx@hook@refsectioninit}%
+ \csuse{blx@hook@refsection@next}%
\csuse{abx@preamble}%
\blx@inf@refsec
\blx@inf@refseg}
diff --git a/macros/latex/contrib/biblatex/latex/blx-bibtex.def b/macros/latex/contrib/biblatex/latex/blx-bibtex.def
index 7e84884ac7..63f1420ef4 100644
--- a/macros/latex/contrib/biblatex/latex/blx-bibtex.def
+++ b/macros/latex/contrib/biblatex/latex/blx-bibtex.def
@@ -2,7 +2,7 @@
[\abx@cptid]
\blx@warning@noline{%
- Using fall-back BibTeX(8) backend:\MessageBreak
+ Using fall-back bibtex backend:\MessageBreak
functionality may be reduced/unavailable%
}
diff --git a/macros/latex/contrib/biblatex/latex/cbx/alphabetic.cbx b/macros/latex/contrib/biblatex/latex/cbx/alphabetic.cbx
index e6f4d7d425..b205b68bb9 100644
--- a/macros/latex/contrib/biblatex/latex/cbx/alphabetic.cbx
+++ b/macros/latex/contrib/biblatex/latex/cbx/alphabetic.cbx
@@ -129,7 +129,10 @@
\newrobustcmd{\cbx@textcite@init}[2]{%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
- \def\cbx@savedcites{#1}#2\cbx@savedcites\empty}
+ \def\cbx@savedcites{#1}#2%
+ \ifnumgreater{\value{textcitetotal}}{0}
+ {\cbx@savedcites}
+ {}}
\DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{}
\DeclareMultiCiteCommand{\textcites}[\cbx@textcites@init\cbx@textcites]{\textcite}{}
diff --git a/macros/latex/contrib/biblatex/latex/cbx/authortitle-comp.cbx b/macros/latex/contrib/biblatex/latex/cbx/authortitle-comp.cbx
index f27955b113..cf60c11b10 100644
--- a/macros/latex/contrib/biblatex/latex/cbx/authortitle-comp.cbx
+++ b/macros/latex/contrib/biblatex/latex/cbx/authortitle-comp.cbx
@@ -174,7 +174,10 @@
\newrobustcmd{\cbx@textcite@init}[2]{%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
- \def\cbx@savedcites{#1}#2\cbx@savedcites\empty}
+ \def\cbx@savedcites{#1}#2%
+ \ifnumgreater{\value{textcitetotal}}{0}
+ {\cbx@savedcites}
+ {}}
\DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{}
\DeclareMultiCiteCommand{\textcites}[\cbx@textcites@init\cbx@textcites]{\textcite}{}
diff --git a/macros/latex/contrib/biblatex/latex/cbx/authortitle-icomp.cbx b/macros/latex/contrib/biblatex/latex/cbx/authortitle-icomp.cbx
index 8109110103..fdf5bcc2cc 100644
--- a/macros/latex/contrib/biblatex/latex/cbx/authortitle-icomp.cbx
+++ b/macros/latex/contrib/biblatex/latex/cbx/authortitle-icomp.cbx
@@ -203,7 +203,10 @@
\newrobustcmd{\cbx@textcite@init}[2]{%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
- \def\cbx@savedcites{#1}#2\cbx@savedcites\empty}
+ \def\cbx@savedcites{#1}#2%
+ \ifnumgreater{\value{textcitetotal}}{0}
+ {\cbx@savedcites}
+ {}}
\DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{}
\DeclareMultiCiteCommand{\textcites}[\cbx@textcites@init\cbx@textcites]{\textcite}{}
diff --git a/macros/latex/contrib/biblatex/latex/cbx/authoryear-comp.cbx b/macros/latex/contrib/biblatex/latex/cbx/authoryear-comp.cbx
index 11d91b054e..d764eac8bf 100644
--- a/macros/latex/contrib/biblatex/latex/cbx/authoryear-comp.cbx
+++ b/macros/latex/contrib/biblatex/latex/cbx/authoryear-comp.cbx
@@ -246,7 +246,10 @@
\newrobustcmd{\cbx@textcite@init}[2]{%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
- \def\cbx@savedcites{#1}#2\cbx@savedcites\empty}
+ \def\cbx@savedcites{#1}#2%
+ \ifnumgreater{\value{textcitetotal}}{0}
+ {\cbx@savedcites}
+ {}}
\DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{}
\DeclareMultiCiteCommand{\textcites}[\cbx@textcites@init\cbx@textcites]{\textcite}{}
diff --git a/macros/latex/contrib/biblatex/latex/cbx/authoryear-icomp.cbx b/macros/latex/contrib/biblatex/latex/cbx/authoryear-icomp.cbx
index a194473bea..8897a7ad40 100644
--- a/macros/latex/contrib/biblatex/latex/cbx/authoryear-icomp.cbx
+++ b/macros/latex/contrib/biblatex/latex/cbx/authoryear-icomp.cbx
@@ -275,7 +275,10 @@
\newrobustcmd{\cbx@textcite@init}[2]{%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
- \def\cbx@savedcites{#1}#2\cbx@savedcites\empty}
+ \def\cbx@savedcites{#1}#2%
+ \ifnumgreater{\value{textcitetotal}}{0}
+ {\cbx@savedcites}
+ {}}
\DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{}
\DeclareMultiCiteCommand{\textcites}[\cbx@textcites@init\cbx@textcites]{\textcite}{}
diff --git a/macros/latex/contrib/biblatex/latex/cbx/numeric-comp.cbx b/macros/latex/contrib/biblatex/latex/cbx/numeric-comp.cbx
index 86dfce242d..187ca2bce6 100644
--- a/macros/latex/contrib/biblatex/latex/cbx/numeric-comp.cbx
+++ b/macros/latex/contrib/biblatex/latex/cbx/numeric-comp.cbx
@@ -305,7 +305,10 @@
\newrobustcmd{\cbx@textcite@init}[2]{%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
- \def\cbx@savedcites{#1}#2\cbx@savedcites\empty}
+ \def\cbx@savedcites{#1}#2%
+ \ifnumgreater{\value{textcitetotal}}{0}
+ {\cbx@savedcites}
+ {}}
\DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{}
\DeclareMultiCiteCommand{\textcites}[\cbx@textcites@init\cbx@textcites]{\textcite}{}
diff --git a/macros/latex/contrib/biblatex/latex/cbx/numeric.cbx b/macros/latex/contrib/biblatex/latex/cbx/numeric.cbx
index 8ea47d1338..68b10d891c 100644
--- a/macros/latex/contrib/biblatex/latex/cbx/numeric.cbx
+++ b/macros/latex/contrib/biblatex/latex/cbx/numeric.cbx
@@ -140,7 +140,10 @@
\newrobustcmd{\cbx@textcite@init}[2]{%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
- \def\cbx@savedcites{#1}#2\cbx@savedcites\empty}
+ \def\cbx@savedcites{#1}#2%
+ \ifnumgreater{\value{textcitetotal}}{0}
+ {\cbx@savedcites}
+ {}}
\DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{}
\DeclareMultiCiteCommand{\textcites}[\cbx@textcites@init\cbx@textcites]{\textcite}{}
diff --git a/macros/latex/contrib/biblatex/latex/lbx/lithuanian.lbx b/macros/latex/contrib/biblatex/latex/lbx/lithuanian.lbx
index 0bcbb3a7b5..07482617ff 100644
--- a/macros/latex/contrib/biblatex/latex/lbx/lithuanian.lbx
+++ b/macros/latex/contrib/biblatex/latex/lbx/lithuanian.lbx
@@ -12,7 +12,7 @@
{The file 'lithuanian.lbx' requires UTF-8 encoding but you
seem\MessageBreak to be using a different encoding.
This is a fatal error. I will\MessageBreak abort loading
- russian.lbx now.}%
+ lithuanian.lbx now.}%
\endinput}
\DeclareBibliographyExtras{%