summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-12-09 03:01:30 +0000
committerNorbert Preining <norbert@preining.info>2019-12-09 03:01:30 +0000
commitd1cebb67c836ee110bdbd3aeb622675df479c993 (patch)
tree173421290b36cb9fc36caebc2eaebd0dcf9e2eba /macros/latex/contrib/biblatex
parent1145b1140897e4557181755793cb5998f8255f2c (diff)
CTAN sync 201912090301
Diffstat (limited to 'macros/latex/contrib/biblatex')
-rw-r--r--macros/latex/contrib/biblatex/CHANGES.md11
-rw-r--r--macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst12
-rw-r--r--macros/latex/contrib/biblatex/doc/biblatex.pdfbin1536386 -> 1555106 bytes
-rw-r--r--macros/latex/contrib/biblatex/doc/biblatex.tex247
-rw-r--r--macros/latex/contrib/biblatex/latex/biblatex.def2
-rw-r--r--macros/latex/contrib/biblatex/latex/biblatex.sty290
-rw-r--r--macros/latex/contrib/biblatex/latex/blx-dm.def73
-rw-r--r--macros/latex/contrib/biblatex/latex/lbx/croatian.lbx317
8 files changed, 586 insertions, 366 deletions
diff --git a/macros/latex/contrib/biblatex/CHANGES.md b/macros/latex/contrib/biblatex/CHANGES.md
index 437b096306..73848adcd2 100644
--- a/macros/latex/contrib/biblatex/CHANGES.md
+++ b/macros/latex/contrib/biblatex/CHANGES.md
@@ -1,10 +1,19 @@
+# RELEASE NOTES FOR VERSION 3.14
+- biber from version 2.14 has extended, granular XDATA functionality to
+ allow referencing from and to parts of fields. This makes XDATA entries into
+ more general data sharing containers.
+- `biblatex` now interfaces with `polyglossia` much better and can deal
+ with language variants.
+ Note that `polyglossia` v1.45 (2019/10/27) is required for this
+ to work properly, it is strongly recommended to update `polyglossia`
+ to this or a later (current) version.
# RELEASE NOTES FOR VERSION 3.13
- **INCOMPATIBLE CHANGE** Any custom per-entry options in datasources must
be defined with `\DeclareEntryOption` in order for biber to recognise
them and pass them out in the `.bbl`.
This should not adversely affect any code using the documented
`\Decalare...Option` interface, so should be uncritical for most users.
-- Add `\DeclareBiblatexOption` as a convenient interface to declare the same
+- Added `\DeclareBiblatexOption` as a convenient interface to declare the same
option in different scopes. This should help avoid code duplication.
For example
```
diff --git a/macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst b/macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst
index 4b1dcee4d7..e3b5fbb23e 100644
--- a/macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst
+++ b/macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst
@@ -1127,11 +1127,15 @@ FUNCTION {output:indent:subfield:keyval} {
if$
}
+FUNCTION {output:write:field:maybeempty} {
+ swap$ "\field" swap$ wrap:braces *
+ swap$ wrap:braces * output:indent:field
+}
+
FUNCTION {output:write:field} {
duplicate$ empty$
{ pop$ pop$ }
- { swap$ "\field" swap$ wrap:braces *
- swap$ wrap:braces * output:indent:field }
+ { output:write:field:maybeempty }
if$
}
@@ -1471,7 +1475,7 @@ FUNCTION {output:specials} {
}
if$
"extradate" extradate output:write:field
- "labeldatesource" "year" output:write:field
+ "labeldatesource" "" output:write:field:maybeempty
}
'skip$
if$
@@ -1914,7 +1918,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.6 $"
+ "$Revision: 3.7 $"
#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 f6097f757b..0c2de50f17 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 4e911efc8d..213fe87e71 100644
--- a/macros/latex/contrib/biblatex/doc/biblatex.tex
+++ b/macros/latex/contrib/biblatex/doc/biblatex.tex
@@ -64,7 +64,7 @@
url={\biblatexhome},
author={Philip Kime, Moritz Wemheuer, Philipp Lehman},
email={},
- revision={3.13a},
+ revision={3.14},
date={\today}}
\hypersetup{%
@@ -183,7 +183,7 @@ This package provides advanced bibliographic facilities for use with \latex. The
\subsection{License}
-Copyright \textcopyright\ 2006--2012 Philipp Lehman, 2012--2017 Philip Kime, Audrey Boruvka, Joseph Wright, 2018- Philip Kime and Moritz Wemheuer. Permission is granted to copy, distribute and\slash or modify this software under the terms of the \lppl, version 1.3.\fnurl{http://www.latex-project.org/lppl.txt}
+Copyright \textcopyright\ 2006--2012 Philipp Lehman, 2012--2017 Philip Kime, Audrey Boruvka, Joseph Wright, 2018-- Philip Kime and Moritz Wemheuer. Permission is granted to copy, distribute and\slash or modify this software under the terms of the \lppl, version~1.3.\fnurl{http://www.latex-project.org/lppl.txt}
\subsection{Feedback}
\label{int:feb}
@@ -263,14 +263,14 @@ Apart from the above resources, \biblatex also requires the standard \latex pack
\subsubsection{Recommended Packages}
\label{int:pre:rec}
-The packages listed in this section are not required for \biblatex to function, but they provide recommended additional functions or enhance existing features. The package loading order does not matter.
+The packages listed in this section are not required for \biblatex to function, but they provide recommended additional functions or enhance existing features. The package loading order usually does not matter.
\begin{marglist}
\item[babel/polyglossia]
-The \sty{babel} and \sty{polyglossia} packages provides the core architecture for multilingual typesetting. If you are writing in a language other than American English, using one of these packages is strongly recommended. You should load \sty{babel} or \sty{polyglossia} before \biblatex and then \biblatex will detect \sty{babel} or \sty{polyglossia} automatically.
+The \sty{babel} and \sty{polyglossia} packages provides the core architecture for multilingual typesetting. If you are writing in a language other than American English, using one of these packages is strongly recommended. You should load \sty{babel} or \sty{polyglossia} before \biblatex and then \biblatex will detect \sty{babel} or \sty{polyglossia} automatically. (While \sty{babel} may be loaded after \biblatex if so desired, \sty{polyglossia} must always be loaded before \biblatex.)
-Please note that \biblatex can only detect the language (\eg \texttt{english}, \texttt{german}), but not the language variant (\eg \texttt{british}, \texttt{austrian}) and other properties (\eg \texttt{spelling=new} for \texttt{german}) when used with \sty{polyglossia}. To remind you of these shortcomings \biblatex will issue a warning message when it is loaded together with \sty{polyglossia}, the warning message tells you how to silence it should you want to do so.
+\biblatex has only limited support for \sty{polyglossia} versions prior to~v1.45. If \sty{polyglossia} is used, it should be updated to version~1.45 (2019/10/27) or above.
\item[csquotes]
If this package is available, \biblatex will use its language sensitive quotation facilities to enclose certain titles in quotation marks. If not, \biblatex uses quotes suitable for American English as a fallback. When writing in a language other than American English, loading \sty{csquotes} is strongly recommended.\fnurl{http://ctan.org/pkg/csquotes/}
@@ -1171,11 +1171,11 @@ The revision number of a piece of software, a manual, etc.
\fielditem{volume}{integer}
-The volume of a multi"=volume book or a periodical. It is expected to be an integer, not necessarily in arabic numerals since \biber will automatically from roman numerals or arabic letter to integers internally for sorting purposes. See also \bibfield{part}. See the \opt{noroman} option which can be used to suppress roman numeral parsing. This can help in cases where there is an ambiguity between parsing as roman numerals or alphanumeric (e.g. <C>), see \secref{use:opt:pre:int}.
+The volume of a multi"=volume book or a periodical. It is expected to be an integer, not necessarily in arabic numerals since \biber will automatically convert from roman numerals or arabic letter to integers internally for sorting purposes. See also \bibfield{part}. See the \opt{noroman} option which can be used to suppress roman numeral parsing. This can help in cases where there is an ambiguity between parsing as roman numerals or alphanumeric (e.g. <C>), see \secref{use:opt:pre:int}.
\fielditem{volumes}{integer}
-The total number of volumes of a multi"=volume work. Depending on the entry type, this field refers to \bibfield{title} or \bibfield{maintitle}. It is expected to be an integer, not necessarily in arabic numerals since \biber will automatically from roman numerals or arabic letter to integers internally for sorting purposes. See the \opt{noroman} option which can be used to suppress roman numeral parsing. This can help in cases where there is an ambiguity between parsing as roman numerals or alphanumeric (e.g. <C>), see \secref{use:opt:pre:int}.
+The total number of volumes of a multi"=volume work. Depending on the entry type, this field refers to \bibfield{title} or \bibfield{maintitle}. It is expected to be an integer, not necessarily in arabic numerals since \biber will automatically convert from roman numerals or arabic letter to integers internally for sorting purposes. See the \opt{noroman} option which can be used to suppress roman numeral parsing. This can help in cases where there is an ambiguity between parsing as roman numerals or alphanumeric (e.g. <C>), see \secref{use:opt:pre:int}.
\fielditem{year}{literal}
@@ -2139,7 +2139,7 @@ This option controls whether the citation commands scan ahead for punctuation ma
\optitem[autobib]{language}{\opt{autobib}, \opt{autocite}, \opt{auto}, \prm{language}}
-This option controls multilingual support. By default \biblatex automatically picks up the active surrounding language from the \sty{babel}/\sty{polyglossia} package\footnote{Note that \biblatex can only detect the base language (\eg \texttt{english}), but not the language variant (\eg \texttt{british}) or other properties (\eg \texttt{spelling=new} for \texttt{german}) from \sty{polyglossia}. That means that the \biblatex localisation of the base language is used for all variants, even for variants whose <\sty{babel} equivalent> has a localisation of its own. To remind you of these shortcomings a warning will be issued if \biblatex is used with \sty{polyglossia}, the warning explains how it can be disabled.} (and fall back to English if \sty{babel}/\sty{polyglossia} is not available). \opt{autobib} switches the language for each entry in the bibliography using the \bibfield{langid} field and the language environment specified by the \opt{autolang} option. \opt{autocite} switches the language for each citation using the \bibfield{langid} field and the language environment specified by the \opt{autolang} option. \opt{auto} is a shorthand to set both \opt{autobib} and \opt{autocite}. It is also possible to select the package language manually. In this case, the language chosen will override the \bibfield{langid} of entries and you should still choose a language switching environment with the \opt{autolang} option to select how the switch to the manually chosen language is handled. Please refer to \tabref{bib:fld:tab1} for a list of supported languages and the corresponding identifiers.
+This option controls multilingual support. By default \biblatex automatically picks up the active surrounding language from the \sty{babel}/\sty{polyglossia} package\footnote{Note that \biblatex has only limited support for \sty{polyglossia} versions prior to v1.45. If \sty{polyglossia} is used, it should be updated to version~1.45 (2019/10/27) or above.} (and fall back to English if \sty{babel}/\sty{polyglossia} is not available). \opt{autobib} switches the language for each entry in the bibliography using the \bibfield{langid} field and the language environment specified by the \opt{autolang} option. \opt{autocite} switches the language for each citation using the \bibfield{langid} field and the language environment specified by the \opt{autolang} option. \opt{auto} is a shorthand to set both \opt{autobib} and \opt{autocite}. It is also possible to select the package language manually. In this case, the language chosen will override the \bibfield{langid} of entries and you should still choose a language switching environment with the \opt{autolang} option to select how the switch to the manually chosen language is handled. Please refer to \tabref{bib:fld:tab1} for a list of supported languages and the corresponding identifiers.
\boolitem[true]{clearlang}
@@ -2424,7 +2424,7 @@ This option controls the basic format of printed time specifications. The follow
2:34 PM--3:50 PM\par
\end{valuelist}
%
-As seen in the above examples, the actual time format is language specific. Note that the AM/PM string is responsive to the \opt{abbreviate} package option, if this makes a difference in the specific locale. The leading zeros in the 24-hour formats may be controlled separately with the \opt{timezeros} package option. The separator between time components (\cmd{bibtimesep} and \cmd{bibtzminsep})and between the time and any timezone (\cmd{bibtimezonesep}) are also language specific and customisable, see \secref{use:fmt:lng}. There are global package options which determine whether seconds and timezones are printed (\opt{seconds} and \opt{timezones}, respectively, see \secref{use:opt:pre:gen}). Timezones, if present, are either <Z> or a numeric positive or negative offset. No default styles print time information. Custom styles may print times by using the \cmd{print<datetype>time} commands, see \secref{aut:bib:dat}.
+As seen in the above examples, the actual time format is language specific. Note that the AM/PM string is responsive to the \opt{abbreviate} package option, if this makes a difference in the specific locale. The leading zeros in the 24-hour formats may be controlled separately with the \opt{timezeros} package option. The separator between time components (\cmd{bibtimesep} and \cmd{bibtzminsep}) and between the time and any timezone (\cmd{bibtimezonesep}) are also language specific and customisable, see \secref{use:fmt:lng}. There are global package options which determine whether seconds and timezones are printed (\opt{seconds} and \opt{timezones}, respectively, see \secref{use:opt:pre:gen}). Timezones, if present, are either <Z> or a numeric positive or negative offset. No default styles print time information. Custom styles may print times by using the \cmd{print$<$datetype$>$time} commands, see \secref{aut:bib:dat}.
\optitem[24h]{labeltime}{\opt{12h}, \opt{24h}, \opt{24hcomp}}
@@ -2754,7 +2754,7 @@ The maximum permitted nesting level of parentheses and brackets. If parentheses
\boolitem[false]{$<$namepart$>$inits}
The option sets the \cmd{if$<$namepart$>$inits} test from \secref{aut:aux:tst}. \texttt{$<$namepart$>$} is any valid name part as defined in the data model by the \cmd{DeclareDatamodelConstant} command (\secref{aut:bbx:drv}). For the given name, for example, the option becomes \opt{giveninits}.
-This option is also settable on a per-type, per-entry, per-name and per-namelist basis.
+This option is also settable on a per-type, per-entry, per-namelist and per-name basis.
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.
@@ -3020,7 +3020,7 @@ defined. Global, per-type and per-entry options called <use$<$name$>$>are automa
\boolitem[false]{useprefix}
-Whether the default date model name part <prefix> (von, van, of, da, de, della, etc.) is considered when:
+Whether the default data model name part <prefix> (von, van, of, da, de, della, etc.) is considered when:
\begin{itemize}
\item Printing the family name in citations
@@ -4499,7 +4499,7 @@ The following special commands are also provided by the core of \biblatex.
This command is similar to the standard \latex \cmd{nocite} command. It
adds the \prm{key} to the bibliography without printing a citation. If the
-\prm{key} is an asterisk, all entries available in the in-scope bibliography datasource(s) are added to the bibliography. Like all other citation commands, \cmd{nocite} commands in the document body are local to the enclosing \env{refsection} environment, if any. In contrast to standard \latex, \cmd{nocite} may also be used in the document preamble. In this case, the references are assigned to reference section~0.
+\prm{key} is an asterisk, all entries available in the in-scope bibliography datasource(s) are added to the bibliography. Like all other citation commands, \cmd{nocite} commands in the document body are local to the enclosing \env{refsection} environment, if any. In contrast to standard \latex, \cmd{nocite} may also be used in the document preamble. In this case, the references are assigned to reference section~0. For the purposes of ordering citations by appearance \cmd{nocite} will behave like all other cite commands, with the added rule that a \cmd{nocite} issued in the preamble is treated as coming before all explicit citations in reference section~0 from the document body.
\cmditem{fullcite}[prenote][postnote]{key}
@@ -5819,7 +5819,7 @@ Dynamic entry sets in the document body are local to the enclosing \env{refsecti
\subsubsection[Data Containers]{Data Containers}
\label{use:use:xdat}
-The \bibtype{xdata} entry type serves as a data container holding one or more fields. These fields may be inherited by other entries using the \bibfield{xdata} field. \bibtype{xdata} entries may not be cited or added to the bibliography, they only serve as a data source for other entries. This data inheritance mechanism is useful for fixed field combinations such as \bibfield{publisher}\slash \bibfield{location} and for other frequently used data:
+The \bibtype{xdata} entry type serves as a data container holding one or more fields. Data in \bibtype{xdata} entries may be referenced and used by other entries. \bibtype{xdata} entries may not be cited or added to the bibliography, they only serve as a data source for other entries (including other \bibtype{xdata} entries). This data inheritance mechanism is useful for fixed field combinations such as \bibfield{publisher}\slash \bibfield{location} and for other frequently used data:
\begin{lstlisting}[style=bibtex]{}
<<@XData>>{<<hup>>,
@@ -5854,6 +5854,63 @@ Using a separated list of keys in its \bibfield{xdata} field, an entry may inher
}
\end{lstlisting}
%
+More granular \bibtype{xdata} entry data may be referenced. It is not necessary to reference only entire fields. For example:
+
+\begin{lstlisting}[style=bibtex]{}
+@XData{someauthors,
+ author = {John Smith and Brian Brown}
+}
+@XData{somelocations,
+ location = {Location1 and Location2}
+}
+@XData{somenotes,
+ note = {A note}
+}
+@Book{...,
+ author = {Alan Drudge and xdata=someauthors-author-2},
+ editor = {xdata=someauthors-author},
+ location = {xdata=somelocations-location-1 and Location3},
+ note = {xdata=somenotes-note}
+}
+\end{lstlisting}
+%
+The format of granular \bibtype{xdata} references are as follows:
+
+\begin{namesample}
+\item~\delim{x}{1}data\delim{=}{2}\delim{$<$}{3}key$>$\delim{-}{4}\delim{$<$}{5}field$>$\delim{-}{6}\delim{$<$}{7}index$>$
+\end{namesample}
+
+\begin{enumerate}
+ \item The value of the \biber option \opt{--xdatamarker} (by default '\texttt{xdata}')
+ \item The value of the \biber option \opt{--xnamesep} (by default '\texttt{=}')
+ \item A valid entry key of an \bibtype{xdata} entry
+ \item The value of the \biber option \opt{--xdatasep} (by default '\texttt{-}')
+ \item A valid entry field in the source \bibtype {xdata} entry
+ \item (Optional) The value of the \biber option \opt{--xdatasep} (by default '\texttt{-}')
+ \item (Optional) A valid 1-based index into a list/name field in the source \bibtype {xdata} entry
+\end{enumerate}
+%
+There are \opt{--output-*} variants of the above options for \biber tool mode output so that these separators and markers can be programatically changed. Taking the example above, this \bibtype{book} would resolve to:
+
+\begin{lstlisting}[style=bibtex]{}
+@Book{...,
+ author = {Alan Drudge and Brian Brown},
+ editor = {John Smith},
+ location = {Location1 and Location3},
+ note = {A note}
+}
+\end{lstlisting}
+%
+Things to note with granular \bibtype{xdata} references:
+
+\begin{itemize}
+ \item References must be made only to \bibtype{xdata} fields. An warning will be generated otherwise and the reference will not be resolved
+ \item References must be made only to \bibtype{xdata} fields of the same type (list/name and datatype) as the referencing field. An warning will be generated otherwise and the reference will not be resolved
+ \item References to fields of datatype 'date' are not possible. References to legacy \bibfield{year} and \bibfield{month} fields are possible
+ \item References to missing entries, fields or list/name indices will generate a warning and the reference will not be resolved
+ \item If an index is missing for a reference to a list/name field, 1 is assumed
+\end{itemize}
+%
See also \secref{bib:typ:blx,bib:fld:spc}.
\subsubsection{Electronic Publishing Information}
@@ -7871,6 +7928,10 @@ A mapping step. Each step is applied sequentially to every relevant entry where
\valitem{entrynew}{entrynewkey}
\valitem{entrynewtype}{string}
\valitem{entrytarget}{string}
+\boolitem[false]{cited}
+\boolitem[false]{nocited}
+\boolitem[false]{citedornocited}
+\boolitem[false]{allnocited}
\boolitem[false]{entrynocite}
\boolitem[false]{entrynull}
\boolitem[false]{append}
@@ -7885,6 +7946,19 @@ For all boolean \cmd{step} options, the short form \opt{option} is equivalent to
\renewcommand{\labelitemii}{$\circ$}
+Note that the options \opt{cited}, \opt{nocited}, \opt{citedornocited} and
+\opt{allnocited} are unique in that they can make the results of a
+sourcemap differ depending on the refsection. This is because a datasource
+to which source mapping applies may be used in several refsections and
+source mappings are applied when fetching the data from the datasources for
+a refsection. Citation commands are local to a refsection and therefore may
+differ for the same entry from refsection to refsection. For example, the same
+entry may be \cmd{cite}d in one refsection but \cmd{nocite}d in another,
+resulting in different source map results and therefore data between the
+refsections. This can be avoided if desired, by limiting source maps to
+specific refsections only (see \opt{refsection} option to the \cmd{map}
+command above).
+
\begin{itemize}
\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
@@ -7908,6 +7982,14 @@ For all boolean \cmd{step} options, the short form \opt{option} is equivalent to
current entry and can be modified by passing its key as the value to \texttt{entrytarget}.
In \texttt{clonekey}, you may use standard Perl regular expression backreferences to
captures from a previous \texttt{match} step.
+\item If \texttt{cited} is used then only apply the step if the entry key
+ of an entry was specifically cited via \cmd{cite}.
+\item If \texttt{nocited} is used then only apply the step if the entry key
+ of an entry was specifically nocited via \cmd{nocite} or was included via \cmd{nocite\{*\}}.
+\item If \texttt{citedornocited} is used then only apply the step if the entry key
+ of an entry was specifically cited via \cmd{cite} or specifically nocited via \cmd{nocite}.
+\item If \texttt{allnocited} is used then only apply the step if the entry key
+ of an entry was included via \cmd{nocite\{*\}}.
\item Change the \texttt{typesource} \prm{entrytype} to the
\texttt{typetarget} \prm{entrytype}, if defined. If
\texttt{final} is \texttt{true} then if the \prm{entrytype} of the entry is not \texttt{typesource}, processing of the parent \cmd{map} immediately terminates.
@@ -9053,8 +9135,6 @@ By default there is only a global template which has the following \prm{specific
\DeclareSortingNamekeyTemplate{
\keypart{
\namepart[use=true]{<<prefix>>}
- }
- \keypart{
\namepart{<<family>>}
}
\keypart{
@@ -9069,11 +9149,11 @@ By default there is only a global template which has the following \prm{specific
}
\end{ltxexample}
%
-This means that the key is constructed by concatenating, in order, the name prefix (only if the \opt{useprefix} option is true), the family name(s), the given names(s), the name suffix and then the name prefix (only if the \opt{useprefix} option is false).
+This means that the key is constructed by concatenating, in order, the name prefix (only if the \opt{useprefix} option is true) with the family name(s), the given names(s), the name suffix and then the name prefix (only if the \opt{useprefix} option is false).
\cmditem{keypart}{part}
-\prm{part} is an ordered list of of \cmd{namepart} and \cmd{literal} specifications which are concatenated together when constructing a part of the name sorting key.
+\prm{part} is an ordered list of of \cmd{namepart} and \cmd{literal} specifications which are concatenated together when constructing a part of the name sorting key. The \cmd{keyparts} are then concatenated together with terminal padding to ensure correct sorting.
\cmditem{literal}{string}
@@ -13454,10 +13534,10 @@ Please refer to \secref{bib:cav:ref, aut:ctm:ref} for explanation.
\def\skip{\textrm{--}}
\def\note#1{\textrm{#1}}
\begin{longtable}[l]{%
- @{}V{0.2\textwidth}%
- @{}V{0.4\textwidth}%
- @{}V{0.3\textwidth}%
- @{}V{0.3\textwidth}@{}}
+ @{}V{0.2\textwidth}%
+ @{}V{0.4\textwidth}%
+ @{}V{0.3\textwidth}%
+ @{}V{0.3\textwidth}@{}}
\toprule
\multicolumn{2}{@{}H}{Types} & \multicolumn{2}{@{}H}{Fields} \\
\cmidrule(r){1-2}\cmidrule{3-4}
@@ -13467,73 +13547,74 @@ Please refer to \secref{bib:cav:ref, aut:ctm:ref} for explanation.
\endhead
\bottomrule
\endfoot
-\textasteriskcentered & \textasteriskcentered &
+{\normalsize*} & {\normalsize*} &
ids\par
- crossref\par
- xref\par
- entryset\par
- entrysubtype\par
- execute\par
- label\par
- options\par
- presort\par
- related\par
- relatedoptions\par
- relatedstring\par
- relatedtype\par
- shorthand\par
- shorthandintro\par
- sortkey &
- \skip\par \skip\par \skip\par \skip\par
- \skip\par \skip\par \skip\par \skip\par
- \skip\par \skip\par \skip\par \skip\par
- \skip\par \skip \\
+ crossref\par
+ xref\par
+ entryset\par
+ entrysubtype\par
+ execute\par
+ label\par
+ options\par
+ presort\par
+ related\par
+ relatedoptions\par
+ relatedstring\par
+ relatedtype\par
+ shorthand\par
+ shorthandintro\par
+ sortkey &
+ \skip\par \skip\par \skip\par \skip\par
+ \skip\par \skip\par \skip\par \skip\par
+ \skip\par \skip\par \skip\par \skip\par
+ \skip\par \skip\par \skip\par \skip \\\addlinespace
mvbook\sep book &
- inbook\sep bookinbook\sep suppbook &
- author\par author &
- author\par bookauthor \\
+ inbook\sep bookinbook\sep suppbook &
+ author\par author &
+ author\par bookauthor \\\addlinespace
mvbook &
- book\sep inbook\sep bookinbook\sep suppbook &
- title\par subtitle\par titleaddon\par
- shorttitle\par sorttitle\par indextitle\par indexsorttitle &
- maintitle\par mainsubtitle\par maintitleaddon\par
- \skip\par \skip\par \skip\par \skip \\
+ book\sep inbook\sep bookinbook\sep suppbook &
+ title\par subtitle\par titleaddon\par
+ shorttitle\par sorttitle\par indextitle\par indexsorttitle &
+ maintitle\par mainsubtitle\par maintitleaddon\par
+ \skip\par \skip\par \skip\par \skip \\\addlinespace
mvcollection\sep mvreference &
- collection\sep reference\sep incollection\sep inreference\sep suppcollection &
- title\par subtitle\par titleaddon\par
- shorttitle\par sorttitle\par indextitle\par indexsorttitle &
- maintitle\par mainsubtitle\par maintitleaddon\par
- \skip\par \skip\par \skip\par \skip \\
-mvproceedings &
- proceedings\sep inproceedings &
- title\par subtitle\par titleaddon\par
- shorttitle\par sorttitle\par indextitle\par indexsorttitle &
- maintitle\par mainsubtitle\par maintitleaddon\par
- \skip\par \skip\par \skip\par \skip \\
+ collection\sep reference\sep incollection\sep inreference\sep suppcollection &
+ title\par subtitle\par titleaddon\par
+ shorttitle\par sorttitle\par indextitle\par indexsorttitle &
+ maintitle\par mainsubtitle\par maintitleaddon\par
+ \skip\par \skip\par \skip\par \skip \\\addlinespace
+mvproceedings &
+ proceedings\sep inproceedings &
+ title\par subtitle\par titleaddon\par
+ shorttitle\par sorttitle\par indextitle\par indexsorttitle &
+ maintitle\par mainsubtitle\par maintitleaddon\par
+ \skip\par \skip\par \skip\par \skip \\\addlinespace
book &
- inbook\sep bookinbook\sep suppbook &
- title\par subtitle\par titleaddon\par
- shorttitle\par sorttitle\par indextitle\par indexsorttitle &
- booktitle\par booksubtitle\par booktitleaddon\par
- \skip\par \skip\par \skip\par \skip \\
+ inbook\sep bookinbook\sep suppbook &
+ title\par subtitle\par titleaddon\par
+ shorttitle\par sorttitle\par indextitle\par indexsorttitle &
+ booktitle\par booksubtitle\par booktitleaddon\par
+ \skip\par \skip\par \skip\par \skip \\\addlinespace
collection\sep reference &
- incollection\sep inreference\sep suppcollection &
- title\par subtitle\par titleaddon\par
- shorttitle\par sorttitle\par indextitle\par indexsorttitle &
- booktitle\par booksubtitle\par booktitleaddon\par
- \skip\par \skip\par \skip\par \skip \\
+ incollection\sep inreference\sep suppcollection &
+ title\par subtitle\par titleaddon\par
+ shorttitle\par sorttitle\par indextitle\par indexsorttitle &
+ booktitle\par booksubtitle\par booktitleaddon\par
+ \skip\par \skip\par \skip\par \skip \\\addlinespace
proceedings &
- inproceedings &
- title\par subtitle\par titleaddon\par
- shorttitle\par sorttitle\par indextitle\par indexsorttitle &
- booktitle\par booksubtitle\par booktitleaddon\par
- \skip\par \skip\par \skip\par \skip \\
+ inproceedings &
+ title\par subtitle\par titleaddon\par
+ shorttitle\par sorttitle\par indextitle\par indexsorttitle &
+ booktitle\par booksubtitle\par booktitleaddon\par
+ \skip\par \skip\par \skip\par \skip \\\addlinespace
periodical &
- article\sep suppperiodical &
- title\par subtitle\par
- shorttitle\par sorttitle\par indextitle\par indexsorttitle &
- journaltitle\par journalsubtitle\par
- \skip\par \skip\par \skip\par \skip \\
+ article\sep suppperiodical &
+ title\par subtitle\par
+ shorttitle\par sorttitle\par indextitle\par indexsorttitle &
+ journaltitle\par journalsubtitle\par
+ \skip\par \skip\par \skip\par \skip \\\addlinespace
+{\normalsize*} & {\normalsize*} & {\normalsize*} & {\normalsize*}\\
\end{longtable}
\endgroup
@@ -14026,6 +14107,7 @@ sortcase &\+&\+&\_&\_&\_&\_&\_\\
sortcites &\+&\+&\_&\_&\_&\_&\_\\
sorting &\+&\+&\_&\_&\_&\_&\_\\
sortingnamekeytemplatename &\_&\_&\+&\_&\+&\+&\+\\
+
sortlocale &\+&\+&\_&\_&\_&\_&\_\\
sortlos &\+&\+&\_&\_&\_&\_&\_\\
sortupper &\+&\+&\_&\_&\_&\_&\_\\
@@ -14053,6 +14135,11 @@ 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.14}{2019-12-01}
+\item Added new mapping verbs for citation sources\see{aut:ctm:map}
+\item Added documentation for new \biber granular \bibtype{xdata} functionality\see{use:use:xdat}
+\item Enhanced \sty{polyglossia} support
+\end{release}
\begin{release}{3.13a}{2019-08-31}
\item Bugfix release
\end{release}
diff --git a/macros/latex/contrib/biblatex/latex/biblatex.def b/macros/latex/contrib/biblatex/latex/biblatex.def
index e2a1728aae..992e8ba7e3 100644
--- a/macros/latex/contrib/biblatex/latex/biblatex.def
+++ b/macros/latex/contrib/biblatex/latex/biblatex.def
@@ -1402,8 +1402,6 @@
\DeclareSortingNamekeyTemplate{
\keypart{
\namepart[use=true]{prefix}
- }
- \keypart{
\namepart{family}
}
\keypart{
diff --git a/macros/latex/contrib/biblatex/latex/biblatex.sty b/macros/latex/contrib/biblatex/latex/biblatex.sty
index 60f1674d7f..775d3ecfb3 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{2019/08/31}
-\def\abx@version{3.13a}
+\def\abx@date{2019/12/01}
+\def\abx@version{3.14}
\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.6}
+\def\blx@bcfversion{3.7}
% This is not updated by build script as the bbl version
% does not necessarily change with the package version.
@@ -52,21 +52,6 @@
This is a fatal error. I'm aborting now}%
\endinput}
-% polyglossia pretends to be babel, so we need to make sure
-% we are definitely talking to babel here.
-\AtEndPreamble{%
- \@ifpackageloaded{polyglossia}
- {}
- {\@ifpackageloaded{babel}
- {\@ifpackagelater{babel}{2016/04/23}
- {}
- {\PackageError{biblatex}
- {Outdated 'babel' package}
- {Upgrade to babel 3.9r (2016/04/23) or later.\MessageBreak
- I found: '\csuse{ver@babel.sty}'.\MessageBreak
- This is a fatal error. I'm aborting now}%
- \endinput}}
- {}}}
%% Category codes
@@ -117,6 +102,9 @@
\endgroup}}
%% Compatibility
+% this hook is executed once at the beginning of loading the package
+% just a few lines down
+% and again later in an \AtEndPreamble hook
\def\blx@packageincompatibility{%
\def\do##1{%
\@ifpackageloaded{##1}
@@ -166,8 +154,15 @@
% still gives a weird error.
\blx@packageincompatibility
-% people should not be abusing noerroretextools, so warn if it is not needed
+% this part is only executed now
+\@ifpackageloaded{polyglossia}
+ {\global\cslet{blx@pkgloaded@polyglossia}\@empty}
+ {}
+
+% this part is deferred to \AtEndPreamble
\def\blx@packageincompatibility@endpreambleonly{%
+ % people should not be abusing noerroretextools,
+ % so warn if it is not needed
\ifcsdef{blx@noerroretextools}
{\@ifpackageloaded{etextools}
{}
@@ -176,7 +171,34 @@
but 'etextools' is not loaded.\MessageBreak
Please do not define '\string\blx@noerroretextools'\MessageBreak
unless you really need it}}}
- {}}
+ {}%
+ % polyglossia pretends to be babel, so the nested structure helps
+ % to make sure that babel really is babel
+ \@ifpackageloaded{polyglossia}
+ {\ifcsundef{blx@pkgloaded@polyglossia}
+ {\blx@error
+ {'polyglossia' loaded after biblatex}
+ {'polyglossia' must be loaded before biblatex}}
+ {}%
+ \@ifpackagelater{polyglossia}{2019/10/27}
+ {}
+ {\blx@warning@noline
+ {biblatex works best with 'polyglossia' 1.45\MessageBreak
+ or above.\MessageBreak
+ Please update 'polyglossia' to v1.45 (2019/10/27)\MessageBreak
+ or later.\MessageBreak
+ Variant detection will not work properly with\MessageBreak
+ older versions}}}
+ {\@ifpackageloaded{babel}
+ {\@ifpackagelater{babel}{2016/04/23}
+ {}
+ {\blx@error
+ {Outdated 'babel' package}
+ {Upgrade to babel 3.9r (2016/04/23) or later.\MessageBreak
+ I found: '\csuse{ver@babel.sty}'.\MessageBreak
+ This is a fatal error. I'm aborting now}%
+ \endinput}}
+ {}}}
\begingroup
\catcode`\#=12
@@ -201,69 +223,6 @@
\AtEndPreamble{%
\blx@packageincompatibility
\blx@packageincompatibility@endpreambleonly
- \def\blx@langstrings{}%
- % Set up sortlocale defaults and default language if babel/polyglossia is not loaded
- \ifdefstring\blx@sortlocale{auto}
- {\ifdef\bbl@main@language% babel or polyglossia is loaded
- {\edef\blx@sortlocale{\bbl@main@language}}
- {\def\blx@sortlocale{english}}}
- {}%
- \@ifpackageloaded{polyglossia}
- {% polyglossia support is not great when it comes to language variants,
- % so we better warn about it.
- \ifundef\blx@nowarnpolyglossia
- {\blx@warning@noline{%
- Package 'polyglossia' detected.\MessageBreak
- Please note that biblatex's polyglossia\MessageBreak
- interface has some rough edges.\MessageBreak
- Language variants are not picked up correctly.\MessageBreak
- You can disable this warning by defining the macro\MessageBreak
- '\string\blx@nowarnpolyglossia' in the preamble}}
- {}%
- % This is required for languages which are never explicitly selected
- % This check because \xpg@loaded is not defined in polyglossia <= v1.42.0
- \ifundef\xpg@loaded
- {\let\xpg@loaded\@empty
- \let\xpg@vloaded\@empty
- \blx@warning@noline{Upgrade package 'polyglossia' to > v1.42.0 recommended}}
- {}%
- \def\do#1{\blx@langsetup{#1}}%
- \expandafter\docsvlist\expandafter{\xpg@loaded}%
- \expandafter\docsvlist\expandafter{\xpg@vloaded}%
- \ifboolexpr{
- not togl {blx@autolangbib}
- and
- not togl {blx@autolangcite}}
- {\blx@mknoautolang}
- {\blx@mkautolangpoly}}
- {\@ifpackageloaded{babel}
- {% This is required for languages which are never explicitly selected
- \def\do#1{\blx@langsetup{#1}}%
- \expandafter\docsvlist\expandafter{\bbl@loaded}%
- \ifboolexpr{
- not togl {blx@autolangbib}
- and
- not togl {blx@autolangcite}}
- {\blx@mknoautolang}
- {\blx@mkautolangbabel}}
- {\blx@mknoautolang}}%
- % These already have defaults set to basically do nothing
- % so if the toggles are true, we need to define again since
- % mkautolang* redefines \blx@beglang
- % In turn, \blx@beglang defines \blx@endlang and so \blx@beglangcite and
- % \blx@endlangcite need redefining inside \blx@beglang after \blx@endlang
- % has been defined.
- \iftoggle{blx@autolangbib}
- {\let\blx@beglangbib\blx@beglang}
- {}%
- \iftoggle{blx@autolangcite}
- {\let\blx@beglangcite\blx@beglang}
- {}%
- \csuse{abx@extras@\blx@languagename}%
- \csuse{abx@strings@\blx@languagename}%
- \undef\blx@mkautolangbabel
- \undef\blx@mkautolangpoly
- \undef\blx@mknoautolang
\ifnum\blx@hyperref=\thr@@
\else
\ifnum\blx@hyperref=\z@
@@ -488,6 +447,75 @@
\sfcode`\'=\z@}}%
\let\do\noexpand}
+% no longer needed, keep for backwards compatibility
+\let\blx@langstrings\relax
+
+\def\blx@ifhyphenationundef#1{\ifcsundef{l@#1}}
+
+% polyglossia makes heavy use of \AtBeginDocument, so we need to use
+% it too to get in later than polyglossia's setup.
+% This means that load-order is relevant, boo ...
+\AtBeginDocument{%
+ \@ifpackageloaded{polyglossia}
+ {\ifundef\xpg@ifdefined
+ {}
+ {\def\blx@ifhyphenationundef#1#2#3{\xpg@ifdefined{#1}{#3}{#2}}}%
+ % This is required for languages which are never explicitly selected
+ % \xpg@bloaded is not defined in polyglossia < v1.45
+ \ifundef\xpg@bloaded
+ {\ifundef\xpg@loaded
+ {\let\xpg@bloaded\@empty}
+ {\let\xpg@bloaded\xpg@loaded}}
+ {}%
+ \global\let\blx@maplang\blx@maplang@polyglossia
+ \def\do#1{\blx@langsetup{#1}}%
+ \expandafter\docsvlist\expandafter{\xpg@bloaded}%
+ \ifboolexpr{
+ not togl {blx@autolangbib}
+ and
+ not togl {blx@autolangcite}}
+ {\blx@mknoautolang}
+ {\blx@mkautolangpoly}%
+ }
+ {\global\let\blx@maplang\blx@maplang@babel
+ \@ifpackageloaded{babel}
+ {% This is required for languages which are never explicitly selected
+ \def\do#1{\blx@langsetup{#1}}%
+ \expandafter\docsvlist\expandafter{\bbl@loaded}%
+ \ifboolexpr{
+ not togl {blx@autolangbib}
+ and
+ not togl {blx@autolangcite}}
+ {\blx@mknoautolang}
+ {\blx@mkautolangbabel}}
+ {\blx@mknoautolang}}%
+ % These already have defaults set to basically do nothing
+ % so if the toggles are true, we need to define again since
+ % mkautolang* redefines \blx@beglang
+ % In turn, \blx@beglang defines \blx@endlang and so \blx@beglangcite and
+ % \blx@endlangcite need redefining inside \blx@beglang after \blx@endlang
+ % has been defined.
+ \iftoggle{blx@autolangbib}
+ {\let\blx@beglangbib\blx@beglang}
+ {}%
+ \iftoggle{blx@autolangcite}
+ {\let\blx@beglangcite\blx@beglang}
+ {}%
+ \csuse{abx@extras@\blx@languagename}%
+ \csuse{abx@strings@\blx@languagename}%
+ \undef\blx@mkautolangbabel
+ \undef\blx@mkautolangpoly
+ \undef\blx@mknoautolang
+ % pick up the main document language as sortlocale if
+ % auto-detection is desired
+ \ifdefstring\blx@sortlocale{auto}
+ {\ifdef\blx@main@language% babel or polyglossia is loaded
+ {\edef\blx@sortlocale{\blx@main@language}}
+ {\def\blx@sortlocale{english}}}
+ {}%
+}
+
+
\begingroup
\@makeother\#
% \relax: gobble newline -> titletoc.sty
@@ -3994,8 +4022,8 @@
{\xifinlist\abx@field@langid\blx@cmksc@lang
{\blx@mksc@ii}
{\@firstofone}}
- {\ifdef\bbl@main@language
- {\xifinlist\bbl@main@language\blx@cmksc@lang
+ {\ifdef\blx@main@language
+ {\xifinlist\blx@main@language\blx@cmksc@lang
{\blx@mksc@ii}
{\@firstofone}}
{\xifinlist\blx@languagename\blx@cmksc@lang
@@ -5446,14 +5474,14 @@
% {<language>}{<exceptions>}
\newrobustcmd*{\DefineHyphenationExceptions}[2]{%
- \ifcsundef{l@#1}
+ \blx@ifhyphenationundef{#1}
{\blx@warn@nohyph{#1}}
{}%
\csgappto{blx@hook@hyph@#1}{\blx@hyphexcept{#1}{#2}}}
\@onlypreamble\DefineHyphenationExceptions
\def\blx@hyphexcept#1#2{%
- \ifcsundef{l@#1}
+ \blx@ifhyphenationundef{#1}
{\blx@warn@nohyph{#1}}
{\begingroup
\language\csname l@#1\endcsname\relax
@@ -6326,7 +6354,7 @@
\def\currentlang{\blx@languagename}
% {<language>}{<strings>}
-\def\blx@maplang#1#2{%
+\def\blx@maplang@babel#1#2{%
\csgappto{extras#1}{%
\blx@resetpunct
\csuse{abx@extras@#2}%
@@ -6335,6 +6363,19 @@
\blx@resetpunct
\csuse{abx@noextras@#2}}}
+\def\blx@maplang@polyglossia#1#2{%
+ \csgappto{blockextras@bbl@#1}{%
+ \blx@resetpunct
+ \csuse{abx@extras@#2}%
+ \csuse{abx@strings@#2}}%
+ \csgappto{inlinextras@bbl@#1}{%
+ \blx@resetpunct
+ \csuse{abx@extras@#2}%
+ \csuse{abx@strings@#2}}%
+ \csgappto{noextras@bbl@#1}{%
+ \blx@resetpunct
+ \csuse{abx@noextras@#2}}}
+
%% babel/polyglossia interface
\def\blx@beglang{\blx@clearlang\begingroup}
\def\blx@endlang{\endgroup}
@@ -6346,7 +6387,7 @@
\let\blx@hook@initlang\@empty
\let\blx@imc@mainlang\@empty
\def\blx@hyphenreset{%
- \ifcsundef{l@\blx@languagename}
+ \blx@ifhyphenationundef{\blx@languagename}
{}
{\language\csname l@\blx@languagename\endcsname\relax}%
\ifcsundef{\blx@languagename hyphenmins}
@@ -6364,7 +6405,7 @@
{\blx@error
{No default 'babel' language defined}
{You must define a default language for 'babel'}}
- {}%
+ {\let\blx@main@language\bbl@main@language}%
\pretocmd\select@language{\blx@langsetup{#1}}
{\ifdef\blx@thelangenv
{\def\blx@beglang{%
@@ -6381,7 +6422,7 @@
{\let\abx@field@langid\blx@forcelanguagename}
{}%
\let\blx@languagename\abx@field@langid% track global language
- \ifcsundef{l@\abx@field@langid}
+ \blx@ifhyphenationundef{\abx@field@langid}
{\blx@warn@nohyph{\abx@field@langid}}
{\blx@hook@initlang
\def\blx@endlang{%
@@ -6398,37 +6439,38 @@
\expandafter{\abx@field@langid}}}
{}}}
{}%
- \def\blx@langstrings{}%
- \def\blx@imc@mainlang{\select@language{\bbl@main@language}}%
- \blx@langsetup\bbl@main@language}
+ \def\blx@imc@mainlang{\select@language{\blx@main@language}}%
+ \blx@langsetup\blx@main@language}
{\blx@err@patch{'babel' package}%
\blx@mknoautolang}}
\gdef\blx@mkautolangpoly{%
- \ifundef\bbl@main@language
- {\blx@error
- {No default 'polyglossia' language defined}
- {You must define a default language for 'polyglossia'}}
- {}%
+ \ifundef\mainbabelname
+ {\ifundef\bbl@main@language
+ {\blx@error
+ {No default 'polyglossia' language defined}
+ {You must define a default language for 'polyglossia'}}
+ {\let\blx@main@language\bbl@main@language}}
+ {\let\blx@main@language\mainbabelname}%
\edef\blx@saved@underscore@catcode{\the\catcode`\_}%
\catcode`\_=11% polyglossia uses "_" as a letter
- \pretocmd\select@language{\blx@langsetup{#1}}
+ \pretocmd\select@language{\blx@langsetup{\babelname}}
{\ifdef\blx@thelangenv
{\def\blx@beglang{%
\blx@clearlang
\begingroup
- % Need to override all entries, regardless of if there is a langid
- % if language=<language> option is given
- \ifboolexpr { test {\ifdef\abx@field@langid }
- or
- test {\ifdef\blx@forcelanguagename} }
+ % Need to override all entries, regardless of if there is a
+ % langid if language=<language> option is given
+ \ifboolexpr { test {\ifdef\abx@field@langid }
+ or
+ test {\ifdef\blx@forcelanguagename} }
% override local langid if we forced it with
% language=<language> option
{\ifdef\blx@forcelanguagename
{\let\abx@field@langid\blx@forcelanguagename}
{}%
\let\blx@languagename\abx@field@langid% track global language
- \ifcsundef{l@\abx@field@langid}
+ \blx@ifhyphenationundef{\abx@field@langid}
{\blx@warn@nohyph{\abx@field@langid}}
{\blx@hook@initlang
\def\blx@endlang{%
@@ -6457,18 +6499,8 @@
\csuse{abx@strings@\abx@field@langid}}}}
{}}}
{}%
- % polyglossia needs this - it doesn't get the
- % strings automatically set for some reason
- \def\blx@langstrings{%
- \csuse{abx@extras@\languagename}%
- \csuse{abx@strings@\languagename}}%
- \def\blx@imc@mainlang{%
- \select@language{\bbl@main@language}%
- % These lines are equal to \blx@maplang
- \blx@resetpunct
- \csuse{abx@extras@\bbl@main@language}%
- \csuse{abx@strings@\bbl@main@language}}%
- \blx@langsetup\bbl@main@language}
+ \def\blx@imc@mainlang{\select@language{\blx@main@language}}%
+ \blx@langsetup\blx@main@language}
{\blx@err@patch{'polyglossia' package}%
\blx@mknoautolang}%
\catcode`\_=\blx@saved@underscore@catcode\relax}
@@ -9126,7 +9158,6 @@
\blx@safe@actives
\setkeys{blx@bhd}{#1}%
\blx@rest@actives
- \blx@langstrings
\blx@bibheading\blx@theheading\blx@thetitle
\endgroup}
@@ -9316,7 +9347,6 @@
% {<entrykey>,...}
\def\blx@bibliography#1{%
- \blx@langstrings
\blx@bibheading\blx@theheading\blx@thetitle
\blx@bibnote\blx@theprenote
\begingroup
@@ -9666,7 +9696,6 @@
\else
\@restonecolfalse
\fi
- \blx@langstrings
\blx@bibheading\blx@theheading\blx@thetitle
\blx@bibnote\blx@theprenote
\begingroup
@@ -11407,7 +11436,6 @@
{}
{\toggletrue{blx@citation}}%
\blx@blxinit
- \blx@langstrings
\citesetup
\blx@setsfcodes
\blx@postpunct@agroup
@@ -12888,6 +12916,7 @@
\blx@bcf@datamodel@fields
}%
\blx@bcf@datamodel@entryfields
+ \blx@bcf@datamodel@multiscript@entryfields
\blx@bcf@datamodel@constraints
}%
}%
@@ -13153,6 +13182,22 @@
\ifstrequal{#1}{true}
{\appto\blx@tempf{ map\string_final="1"}}
{}}
+\define@key{blx@sourcemap@step}{cited}[true]{% true|false
+ \ifstrequal{#1}{true}
+ {\appto\blx@tempf{ map\string_entrykey\string_cited="1"}}
+ {}}
+\define@key{blx@sourcemap@step}{nocited}[true]{% true|false
+ \ifstrequal{#1}{true}
+ {\appto\blx@tempf{ map\string_entrykey\string_nocited="1"}}
+ {}}
+\define@key{blx@sourcemap@step}{citedornocited}[true]{% true|false
+ \ifstrequal{#1}{true}
+ {\appto\blx@tempf{ map\string_entrykey\string_citedornocited="1"}}
+ {}}
+\define@key{blx@sourcemap@step}{allnocited}[true]{% true|false
+ \ifstrequal{#1}{true}
+ {\appto\blx@tempf{ map\string_entrykey\string_allnocited="1"}}
+ {}}
\define@key{blx@sourcemap@step}{fieldsource}{% characters
\eappto\blx@tempf{ map\string_field\string_source="#1"}}
\define@key{blx@sourcemap@step}{notfield}{% characters
@@ -15264,6 +15309,7 @@
\def\ResetDatamodelFields{\blx@warn@dm{ResetDatamodelFields}}
\def\ResetDatamodelEntryfields{\blx@warn@dm{ResetDatamodelEntryfields}}
\def\ResetDatamodelConstraints{\blx@warn@dm{ResetDatamodelConstraints}}
+ \renewcommand*{\DeclareDatamodelMultiscriptEntryfields}[1]{\blx@warn@dm{DeclareDatamodelMultiscriptEntryfields}}
\renewcommand*{\DeclareDatamodelEntrytypes}[2][]{\blx@warn@dm{DeclareDatamodelEntrytypes}}
\renewcommand*{\DeclareDatamodelFields}[2][]{\blx@warn@dm{DeclareDatamodelFields}}
\renewcommand*{\DeclareDatamodelEntryfields}[2][]{\blx@warn@dm{DeclareDatamodelEntryfields}}
diff --git a/macros/latex/contrib/biblatex/latex/blx-dm.def b/macros/latex/contrib/biblatex/latex/blx-dm.def
index c9097281b1..4cbdfa5bb8 100644
--- a/macros/latex/contrib/biblatex/latex/blx-dm.def
+++ b/macros/latex/contrib/biblatex/latex/blx-dm.def
@@ -26,6 +26,12 @@
~~~~<bcf:fields>\blx@nl
#1%
~~~~</bcf:fields>\blx@nl}
+\xdef\blx@xml@datamodel@multiscript@entryfields#1{%
+ ~~~~<bcf:multiscriptfields>\blx@nl
+ #1%
+ ~~~~</bcf:multiscriptfields>\blx@nl}
+\xdef\blx@xml@datamodel@multiscript@entryfields@field#1{%
+ ~~~~~~<bcf:field>#1</bcf:field>\blx@nl}
\xdef\blx@xml@datamodel@field#1#2{%
~~~~~~<bcf:field#1>#2</bcf:field>\blx@nl}
\xdef\blx@xml@datamodel@entryfields#1{%
@@ -83,6 +89,9 @@
\newrobustcmd*{\ResetDatamodelEntryfields}{%
\global\let\blx@bcf@datamodel@entryfields\@empty}
+\newrobustcmd*{\ResetDatamodelMultiscriptEntryfields}{%
+ \global\let\blx@bcf@datamodel@multiscript@entryfields\@empty}
+
\newrobustcmd*{\ResetDatamodelConstraints}{%
\global\let\blx@bcf@datamodel@constraints\@empty}
@@ -290,6 +299,15 @@
\define@key{blx@datamodel@constant}{type}{%
\def\blx@tempa{#1}}
+\newrobustcmd*{\DeclareDatamodelMultiscriptEntryfields}[1]{%
+ \begingroup
+ \let\blx@tempa\@empty
+ \def\do##1{%
+ \eappto\blx@tempa{\blx@xml@datamodel@multiscript@entryfields@field{##1}}}%
+ \docsvlist{#1}%
+ \xappto\blx@bcf@datamodel@multiscript@entryfields{\blx@xml@datamodel@multiscript@entryfields{\blx@tempa}}%
+ \endgroup}
+
\newrobustcmd*{\DeclareDatamodelEntryfields}[2][]{%
\begingroup
\let\blx@tempa\@empty
@@ -390,6 +408,7 @@
\DeclareDatamodelConstant[type=list]{gender}{sf,sm,sn,pf,pm,pn,pp}
\DeclareDatamodelConstant[type=list]{nameparts}{family,given,prefix,suffix}
\DeclareDatamodelConstant[type=list]{optiondatatypes}{boolean,integer,string,xml}
+\DeclareDatamodelConstant[type=list]{multiscriptforms}{default,transliteration,transcription,translation}
\DeclareDatamodelEntrytypes{
article,
@@ -1390,6 +1409,60 @@
type,
venue}
+\DeclareDatamodelMultiscriptEntryfields{
+ abstract,
+ addendum,
+ afterword,
+ annotator,
+ author,
+ bookauthor,
+ booksubtitle,
+ booktitle,
+ booktitleaddon,
+ chapter,
+ commentator,
+ editor,
+ editora,
+ editorb,
+ editorc,
+ foreword,
+ holder,
+ institution,
+ introduction,
+ issuesubtitle,
+ issuetitle,
+ journalsubtitle,
+ journaltitle,
+ location,
+ mainsubtitle,
+ maintitle,
+ maintitleaddon,
+ nameaddon,
+ note,
+ organization,
+ origlanguage,
+ origlocation,
+ origpublisher,
+ origtitle,
+ part,
+ publisher,
+ relatedstring,
+ series,
+ shortauthor,
+ shorteditor,
+ shorthand,
+ shortjournal,
+ shortseries,
+ shorttitle,
+ sortname,
+ sortshorthand,
+ sorttitle,
+ subtitle,
+ title,
+ titleaddon,
+ translator,
+ venue}
+
\DeclareDatamodelConstraints[
article,
book,
diff --git a/macros/latex/contrib/biblatex/latex/lbx/croatian.lbx b/macros/latex/contrib/biblatex/latex/lbx/croatian.lbx
index 597c80bf21..b3b92e03ac 100644
--- a/macros/latex/contrib/biblatex/latex/lbx/croatian.lbx
+++ b/macros/latex/contrib/biblatex/latex/lbx/croatian.lbx
@@ -2,10 +2,9 @@
[\abx@lbxid]
% Translator's note:
-% - Most translations have been made gender neutral,
-% as there's no intrinsic biblatex support for the opposite
+% Many translations have been made gender neutral as there's no intrinsic
+% biblatex support for the opposite. Thus "prijevod i obrada" instead of "prevoditelj/ica i urednik/ca"
-\DeclareRedundantLanguages{croatian}{croatian}
\DeclareBibliographyExtras{%
\protected\def\bibrangedash{\textendash\penalty\hyphenpenalty}%
@@ -24,11 +23,11 @@
{}
{\iffieldundef{#3}
{\mkbibmonth{\thefield{#2}}}
- {\lbx@cr@mkbibmonth{\thefield{#2}}}%
+ {\lbx@cr@mkbibmonth{\thefield{#2}}}% "srpanj 2019." or "31. srpnja 2019."
\iffieldundef{#1}{}{\space}}%
\iffieldbibstring{#1}
{\bibstring{\thefield{#1}}}
- {\dateeraprintpre{#1}\stripzeros{\thefield{#1}}}}%
+ {\dateeraprintpre{#1}\mkbibordinal{\thefield{#1}}}}%
\protected\def\mkbibdateshort#1#2#3{%
\iffieldundef{#3}
{}
@@ -40,7 +39,7 @@
\iffieldundef{#1}{}{\addnbthinspace}}%
\iffieldbibstring{#1}
{\bibstring{\thefield{#1}}}
- {\dateeraprintpre{#1}\mkyearzeros{\thefield{#1}}}}%
+ {\dateeraprintpre{#1}\mkbibordinal{\thefield{#1}}}}%
\savecommand\mkbibordedition
\savecommand\mkbibordseries
\def\mkbibordedition{\mkbibordinal}%
@@ -84,7 +83,7 @@
\restorecommand\mkbibordseries
}
-\NewBibliographyString{% Month name variants used after day
+\NewBibliographyString{% Month name variants used after day: "23. studenog 2019." but "studeni 2019."
datejanuary,
datefebruary,
datemarch,
@@ -262,122 +261,122 @@
{prijevod, bilje\v{s}ke i pogovor}},
translatorsanaf = {{prijevod, bilje\v{s}ke i pogovor}%
{prijevod, bilje\v{s}ke i pogovor}},
-% organizer = {{}{}},% FIXME: missing
-% organizers = {{}{}},% FIXME: missing
-% byorganizer = {{}{}},% FIXME: missing
- byauthor = {{autor\addcolon}{autor\addcolon}},% gender biased
- byeditor = {{obrada\addcolon}{ur\adddot}},%
- bycompiler = {{sastavlja\v{c}\addcolon}{sast\adddot}},% gender biased
- byredactor = {{redaktura\addcolon}{red\adddot}},
- byreviser = {{korektura\addcolon}{kor\adddot}},
-% byreviewer = {{}{}},% FIXME: missing
- byfounder = {{zapo\v{c}eo\addcolon}{zapo\v{c}eo\addcolon}},% gender biased
- bycontinuator = {{nastavio\addcolon}{nastavio\addcolon}},% gender biased
- bycollaborator = {{u suradnji s}{u sur\adddot s}},
- bytranslator = {{prijevod \lbx@lfromlang\addcolon}%
- {prev\adddot \lbx@sfromlang\addcolon}},
- bycommentator = {{komentari\addcolon}{komentari\addcolon}},
- byannotator = {{bilje\v{s}ke\addcolon}{bilje\v{s}ke\addcolon}},
- withcommentator = {{komentari\addcolon}{komentari\addcolon}},
- withannotator = {{bilje\v{s}ke\addcolon}{bilje\v{s}ke\addcolon}},
- withintroduction = {{uvod\addcolon}{uvod\addcolon}},
- withforeword = {{predgovor\addcolon}{predgovor\addcolon}},
- withafterword = {{pogovor\addcolon}{pogovor\addcolon}},
- byeditortr = {{prijevod \lbx@lfromlang\ i obrada\addcolon}%
- {prijevod \lbx@lfromlang\ i obrada\addcolon}},
- byeditorco = {{obrada i komentari\addcolon}%
- {obrada i komentari\addcolon}},
- byeditoran = {{obrada i bilje\v{s}ke\addcolon}%
- {obrada i bilje\v{s}ke\addcolon}},
- byeditorin = {{obrada i uvod\addcolon}%
- {obrada i uvod\addcolon}},
- byeditorfo = {{obrada i predgovor\addcolon}%
- {obrada i predgovor\addcolon}},
- byeditoraf = {{obrada i pogovor\addcolon}%
- {obrada i pogovor\addcolon}},
- byeditortrco = {{prijevod \lbx@lfromlang, obrada i komentari\addcolon}%
- {prijevod \lbx@lfromlang, obrada i komentari\addcolon}},
- byeditortran = {{prijevod \lbx@lfromlang, obrada i bilje\v{s}ke\addcolon}%
- {prijevod \lbx@lfromlang, obrada i bilje\v{s}ke\addcolon}},
- byeditortrin = {{prijevod \lbx@lfromlang, obrada i uvod\addcolon}%
- {prijevod \lbx@lfromlang, obrada i uvod\addcolon}},
- byeditortrfo = {{prijevod \lbx@lfromlang, obrada i predgovor\addcolon}%
- {prijevod \lbx@lfromlang, obrada i predgovor\addcolon}},
- byeditortraf = {{prijevod \lbx@lfromlang, obrada i pogovor\addcolon}%
- {prijevod \lbx@lfromlang, obrada i pogovor\addcolon}},
- byeditorcoin = {{obrada, uvod i komentari\addcolon}%
- {obrada, uvod i komentari\addcolon}},
- byeditorcofo = {{obrada, predgovor i komentari\addcolon}%
- {obrada, predgovor i komentari\addcolon}},
- byeditorcoaf = {{obrada, komentari i pogovor\addcolon}%
- {obrada, komentari i pogovor\addcolon}},
- byeditoranin = {{obrada, uvod i bilje\v{s}ke\addcolon}%
- {obrada, uvod i bilje\v{s}ke\addcolon}},
- byeditoranfo = {{obrada, predgovor i bilje\v{s}ke\addcolon}%
- {obrada, predgovor i bilje\v{s}ke\addcolon}},
- byeditoranaf = {{obrada, bilje\v{s}ke i pogovor\addcolon}%
- {obrada, bilje\v{s}ke i pogovor\addcolon}},
- byeditortrcoin = {{prijevod \lbx@lfromlang, obrada, uvod i komentari\addcolon}%
- {prijevod \lbx@lfromlang, obrada, uvod i komentari\addcolon}},
- byeditortrcofo = {{prijevod \lbx@lfromlang, obrada, predgovor i komentari\addcolon}%
- {prijevod \lbx@lfromlang, obrada, predgovor i komentari\addcolon}},
- byeditortrcoaf = {{prijevod \lbx@lfromlang, obrada, komentari i pogovor\addcolon}%
- {prijevod \lbx@lfromlang, obrada, komentari i pogovor\addcolon}},
- byeditortranin = {{prijevod \lbx@lfromlang, obrada, uvod i bilje\v{s}ke\addcolon}%
- {prijevod \lbx@lfromlang, obrada, uvod i bilje\v{s}ke\addcolon}},
- byeditortranfo = {{prijevod \lbx@lfromlang, obrada, predgovor i bilje\v{s}ke\addcolon}%
- {prijevod \lbx@lfromlang, obrada, predgovor i bilje\v{s}ke\addcolon}},
- byeditortranaf = {{prijevod \lbx@lfromlang, obrada, bilje\v{s}ke i pogovor\addcolon}%
- {prijevod \lbx@lfromlang, obrada, bilje\v{s}ke i pogovor\addcolon}},
- bytranslatorco = {{prijevod \lbx@lfromlang\ i komentari\addcolon}%
- {prijevod \lbx@lfromlang\ i komentari\addcolon}},
- bytranslatoran = {{prijevod \lbx@lfromlang\ i bilje\v{s}ke\addcolon}%
- {prijevod \lbx@lfromlang\ i bilje\v{s}ke\addcolon}},
- bytranslatorin = {{prijevod \lbx@lfromlang\ i uvod\addcolon}%
- {prijevod \lbx@lfromlang\ i uvod\addcolon}},
- bytranslatorfo = {{prijevod \lbx@lfromlang\ i predgovor\addcolon}%
- {prijevod \lbx@lfromlang\ i predgovor\addcolon}},
- bytranslatoraf = {{prijevod \lbx@lfromlang\ i pogovor\addcolon}%
- {prijevod \lbx@lfromlang\ i pogovor\addcolon}},
- bytranslatorcoin = {{prijevod \lbx@lfromlang, uvod i komentari\addcolon}%
- {prijevod \lbx@lfromlang, uvod i komentari\addcolon}},
- bytranslatorcofo = {{prijevod \lbx@lfromlang, predgovor i komentari\addcolon}%
- {prijevod \lbx@lfromlang, predgovor i komentari\addcolon}},
- bytranslatorcoaf = {{prijevod \lbx@lfromlang, komentari i pogovor\addcolon}%
- {prijevod \lbx@lfromlang, komentari i pogovor\addcolon}},
- bytranslatoranin = {{prijevod \lbx@lfromlang, uvod i bilje\v{s}ke\addcolon}%
- {prijevod \lbx@lfromlang, uvod i bilje\v{s}ke\addcolon}},
- bytranslatoranfo = {{prijevod \lbx@lfromlang, predgovor i bilje\v{s}ke\addcolon}%
- {prijevod \lbx@lfromlang, predgovor i bilje\v{s}ke\addcolon}},
- bytranslatoranaf = {{prijevod \lbx@lfromlang, bilje\v{s}ke i pogovor\addcolon}%
- {prijevod \lbx@lfromlang, bilje\v{s}ke i pogovor\addcolon}},
+ organizer = {{organizacija}{organizacija}},
+ organizers = {{organizacija}{organizacija}},
+ byorganizer = {{organizacija}{organizacija}},
+ byauthor = {{autor}{autor}},% gender biased
+ byeditor = {{obrada}{ur\adddot}},%
+ bycompiler = {{sastavlja\v{c}}{sast\adddot}},% gender biased
+ byredactor = {{redaktura}{red\adddot}},
+ byreviser = {{korektura}{kor\adddot}},
+ byreviewer = {{recenzija}{recenzija}},
+ byfounder = {{zapo\v{c}eo}{zapo\v{c}eo}},% gender biased
+ bycontinuator = {{nastavio}{nastavio}},% gender biased
+ bycollaborator = {{u suradnji s}{u sur\adddotspace s}},
+ bytranslator = {{prijevod \lbx@lfromlang}%
+ {prijevod \lbx@sfromlang}},
+ bycommentator = {{komentari}{komentari}},
+ byannotator = {{bilje\v{s}ke}{bilje\v{s}ke}},
+ withcommentator = {{komentari}{komentari}},
+ withannotator = {{bilje\v{s}ke}{bilje\v{s}ke}},
+ withintroduction = {{uvod}{uvod}},
+ withforeword = {{predgovor}{predgovor}},
+ withafterword = {{pogovor}{pogovor}},
+ byeditortr = {{prijevod \lbx@lfromlang\ i obrada}%
+ {prijevod \lbx@lfromlang\ i obrada}},
+ byeditorco = {{obrada i komentari}%
+ {obrada i komentari}},
+ byeditoran = {{obrada i bilje\v{s}ke}%
+ {obrada i bilje\v{s}ke}},
+ byeditorin = {{obrada i uvod}%
+ {obrada i uvod}},
+ byeditorfo = {{obrada i predgovor}%
+ {obrada i predgovor}},
+ byeditoraf = {{obrada i pogovor}%
+ {obrada i pogovor}},
+ byeditortrco = {{prijevod \lbx@lfromlang, obrada i komentari}%
+ {prijevod \lbx@lfromlang, obrada i komentari}},
+ byeditortran = {{prijevod \lbx@lfromlang, obrada i bilje\v{s}ke}%
+ {prijevod \lbx@lfromlang, obrada i bilje\v{s}ke}},
+ byeditortrin = {{prijevod \lbx@lfromlang, obrada i uvod}%
+ {prijevod \lbx@lfromlang, obrada i uvod}},
+ byeditortrfo = {{prijevod \lbx@lfromlang, obrada i predgovor}%
+ {prijevod \lbx@lfromlang, obrada i predgovor}},
+ byeditortraf = {{prijevod \lbx@lfromlang, obrada i pogovor}%
+ {prijevod \lbx@lfromlang, obrada i pogovor}},
+ byeditorcoin = {{obrada, uvod i komentari}%
+ {obrada, uvod i komentari}},
+ byeditorcofo = {{obrada, predgovor i komentari}%
+ {obrada, predgovor i komentari}},
+ byeditorcoaf = {{obrada, komentari i pogovor}%
+ {obrada, komentari i pogovor}},
+ byeditoranin = {{obrada, uvod i bilje\v{s}ke}%
+ {obrada, uvod i bilje\v{s}ke}},
+ byeditoranfo = {{obrada, predgovor i bilje\v{s}ke}%
+ {obrada, predgovor i bilje\v{s}ke}},
+ byeditoranaf = {{obrada, bilje\v{s}ke i pogovor}%
+ {obrada, bilje\v{s}ke i pogovor}},
+ byeditortrcoin = {{prijevod \lbx@lfromlang, obrada, uvod i komentari}%
+ {prijevod \lbx@lfromlang, obrada, uvod i komentari}},
+ byeditortrcofo = {{prijevod \lbx@lfromlang, obrada, predgovor i komentari}%
+ {prijevod \lbx@lfromlang, obrada, predgovor i komentari}},
+ byeditortrcoaf = {{prijevod \lbx@lfromlang, obrada, komentari i pogovor}%
+ {prijevod \lbx@lfromlang, obrada, komentari i pogovor}},
+ byeditortranin = {{prijevod \lbx@lfromlang, obrada, uvod i bilje\v{s}ke}%
+ {prijevod \lbx@lfromlang, obrada, uvod i bilje\v{s}ke}},
+ byeditortranfo = {{prijevod \lbx@lfromlang, obrada, predgovor i bilje\v{s}ke}%
+ {prijevod \lbx@lfromlang, obrada, predgovor i bilje\v{s}ke}},
+ byeditortranaf = {{prijevod \lbx@lfromlang, obrada, bilje\v{s}ke i pogovor}%
+ {prijevod \lbx@lfromlang, obrada, bilje\v{s}ke i pogovor}},
+ bytranslatorco = {{prijevod \lbx@lfromlang\ i komentari}%
+ {prijevod \lbx@lfromlang\ i komentari}},
+ bytranslatoran = {{prijevod \lbx@lfromlang\ i bilje\v{s}ke}%
+ {prijevod \lbx@lfromlang\ i bilje\v{s}ke}},
+ bytranslatorin = {{prijevod \lbx@lfromlang\ i uvod}%
+ {prijevod \lbx@lfromlang\ i uvod}},
+ bytranslatorfo = {{prijevod \lbx@lfromlang\ i predgovor}%
+ {prijevod \lbx@lfromlang\ i predgovor}},
+ bytranslatoraf = {{prijevod \lbx@lfromlang\ i pogovor}%
+ {prijevod \lbx@lfromlang\ i pogovor}},
+ bytranslatorcoin = {{prijevod \lbx@lfromlang, uvod i komentari}%
+ {prijevod \lbx@lfromlang, uvod i komentari}},
+ bytranslatorcofo = {{prijevod \lbx@lfromlang, predgovor i komentari}%
+ {prijevod \lbx@lfromlang, predgovor i komentari}},
+ bytranslatorcoaf = {{prijevod \lbx@lfromlang, komentari i pogovor}%
+ {prijevod \lbx@lfromlang, komentari i pogovor}},
+ bytranslatoranin = {{prijevod \lbx@lfromlang, uvod i bilje\v{s}ke}%
+ {prijevod \lbx@lfromlang, uvod i bilje\v{s}ke}},
+ bytranslatoranfo = {{prijevod \lbx@lfromlang, predgovor i bilje\v{s}ke}%
+ {prijevod \lbx@lfromlang, predgovor i bilje\v{s}ke}},
+ bytranslatoranaf = {{prijevod \lbx@lfromlang, bilje\v{s}ke i pogovor}%
+ {prijevod \lbx@lfromlang, bilje\v{s}ke i pogovor}},
and = {{i}{i}},
andothers = {{i drugi}{i dr\adddot}},
andmore = {{i drugi}{i dr\adddot}},
volume = {{sv\adddot}{sv\adddot}},
- volumes = {{sv\adddot}{sv\adddot}},
-% involumes = {{}{}},% FIXME: missing
+ volumes = {{sv\adddot}{sv\adddot}},% translator: 1 svezak, 2 sveska, 5 svezaka, 21 svezak
+ involumes = {{u}{u}},
jourvol = {{sv\adddot}{sv\adddot}},
jourser = {{serija}{serija}},
-% book = {{}{}},% FIXME: missing
-% part = {{}{}},% FIXME: missing
-% issue = {{}{}},% FIXME: missing
+ book = {{knjiga}{knj\adddot}},
+ part = {{dio}{dio}},
+ issue = {{izd\adddot}{izd\adddot}},
newseries = {{nova serija}{nova serija}},
oldseries = {{stara serija}{stara serija}},
edition = {{izdanje}{izdanje}},
reprint = {{pretisak}{pretisak}},
reprintof = {{pretisak}{pretisak}},
reprintas = {{iznova otisnuto kao}{iznova otisnuto kao}},
-% reprintfrom = {{}{}},% FIXME: missing
-% translationof = {{}{}},% FIXME: missing
-% translationas = {{}{}},% FIXME: missing
-% translationfrom = {{}{}},% FIXME: missing
-% reviewof = {{}{}},% FIXME: missing
-% origpubas = {{}{}},% FIXME: missing
-% origpubin = {{}{}},% FIXME: missing
-% astitle = {{}{}},% FIXME: missing
-% bypublisher = {{}{}},% FIXME: missing
- nodate = {{no date}{n\adddot d\adddot}},% FIXME
+ reprintfrom = {{iznova otisnut}{iznova otisnut}},
+ translationof = {{prijevod}{prijevod}},
+ translationas = {{prev\adddotspace kao}{prev\adddotspace kao}},
+ translationfrom = {{prijevod}{prijevod}},
+ reviewof = {{osvrt na}{osvrt na}},
+ origpubas = {{izvorno obj\adddotspace kao}{izv\adddotspace obj\adddotspace kao}},% gender neutral
+ origpubin = {{izvorno obj\adddot}{izv\adddotspace obj\adddot}},% gender neutral
+ astitle = {{kao}{kao}},
+ bypublisher = {{}{}},% translator: leave empty
+ nodate = {{bez datuma}{bez datuma}},
page = {{stranica}{str\adddot}},
pages = {{stranice}{str\adddot}},
column = {{stupac}{stupac}},
@@ -390,27 +389,27 @@
sections = {{odjeljci}{\S\S}},
paragraph = {{stavak}{st\adddot}},
paragraphs = {{stavci}{st\adddot}},
-% pagetotal = {{}{}},% FIXME: missing
-% pagetotals = {{}{}},% FIXME: missing
-% columntotal = {{}{}},% FIXME: missing
-% columntotals = {{}{}},% FIXME: missing
-% linetotal = {{}{}},% FIXME: missing
-% linetotals = {{}{}},% FIXME: missing
-% versetotal = {{}{}},% FIXME: missing
-% versetotals = {{}{}},% FIXME: missing
-% sectiontotal = {{}{}},% FIXME: missing
-% sectiontotals = {{}{}},% FIXME: missing
-% paragraphtotal = {{}{}},% FIXME: missing
-% paragraphtotals = {{}{}},% FIXME: missing
- in = {{}{}},% FIXME: check
+ pagetotal = {{str\adddot}{str\adddot}},
+ pagetotals = {{str\adddot}{str\adddot}},
+ columntotal = {{stupac}{stupac}},
+ columntotals = {{stupaca}{stupaca}},% translator: 1 stupac, 2 stupca, 5 stupaca (?!)
+ linetotal = {{linija}{lin\adddot}},
+ linetotals = {{linija}{lin\adddot}},
+ versetotal = {{stih}{st\adddot}},
+ versetotals = {{stihova}{st\adddot}},
+ sectiontotal = {{odjeljak}{odj\adddot}},
+ sectiontotals = {{odjeljaka}{odj\adddot}},
+ paragraphtotal = {{stavak}{st\adddot}},
+ paragraphtotals = {{stavaka}{st\adddot}},
+ in = {{}{}},% translator: leave empty, do not begin sentences with "U:"
inseries = {{u seriji}{u seriji}},
ofseries = {{iz serije}{iz serije}},
number = {{broj}{br\adddot}},
chapter = {{poglavlje}{pogl\adddot}},
-% bathesis = {{}{}},% FIXME: missing
+ bathesis = {{diplomski rad}{dipl\adddotspace rad}},
mathesis = {{magistarski rad}{mag\adddotspace rad}},
phdthesis = {{doktorska disertacija}{disertacija}},
-% candthesis = {{}{}},% FIXME: missing
+ candthesis = {{zavr\v{s}ni rad}{zavr\adddotspace rad}},
resreport = {{znanstveno izvje\v{s}\'{c}e}{zn\adddotspace izv\adddot}},
techreport = {{tehni\v{c}ko izvje\v{s}\'{c}e}{teh\adddotspace izv\adddot}},
software = {{softver}{softver}},
@@ -418,13 +417,13 @@
audiocd = {{audio CD}{audio CD}},
version = {{verzija}{verzija}},
url = {{adresa}{adresa}},
-% urlfrom = {{}{}},% FIXME: missing
+ urlfrom = {{dostupno na}{dost\adddotspace na}},
urlseen = {{pogledano}{pogledano}},
inpreparation = {{u pripremi}{u pripremi}},
submitted = {{predan}{predan}},
-% forthcoming = {{}{}},% FIXME: missing
+ forthcoming = {{prihva\'{c}en}{prihv\adddot}},
inpress = {{u tisku}{u tisku}},
-% prepublished = {{}{}},% FIXME: missing
+ prepublished = {{pred objavom}{pred obj\adddot}},
citedas = {{dalje citirano kao}{dalje citirano kao}},
thiscite = {{napose}{napose}},
seenote = {{vidi bilje\v{s}ku}{v\adddotspace bilj\adddot}},
@@ -474,58 +473,62 @@
datedecember = {{prosinca}{prosinca}},
langamerican = {{engleski}{engleski}},
langbrazilian = {{portugalski}{portugalski}},
-% langbulgarian = {{}{}},% FIXME: missing
-% langcatalan = {{}{}},% FIXME: missing
+ langbulgarian = {{bugarski}{bugarski}},
+ langcatalan = {{katalonski}{katalonski}},
langcroatian = {{hrvatski}{hrvatski}},
-% langczech = {{}{}},% FIXME: missing
+ langczech = {{\v{c}e\v{s}ki}{\v{c}e\v{s}ki}},
langdanish = {{danski}{danski}},
langdutch = {{nizozemski}{nizozemski}},
langenglish = {{engleski}{engleski}},
-% langestonian = {{}{}},% FIXME: missing
-% langfinnish = {{}{}},% FIXME: missing
+ langestonian = {{estonski}{estonski}},
+ langfinnish = {{finski}{finski}},
langfrench = {{francuski}{francuski}},
langgalician = {{galicijski}{galicijski}},
langgerman = {{njema\v{c}ki}{njema\v{c}ki}},
langgreek = {{gr\v{c}ki}{gr\v{c}ki}},
langhungarian = {{ma\dj arski}{ma\dj arski}},
langitalian = {{talijanski}{talijanski}},
+ langjapanese = {{japanski}{japanski}},
langlatin = {{latinski}{latinski}},
-% langlatvian = {{}{}},% FIXME: missing
+ langlatvian = {{letonski}{letonski}},
langnorwegian = {{norve\v{s}ki}{norve\v{s}ki}},
-% langpolish = {{}{}},% FIXME: missing
+ langpolish = {{poljski}{poljski}},
langportuguese = {{portugalski}{portugalski}},
-% langrussian = {{}{}},% FIXME: missing
-% langslovak = {{}{}},% FIXME: missing
-% langslovene = {{}{}},% FIXME: missing
+ langrussian = {{ruski}{ruski}},
+ langslovak = {{slova\v{c}ki}{slova\v{c}ki}},
+ langslovene = {{slovenski}{slovenski}},
langspanish = {{\v{s}panjolski}{\v{s}panjolski}},
langswedish = {{\v{s}vedski}{\v{s}vedski}},
+ langukrainian = {{ukrajinski}{ukrajinski}},
fromamerican = {{s engleskog}{s engleskog}},
frombrazilian = {{s portugalskog}{s portugalskog}},
-% frombulgarian = {{}{}},% FIXME: missing
-% fromcatalan = {{}{}},% FIXME: missing
+ frombulgarian = {{s bugarskog}{s bugarskog}},
+ fromcatalan = {{s katalonskog}{s katalonskog}},
fromcroatian = {{s hrvatskog}{s hrvatskog}},
-% fromczech = {{}{}},% FIXME: missing
+ fromczech = {{s \v{c}e\v{s}kog}{s \v{c}e\v{s}kog}},
fromdanish = {{s danskog}{s danskog}},
fromdutch = {{s nizozemskog}{s nizozemskog}},
fromenglish = {{s engleskog}{s engleskog}},
-% fromestonian = {{}{}},% FIXME: missing
-% fromfinnish = {{}{}},% FIXME: missing
+ fromestonian = {{s estonskog}{s estonskog}},
+ fromfinnish = {{s finskog}{s finskog}},
fromfrench = {{s francuskog}{s francuskog}},
fromgalician = {{s galicijskog}{s galicijskog}},
fromgerman = {{s njema\v{c}kog}{s njema\v{c}kog}},
fromgreek = {{s gr\v{c}kog}{s gr\v{c}kog}},
fromhungarian = {{s ma\dj arskog}{s ma\dj arskog}},
fromitalian = {{s talijanskog}{s talijanskog}},
+ fromjapanese = {{s japanskog}{s japanskog}},
fromlatin = {{s latinskog}{s latinskog}},
-% fromlatvian = {{}{}},% FIXME: missing
+ fromlatvian = {{s letonskog}{s letonskog}},
fromnorwegian = {{s norve\v{s}kog}{s norve\v{s}kog}},
-% frompolish = {{}{}},% FIXME: missing
+ frompolish = {{s poljskog}{s poljskog}},
fromportuguese = {{s portugalskog}{s portugalskog}},
-% fromrussian = {{}{}},% FIXME: missing
-% fromslovak = {{}{}},% FIXME: missing
-% fromslovene = {{}{}},% FIXME: missing
+ fromrussian = {{s ruskog}{s ruskog}},
+ fromslovak = {{sa slova\v{c}kog}{sa slova\v{c}kog}},
+ fromslovene = {{sa slovenskog}{sa slovenskog}},
fromspanish = {{sa \v{s}panjolskog}{sa \v{s}panjolskog}},
fromswedish = {{sa \v{s}vedskog}{sa \v{s}vedskog}},
+ fromukrainian = {{s ukrajinskog}{s ukrajinskog}},
countryde = {{Njema\v{c}ka}{DE}},
countryeu = {{Europska unija}{EU}},
countryep = {{Europska unija}{EP}},
@@ -551,17 +554,17 @@
library = {{biblioteka}{biblioteka}},
abstract = {{sa\v{z}etak}{sa\v{z}etak}},
annotation = {{bilje\v{s}ka}{bilje\v{s}ka}},
- commonera = {{n\adddot e\adddot}{n\adddot e\adddot}},
+ commonera = {{n\adddotspace e\adddot}{n\adddotspace e\adddot}},
beforecommonera = {{pr\adddotspace n\adddotspace e\adddot}{pr\adddotspace n\adddotspace e\adddot}},
annodomini = {{poslije Krista}{p\adddotspace Kr\adddot}},
beforechrist = {{prije Krista}{pr\adddotspace Kr\adddot}},
-% circa = {{}{}},% FIXME: missing
-% spring = {{}{}},% FIXME: missing
-% summer = {{}{}},% FIXME: missing
-% autumn = {{}{}},% FIXME: missing
-% winter = {{}{}},% FIXME: missing
- am = {{AM}{AM}},
- pm = {{PM}{PM}},
+ circa = {{oko}{cca\adddot}},
+ spring = {{prolje\'{c}e}{prolje\'{c}e}},
+ summer = {{ljeto}{ljeto}},
+ autumn = {{jesen}{jesen}},
+ winter = {{zima}{zima}},
+ am = {{prije podne}{AM}},
+ pm = {{poslije podne}{PM}},
}
\protected\gdef\lbx@cr@mkbibmonth#1{%