diff options
author | Karl Berry <karl@freefriends.org> | 2014-06-24 22:36:25 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2014-06-24 22:36:25 +0000 |
commit | 084a4d47bb53b4091f81ab09e8cff78d684c3107 (patch) | |
tree | b052ec042c85041920033ce9e6f42158b52fcc21 /Master/texmf-dist/tex/latex/biblatex | |
parent | 333c407d9e5338320d940a17eafbf69abd3017cc (diff) |
http://events.brucecareyrestaurants.com/bluehour (24jun14)
git-svn-id: svn://tug.org/texlive/trunk@34385 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex')
35 files changed, 1066 insertions, 544 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex/bbx/alphabetic.bbx b/Master/texmf-dist/tex/latex/biblatex/bbx/alphabetic.bbx index e8d45afd516..e2ef3b61486 100644 --- a/Master/texmf-dist/tex/latex/biblatex/bbx/alphabetic.bbx +++ b/Master/texmf-dist/tex/latex/biblatex/bbx/alphabetic.bbx @@ -27,7 +27,7 @@ {\endlist} {\item} -\defbibenvironment{shorthands} +\defbibenvironment{shorthand} {\list {\printfield[shorthandwidth]{shorthand}} {\setlength{\labelwidth}{\shorthandwidth}% diff --git a/Master/texmf-dist/tex/latex/biblatex/bbx/authortitle.bbx b/Master/texmf-dist/tex/latex/biblatex/bbx/authortitle.bbx index 135a70083ff..557a8e44704 100644 --- a/Master/texmf-dist/tex/latex/biblatex/bbx/authortitle.bbx +++ b/Master/texmf-dist/tex/latex/biblatex/bbx/authortitle.bbx @@ -27,7 +27,7 @@ {\endlist} {\item} -\defbibenvironment{shorthands} +\defbibenvironment{shorthand} {\list {\printfield[shorthandwidth]{shorthand}} {\setlength{\labelwidth}{\shorthandwidth}% diff --git a/Master/texmf-dist/tex/latex/biblatex/bbx/authoryear.bbx b/Master/texmf-dist/tex/latex/biblatex/bbx/authoryear.bbx index 5dc44a07b22..f4413275e39 100644 --- a/Master/texmf-dist/tex/latex/biblatex/bbx/authoryear.bbx +++ b/Master/texmf-dist/tex/latex/biblatex/bbx/authoryear.bbx @@ -145,7 +145,7 @@ {\endlist} {\item} -\defbibenvironment{shorthands} +\defbibenvironment{shorthand} {\list {\printfield[shorthandwidth]{shorthand}} {\setlength{\labelwidth}{\shorthandwidth}% diff --git a/Master/texmf-dist/tex/latex/biblatex/bbx/debug.bbx b/Master/texmf-dist/tex/latex/biblatex/bbx/debug.bbx index ba0d4422610..afd8b5e311e 100644 --- a/Master/texmf-dist/tex/latex/biblatex/bbx/debug.bbx +++ b/Master/texmf-dist/tex/latex/biblatex/bbx/debug.bbx @@ -19,7 +19,7 @@ {\endlist} {\item} -\defbibenvironment{shorthands} +\defbibenvironment{shorthand} {\list {\printfield[shorthandwidth]{shorthand}} {\setlength{\labelwidth}{8em}% @@ -90,7 +90,7 @@ \abx@dotypes \do{*} -\DeclareBibliographyDriver{shorthands}{% +\DeclareBibliographyDriver{shorthand}{% \texttt{\printfield{entrykey}}} \endinput diff --git a/Master/texmf-dist/tex/latex/biblatex/bbx/draft.bbx b/Master/texmf-dist/tex/latex/biblatex/bbx/draft.bbx index 0a63b386f80..e86e97ac041 100644 --- a/Master/texmf-dist/tex/latex/biblatex/bbx/draft.bbx +++ b/Master/texmf-dist/tex/latex/biblatex/bbx/draft.bbx @@ -22,7 +22,7 @@ {\endlist} {\item} -\defbibenvironment{shorthands} +\defbibenvironment{shorthand} {\list {\printfield[shorthandwidth]{shorthand}} {\setlength{\labelwidth}{\shorthandwidth}% diff --git a/Master/texmf-dist/tex/latex/biblatex/bbx/numeric.bbx b/Master/texmf-dist/tex/latex/biblatex/bbx/numeric.bbx index d70de1fd075..ddbd31b81c0 100644 --- a/Master/texmf-dist/tex/latex/biblatex/bbx/numeric.bbx +++ b/Master/texmf-dist/tex/latex/biblatex/bbx/numeric.bbx @@ -32,7 +32,7 @@ {\endlist} {\item} -\defbibenvironment{shorthands} +\defbibenvironment{shorthand} {\list {\printfield[shorthandwidth]{shorthand}} {\setlength{\labelwidth}{\shorthandwidth}% diff --git a/Master/texmf-dist/tex/latex/biblatex/bbx/reading.bbx b/Master/texmf-dist/tex/latex/biblatex/bbx/reading.bbx index f74a1d1d69a..f571a5a633c 100644 --- a/Master/texmf-dist/tex/latex/biblatex/bbx/reading.bbx +++ b/Master/texmf-dist/tex/latex/biblatex/bbx/reading.bbx @@ -30,7 +30,7 @@ {\endlist} {\bbx@item} -\defbibenvironment{shorthands} +\defbibenvironment{shorthand} {\list {\printfield[shorthandwidth]{shorthand}} {\setlength{\labelwidth}{\shorthandwidth}% diff --git a/Master/texmf-dist/tex/latex/biblatex/bbx/standard.bbx b/Master/texmf-dist/tex/latex/biblatex/bbx/standard.bbx index 80891b02f39..f81dd4aaaad 100644 --- a/Master/texmf-dist/tex/latex/biblatex/bbx/standard.bbx +++ b/Master/texmf-dist/tex/latex/biblatex/bbx/standard.bbx @@ -686,7 +686,7 @@ {}% \usebibmacro{finentry}} -\DeclareBibliographyDriver{shorthands}{% +\DeclareBibliographyDriver{shorthand}{% \usedriver {\DeclareNameAlias{sortname}{default}} {\thefield{entrytype}}% diff --git a/Master/texmf-dist/tex/latex/biblatex/biblatex.def b/Master/texmf-dist/tex/latex/biblatex/biblatex.def index 9566dd7b057..497e26a1827 100644 --- a/Master/texmf-dist/tex/latex/biblatex/biblatex.def +++ b/Master/texmf-dist/tex/latex/biblatex/biblatex.def @@ -8,7 +8,7 @@ % Generic formatting commands and hooks % ------------------------------------------------------------------ -% Used in citations, bibliography, list of shorthands +% Used in citations, bibliography and bibliography lists \newcommand*{\mkbibnamefirst}[1]{#1} \newcommand*{\mkbibnamelast}[1]{#1} @@ -16,7 +16,7 @@ \newcommand*{\mkbibnameaffix}[1]{#1} \newcommand*{\bibellipsis}{[\textellipsis\unkern]\midsentence} -% Delimiters used in citations, bibliography, list of shorthands +% Delimiters used in citations, bibliography and bibliography lists \newcommand*{\multinamedelim}{\addcomma\space} \newcommand*{\finalnamedelim}{% @@ -74,7 +74,7 @@ \newcounter{textcitemaxnames} \setcounter{textcitemaxnames}{0} -% Used in the bibliography and the list of shorthands +% Used in the bibliography and bibliography lists \newcommand*{\newunitpunct}{\addperiod\space} \newcommand*{\entrysetpunct}{\addsemicolon\space} @@ -108,7 +108,7 @@ \newcommand*{\bibindexinithyphendelim}{.-} % \bibsetup is a generic hook controlling the (low-level) layout of -% the bibliography and the list of shorthands. The default +% the bibliography and bibliography lists. The default % definition should work fine in most cases. \newcommand*{\bibsetup}{% @@ -190,7 +190,7 @@ % after hyphens and adjusts \Urlmuskip to add some stretchability % to URLs. -% The default font of the bibliography and the list of shorthands. +% The default font of the bibliography and the bibliography lists. % We simply reset the current font to the global defaults. \newcommand*{\bibfont}{\normalfont\normalsize} @@ -344,7 +344,7 @@ \DeclareFieldFormat{citeurl}{\url{#1}} -% Used in the bibliography and the list of shorthands +% Used in the bibliography and bibliography lists \DeclareFieldFormat{doi}{% \mkbibacro{DOI}\addcolon\space @@ -1776,21 +1776,21 @@ \defbibheading{bibliography}[\refname]{% \section*{#1}% \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} - \defbibheading{shorthands}[\losname]{% + \defbibheading{biblist}[\biblistname]{% \section*{#1}% \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibintoc}[\refname]{% \section*{#1}% \addcontentsline{toc}{section}{#1}% \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} - \defbibheading{losintoc}[\losname]{% + \defbibheading{biblistintoc}[\biblistname]{% \section*{#1}% \addcontentsline{toc}{section}{#1}% \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibnumbered}[\refname]{% \section{#1}% \if@twoside\markright{\MakeUppercase{#1}}\fi} - \defbibheading{losnumbered}[\losname]{% + \defbibheading{biblistnumbered}[\biblistname]{% \section{#1}% \if@twoside\markright{\MakeUppercase{#1}}\fi} \defbibheading{subbibliography}[\refname]{% @@ -1805,21 +1805,21 @@ \defbibheading{bibliography}[\bibname]{% \chapter*{#1}% \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} - \defbibheading{shorthands}[\losname]{% + \defbibheading{biblist}[\biblistname]{% \chapter*{#1}% \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibintoc}[\bibname]{% \chapter*{#1}% \addcontentsline{toc}{chapter}{#1}% \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} - \defbibheading{losintoc}[\losname]{% + \defbibheading{biblistintoc}[\biblistname]{% \chapter*{#1}% \addcontentsline{toc}{chapter}{#1}% \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}} \defbibheading{bibnumbered}[\bibname]{% \chapter{#1}% \if@twoside\markright{\MakeUppercase{#1}}\fi} - \defbibheading{losnumbered}[\losname]{% + \defbibheading{biblistnumbered}[\biblistname]{% \chapter{#1}% \if@twoside\markright{\MakeUppercase{#1}}\fi} \defbibheading{subbibliography}[\refname]{% @@ -1840,7 +1840,7 @@ {\addsec{#1}} {\section*{#1}}% \markboth{#1}{#1}}} - \defbibheading{shorthands}[\losname]{% + \defbibheading{biblist}[\biblistname]{% \ifkomabibtotocnumbered {\section{#1}} {\ifkomabibtotoc @@ -1850,13 +1850,13 @@ \defbibheading{bibintoc}[\refname]{% \addsec{#1}% \markboth{#1}{#1}} - \defbibheading{losintoc}[\losname]{% + \defbibheading{biblistintoc}[\biblistname]{% \addsec{#1}% \markboth{#1}{#1}} \defbibheading{bibnumbered}[\refname]{% \section{#1}% \markboth{\sectionmarkformat#1}{\sectionmarkformat#1}} - \defbibheading{losnumbered}[\losname]{% + \defbibheading{biblistnumbered}[\biblistname]{% \section{#1}% \markboth{\sectionmarkformat#1}{\sectionmarkformat#1}} \defbibheading{subbibliography}[\refname]{% @@ -1875,7 +1875,7 @@ {\addchap{#1}} {\chapter*{#1}}% \markboth{#1}{#1}}} - \defbibheading{shorthands}[\losname]{% + \defbibheading{biblist}[\biblistname]{% \ifkomabibtotocnumbered {\chapter{#1}} {\ifkomabibtotoc @@ -1885,13 +1885,13 @@ \defbibheading{bibintoc}[\bibname]{% \addchap{#1}% \markboth{#1}{#1}} - \defbibheading{losintoc}[\losname]{% + \defbibheading{biblistintoc}[\biblistname]{% \addchap{#1}% \markboth{#1}{#1}} \defbibheading{bibnumbered}[\bibname]{% \chapter{#1}% \markboth{\chaptermarkformat#1}{\chaptermarkformat#1}} - \defbibheading{losnumbered}[\losname]{% + \defbibheading{biblistnumbered}[\biblistname]{% \chapter{#1}% \markboth{\chaptermarkformat#1}{\chaptermarkformat#1}} \defbibheading{subbibliography}[\refname]{% @@ -1912,7 +1912,7 @@ \addcontentsline{toc}{section}{#1}} {}% \markboth{\memUChead{#1}}{\memUChead{#1}}} - \defbibheading{shorthands}[\losname]{% + \defbibheading{biblist}[\biblistname]{% \section*{#1}% \ifmemoirbibintoc {\phantomsection @@ -1924,14 +1924,14 @@ \phantomsection \addcontentsline{toc}{section}{#1}% \markboth{\memUChead{#1}}{\memUChead{#1}}} - \defbibheading{losintoc}[\losname]{% + \defbibheading{biblistintoc}[\biblistname]{% \section*{#1}% \phantomsection \addcontentsline{toc}{section}{#1}% \markboth{\memUChead{#1}}{\memUChead{#1}}} \defbibheading{bibnumbered}[\refname]{% \section{#1}} - \defbibheading{losnumbered}[\losname]{% + \defbibheading{biblistnumbered}[\biblistname]{% \section{#1}} \defbibheading{subbibliography}[\refname]{% \subsection*{#1}% @@ -1957,7 +1957,7 @@ \addcontentsline{toc}{chapter}{#1}} {}% \markboth{\memUChead{#1}}{\memUChead{#1}}} - \defbibheading{shorthands}[\losname]{% + \defbibheading{biblist}[\biblistname]{% \chapter*{#1}% \ifmemoirbibintoc {\phantomsection @@ -1969,7 +1969,7 @@ \phantomsection \addcontentsline{toc}{chapter}{#1}% \markboth{\memUChead{#1}}{\memUChead{#1}}} - \defbibheading{losintoc}[\losname]{% + \defbibheading{biblistintoc}[\biblistname]{% \chapter*{#1}% \phantomsection \addcontentsline{toc}{chapter}{#1}% @@ -1977,7 +1977,7 @@ \defbibheading{bibnumbered}[\bibname]{% \chapter{#1}% \if@twoside\markright{\memUChead{#1}}\fi} - \defbibheading{losnumbered}[\losname]{% + \defbibheading{biblistnumbered}[\biblistname]{% \chapter{#1}% \if@twoside\markright{\memUChead{#1}}\fi} \defbibheading{subbibliography}[\refname]{% @@ -2751,11 +2751,14 @@ \newbibmacro*{date}{\printdate} \newbibmacro*{url+urldate}{% - \printfield{url}% + \usebibmacro{url}% \iffieldundef{urlyear} {} {\setunit*{\addspace}% - \printurldate}} + \usebibmacro{urldate}}} + +\newbibmacro*{url}{\printfield{url}} +\newbibmacro*{urldate}{\printurldate} \newbibmacro*{pageref}{% \iflistundef{pageref} diff --git a/Master/texmf-dist/tex/latex/biblatex/biblatex.sty b/Master/texmf-dist/tex/latex/biblatex/biblatex.sty index f8c46beb90e..a5454a3791a 100644 --- a/Master/texmf-dist/tex/latex/biblatex/biblatex.sty +++ b/Master/texmf-dist/tex/latex/biblatex/biblatex.sty @@ -3,8 +3,8 @@ %% % Set up the version strings here, so they are the same for both branches -\def\abx@date{2013/11/25} -\def\abx@version{2.8a} +\def\abx@date{2014/06/24} +\def\abx@version{2.9a} \def\abx@bbxid{\abx@date\space v\abx@version\space biblatex bibliography style (PK/JW/AB)} \def\abx@cbxid{\abx@date\space v\abx@version\space biblatex citation style (PK/JW/AB)} \def\abx@lbxid{\abx@date\space v\abx@version\space biblatex localization (PK/JW/AB)} @@ -12,11 +12,11 @@ % This is not updated by build script as the controlfile version % does not necessarily change with the package version. % This is used when writing the .bcf -\def\blx@bcfversion{2.5} +\def\blx@bcfversion{2.6} % This is not updated by build script as the bbl version % does not necessarily change with the package version. % This is used when checking the .bbl -\def\blx@bblversion{2.3} +\def\blx@bblversion{2.4} \NeedsTeXFormat{LaTeX2e}[2005/12/01] \ProvidesPackage{biblatex} @@ -88,7 +88,7 @@ {\RequirePackage{biblatex2}} %% Copyright (C) 2006-2011 Philipp Lehman -%% 2012 Philip Kime, Audrey Boruvka, Joseph Wright +%% 2012-2014 Philip Kime, Audrey Boruvka, Joseph Wright %% %% It may be distributed and/or modified under the conditions of %% the LaTeX Project Public License (LPPL), either version 1.3c of diff --git a/Master/texmf-dist/tex/latex/biblatex/biblatex1.sty b/Master/texmf-dist/tex/latex/biblatex/biblatex1.sty index 3e529ac3280..fecfbd515a0 100644 --- a/Master/texmf-dist/tex/latex/biblatex/biblatex1.sty +++ b/Master/texmf-dist/tex/latex/biblatex/biblatex1.sty @@ -69,6 +69,13 @@ amsrefs,apacite,babelbib,backref,bibtopic,bibunits,chapterbib, cite,citeref,drftcite,footbib,inlinebib,jurabib,mcite,mciteplus, mlbib,multibbl,multibib,natbib,opcit,overcite,splitbib,ucs}% + \def\blx@langstrings{}% + % Set up sortlocale defaults + \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} {\ifboolexpr{ not test {\iftoggle{blx@autolangbib}} @@ -4574,6 +4581,7 @@ \do{langpolish}% \do{langportuguese}% \do{langrussian}% + \do{langslovene}% \do{langspanish}% \do{langswedish}% \do{fromamerican}% @@ -4594,6 +4602,7 @@ \do{frompolish}% \do{fromportuguese}% \do{fromrussian}% + \do{fromslovene}% \do{fromspanish}% \do{fromswedish}% \do{countryde}% @@ -4711,8 +4720,8 @@ {\letcs\refname{\abx@str @references}} {\let\refname\@empty}% \ifcsdef{\abx@str @shorthands} - {\letcs\losname{\abx@str @shorthands}} - {\let\losname\@empty}}} + {\letcs\biblistname{\abx@str @shorthands}} + {\let\biblistname\@empty}}} \def\blx@defbibstrings@i#1{% \ifcsdef{abx@lstr@#1} @@ -5079,6 +5088,7 @@ \csname\blx@thelangenv\expandafter\endcsname \expandafter{\abx@field@langid}}}}} {}% + \def\blx@langstrings{}% \def\blx@imc@mainlang{\select@language{\bbl@main@language}}% \blx@langsetup\bbl@main@language} {\blx@err@patch{'babel' package}% @@ -5117,6 +5127,11 @@ \csuse{abx@extras@\abx@field@langid}% \csuse{abx@strings@\abx@field@langid}}}}} {}% + % polyglossia needs this - it doesn't get the + % strings by 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}}% \blx@langsetup\bbl@main@language} {\blx@err@patch{'polyglossia' package}% @@ -6285,7 +6300,7 @@ {\endlist} {\item} -\defbibenvironment{shorthands} +\defbibenvironment{shorthand} {\list{\thefield{shorthand}}{% \labelwidth\shorthandwidth \labelsep\biblabelsep @@ -6640,6 +6655,7 @@ \blx@safe@actives \setkeys{blx@bhd}{#1}% \blx@rest@actives + \blx@langstrings \blx@bibheading\blx@theheading\blx@thetitle \endgroup} @@ -6792,6 +6808,7 @@ % {<entrykey>,...} \def\blx@bibliography{% + \blx@langstrings \blx@bibheading\blx@theheading\blx@thetitle \blx@bibnote\blx@theprenote \begingroup @@ -6993,8 +7010,8 @@ \toggletrue{blx@tempa}% \toggletrue{blx@tempb}% \letcs\blx@tempa{blx@losh@\the\c@refsection}% - \def\blx@theheading{shorthands}% - \def\blx@theenv{shorthands}% + \def\blx@theheading{biblist}% + \def\blx@theenv{shorthand}% \let\blx@theprenote\@empty \let\blx@thepostnote\@empty \let\blx@thetitle\@empty @@ -7022,6 +7039,7 @@ \else \@restonecolfalse \fi + \blx@langstrings \blx@bibheading\blx@theheading\blx@thetitle \blx@bibnote\blx@theprenote \begingroup @@ -7066,13 +7084,13 @@ \blx@beglangbib \bibsentence \blx@pagetracker - \blx@driver{shorthands}% + \blx@driver{shorthand}% \blx@postpunct \blx@endlangbib}% \endgroup} {}} -\DeclareBibliographyDriver{shorthands}{% +\DeclareBibliographyDriver{shorthand}{% \iffieldundef{shorttitle} {\printfield{title}} {\printfield{shorttitle}}} @@ -8904,7 +8922,11 @@ \protected\long\def\blx@imc@mkbibbold#1{% \textbf{#1}\blx@imc@setpunctfont\textbf} -\blx@regimcs{\mkbibquote \mkbibemph \mkbibbold} +\newrobustcmd*{\mkbibitalic}{\textit} +\protected\long\def\blx@imc@mkbibitalic#1{% + \textit{#1}\blx@imc@setpunctfont\textit} + +\blx@regimcs{\mkbibquote \mkbibemph \mkbibbold \mkbibitalic} \newcommand*{\bibleftparen}{\blx@postpunct(} \newcommand*{\bibrightparen}{\blx@postpunct)\midsentence} diff --git a/Master/texmf-dist/tex/latex/biblatex/biblatex2.sty b/Master/texmf-dist/tex/latex/biblatex/biblatex2.sty index e9b49c817f2..41d9068dfb5 100644 --- a/Master/texmf-dist/tex/latex/biblatex/biblatex2.sty +++ b/Master/texmf-dist/tex/latex/biblatex/biblatex2.sty @@ -65,6 +65,13 @@ amsrefs,apacite,babelbib,backref,bibtopic,bibunits,chapterbib, cite,citeref,drftcite,footbib,inlinebib,jurabib,mcite,mciteplus, mlbib,multibbl,multibib,natbib,opcit,overcite,splitbib,ucs}% + \def\blx@langstrings{}% + % Set up sortlocale defaults + \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} {\ifboolexpr{ not test {\iftoggle{blx@autolangbib}} @@ -211,7 +218,7 @@ {\blx@err@patch{floats}}% \ifdef\TX@endtabularx % tabularx/memoir {\pretocmd\TX@endtabularx - {\addtocounter{tabx@nest}{1}}% track nestes tabularx environments + {\addtocounter{tabx@nest}{1}}% track nested tabularx environments {} {\blx@err@patch{'tabularx'}}% % no need to conditionalise on top-level tabx as the search/replace @@ -219,14 +226,14 @@ \patchcmd\TX@endtabularx {\edef\TX@ckpt{\cl@@ckpt}} {\edef\TX@ckpt{\cl@@ckpt\abx@resttrackers}% - \abx@savetrackers} + \abx@savetrackers} {} {\blx@err@patch{'tabularx'}}% \apptocmd\TX@endtabularx {\ifnum\value{tabx@nest}=1% only clear trackers for top-level tabularx - \abx@cleartrackers - \fi - \addtocounter{tabx@nest}{-1}} + \abx@cleartrackers + \fi + \addtocounter{tabx@nest}{-1}} {} {\blx@err@patch{'tabularx'}}} {}% @@ -410,7 +417,6 @@ \newlength{\labelnumberwidth} \newlength{\labelalphawidth} -\newlength{\shorthandwidth} \newlength{\biblabelsep} \ifdef\bibitemsep % memoir {} @@ -466,7 +472,7 @@ \newtoggle{blx@setonly} \newtoggle{blx@dataonly} \newtoggle{blx@skipbib} -\newtoggle{blx@skiplos} +\newtoggle{blx@skipbiblist} \newtoggle{blx@skiplab} \newtoggle{blx@citation} \newtoggle{blx@bibliography} @@ -480,8 +486,8 @@ \global\let\blx@cites\@empty \global\let\blx@sortschemes\@empty \global\let\blx@lastsortschemes\@empty -\global\let\blx@sortschemeslos\@empty -\global\let\blx@lastsortschemeslos\@empty +\global\let\blx@biblists\@empty +\global\let\blx@lastbiblists\@empty \global\let\blx@lastcites\@empty \global\let\blx@localnumaux\@empty @@ -516,6 +522,9 @@ \blx@idemreset@force \blx@opcitreset@force \blx@loccitreset@force + % List to track all aliases in a section. We need to output all aliases + % to the .bcf every time so that they are visible to biber + \global\cslet{blx@keyaliases@\the\c@refsection}\@empty \ifcsundef{blx@segm@\the\c@refsection @\the\c@refsegment} {\global\cslet{blx@segm@\the\c@refsection @\the\c@refsegment}\@empty} {}} @@ -542,7 +551,6 @@ \fi} % {<field>} => \do{<item1>}\do{<item2>}... - \def\blx@imc@docsvfield#1{% \blx@imc@iffieldundef{#1} {} @@ -551,7 +559,6 @@ \csname abx@field@#1\endcsname}}} % {<handler>}{<field>} => <handler>{<item1>}<handler>{<item2>}... - \def\blx@imc@forcsvfield#1#2{% \blx@imc@iffieldundef{#2} {} @@ -564,7 +571,6 @@ \blx@regimcs{\docsvfield \forcsvfield} % {<list>|<listmacro>} - \protected\long\def\blx@listloop#1{% \expandafter\blx@listloop@i#1|&} \long\def\blx@listloop@i#1|{% @@ -578,7 +584,6 @@ \undef\blx@done} % {<listmacro>}{<listcsname>} => matches in <listmacro> - \protected\def\blx@filter#1#2{% \def\do##1{% \ifinlistcs{##1}{#2} @@ -594,7 +599,6 @@ % of filtering for cite sorting has the side-effect of stripping % duplicates like \cite{foo,foo} but we need then to keep citetotal % in sync. - \protected\def\blx@filtercitesort#1#2{% \blx@tempcnta\z@ \def\do##1{% @@ -605,7 +609,6 @@ \blx@runfilter#1} % {<listmacro>}{<listcsname>} => neg. matches in <listmacro> - \protected\def\blx@notfilter#1#2{% \def\do##1{% \ifinlistcs{##1}{#2} @@ -619,7 +622,6 @@ #1\let\do\noexpand} % {<code>}{<string>} => <code>{<string>} - \protected\def\blx@xsanitizeafter#1#2{% \begingroup \abx@hook@xsanitize @@ -633,7 +635,6 @@ \let\protect\string} % {<code>}{<string>} => <code>{<string>} - \begingroup \catcode`\<=\active \catcode`\>=\active @@ -665,7 +666,6 @@ \endgroup % {<file>}{<message>}{<preload>}{<postload>}{<success>}{<failure>} - \protected\long\def\blx@inputonce#1#2#3#4#5#6{% \ifcsundef{blx@file@#1} {\blx@info@noline{Trying to load #2..}% @@ -679,7 +679,6 @@ {#5}} % {<write>}{<precode>}{<string>} - \protected\def\blx@auxwrite#1#2#3{% \if@filesw \begingroup @@ -691,7 +690,6 @@ \fi} % {<file>}{<signature>}{<true>}{<false>} - \def\blx@ifsigned#1#2{% \begingroup \let\blx@tempa\@firstoftwo @@ -736,7 +734,6 @@ \detokenize{" xmlns:bcf="https://sourceforge.net/projects/biblatex">}} % {<true>}{<false>} - \newrobustcmd*{\lbx@ifutfinput}{\ifboolexpr{% test {\ifdefstring\inputencodingname{utf8}} or @@ -937,8 +934,8 @@ \def\blx@warn@bibempty{% \@latex@warning{Empty bibliography}} -\def\blx@warn@losempty{% - \@latex@warning{Empty list of shorthands}} +\def\blx@warn@biblistempty#1{% + \@latex@warning{Empty biblist '#1'}} \def\blx@inf@refsec{% \blx@info{Reference section=\the\c@refsection}}% @@ -1626,7 +1623,6 @@ %% Style definition % {<bibstyle>} - \newrobustcmd*{\RequireBibliographyStyle}[1]{% \blx@inputonce{#1.bbx}{bibliography style '#1'}{}{}{} {\blx@error @@ -1635,18 +1631,15 @@ \@onlypreamble\RequireBibliographyStyle % {<code>} - \newrobustcmd*{\InitializeBibliographyStyle}{\appto\blx@hook@bbxinit} \@onlypreamble\InitializeBibliographyStyle % {<entry type>}{<driverdef>} - \newrobustcmd*{\DeclareBibliographyDriver}[1]{% \long\csdef{blx@bbx@#1}} \@onlypreamble\DeclareBibliographyDriver % {<entry type>} - \def\blx@driver#1{% \ifcsdef{blx@bbx@#1} {\csuse{blx@bbx@#1}} @@ -1662,18 +1655,15 @@ and there is no fallback driver either}}}} % {<type>}{<true>}{<false>} - \def\blx@imc@ifdriver#1{\ifcsdef{blx@bbx@#1}} % {<alias>}{<type>} - \newrobustcmd*{\DeclareBibliographyAlias}[2]{% \csedef{blx@bbx@#1}{% \expandafter\noexpand\csname blx@bbx@#2\endcsname}} \@onlypreamble\DeclareBibliographyAlias % {<key>}[<value>]{<code>} - \newrobustcmd*{\DeclareBibliographyOption}[1]{% \@ifnextchar[%] {\blx@defbibopt{#1}} @@ -1689,7 +1679,6 @@ {\blx@err@optdef{#1}}} % {<key>}[<value>]{<code>} - \newrobustcmd*{\DeclareTypeOption}[1]{% \@ifnextchar[%] {\blx@deftypeopt{#1}} @@ -1703,7 +1692,6 @@ {\blx@err@optdef{#1}}} % {<key>}[<value>]{<code>} - \newrobustcmd*{\DeclareEntryOption}[1]{% \@ifnextchar[%] {\blx@defentryopt{#1}} @@ -1717,7 +1705,6 @@ {\blx@err@optdef{#1}}} %% Auxiliary commands - \newrobustcmd*{\citereset}{% \csuse{blx@hook@cbxinit}% \@ifstar @@ -1756,7 +1743,6 @@ {}} % {<name>} - \newrobustcmd*{\savebibmacro}[1]{% \blx@save{abx@macro@\detokenize{#1}}} @@ -1764,7 +1750,6 @@ \blx@restore{abx@macro@\detokenize{#1}}} % {<name>}[<args>][<optarg>]{<definition>} - \newrobustcmd*{\newbibmacro}{% \@star@or@long\blx@newbibmacro} @@ -1794,7 +1779,6 @@ \expandafter#1\csname abx@macro@\detokenize{#2}\endcsname} % {<name>} - \newrobustcmd*{\usebibmacro}{% \@ifstar {\blx@usebibmacro@i} @@ -1811,12 +1795,10 @@ {\csuse{abx@macro@#1}}} % {<name>}{<true>}{<false>} - \def\blx@imc@ifbibmacroundef#1{% \ifcsundef{abx@macro@#1}} % {<field>} - \def\blx@imc@thefield#1{\csuse{abx@field@#1}} \def\blx@imc@strfield#1{% @@ -1828,26 +1810,21 @@ \def\blx@imc@csfield#1{\usefield{\unexpanded}{#1}} % {<command>}{<field>} - \def\blx@imc@usefield#1#2{% \expandafter\expandafter\expandafter#1% \expandafter\expandafter\expandafter{\csname abx@field@#2\endcsname}} % {<plainlist>} - \def\blx@imc@thelist#1{\csuse{abx@list@#1}} % {<namelist>} - \def\blx@imc@thename#1{\csuse{abx@name@#1}} % {<field>} - \protected\def\blx@imc@clearfield#1{% \csundef{abx@field@#1}} % {<plainlist>} - \protected\def\blx@imc@clearlist#1{% \ifcsundef{abx@list@#1} {} @@ -1856,7 +1833,6 @@ \csname c@#1\endcsname\z@}} % {<namelist>} - \protected\def\blx@imc@clearname#1{% \ifcsundef{abx@name@#1} {} @@ -1865,76 +1841,61 @@ \csname c@#1\endcsname\z@}} % {<field>}{<macro>} - \protected\def\blx@imc@restorefield#1{\cslet{abx@field@#1}} % {<plainlist>}{<macro>} - \protected\def\blx@imc@restorelist#1{\cslet{abx@list@#1}} % {<namelist>}{<macro>} - \protected\def\blx@imc@restorename#1{\cslet{abx@name@#1}} % {<field>}{<macro>} - \protected\def\blx@imc@savefield{% \@ifstar{\blx@savedata{field}}{\global\blx@savedata{field}}} \def\blx@savedata#1#2#3{\letcs#3{abx@#1@#2}} % {<plainlist>}{<macro>} - \protected\def\blx@imc@savelist{% \@ifstar{\blx@savedata{list}}{\global\blx@savedata{list}}} % {<namelist>}{<macro>} - \protected\def\blx@imc@savename{% \@ifstar{\blx@savedata{name}}{\global\blx@savedata{name}}} % {<field>}{<csname>} - \protected\def\blx@imc@savefieldcs{% \@ifstar{\blx@savedatacs{field}}{\global\blx@savedatacs{field}}} \def\blx@savedatacs#1#2#3{\csletcs{#3}{abx@#1@#2}} % {<plainlist>}{<csname>} - \protected\def\blx@imc@savelistcs{% \@ifstar{\blx@savedatacs{list}}{\global\blx@savedatacs{list}}} % {<namelist>}{<csname>} - \protected\def\blx@imc@savenamecs{% \@ifstar{\blx@savedatacs{name}}{\global\blx@savedatacs{name}}} % {<field>}{<true>}{<false>} - \def\blx@imc@iffieldundef#1{% \ifcsundef{abx@field@#1}} % {<plainlist>}{<true>}{<false>} - \def\blx@imc@iflistundef#1{% \ifcsundef{abx@list@#1}} % {<namelist>}{<true>}{<false>} - \def\blx@imc@ifnameundef#1{% \ifcsundef{abx@name@#1}} % {<field1>}{<field2>}{<true>}{<false>} - \def\blx@imc@iffieldsequal#1#2{% \ifcsequal{abx@field@#1}{abx@field@#2}} % {<plainlist1>}{<plainlist2>}{<true>}{<false>} - \def\blx@imc@iflistsequal#1#2{% \ifcsequal{abx@list@#1}{abx@list@#2}} % {<namelist1>}{<namelist2>}{<true>}{<false>} - \def\blx@imc@ifnamesequal#1#2{% \ifcsundef{abx@name@#1} {\@secondoftwo} @@ -1974,7 +1935,6 @@ {\appto\blx@tempa{{{#2}{#4}{#6}{#8}}}}} % {<field>}{<macro>}{<true>}{<false>} - \def\blx@imc@iffieldequals#1#2{% \blx@imc@iffieldundef{#1} {\@secondoftwo} @@ -1987,7 +1947,6 @@ \fi}}} % {<plainlist>}{<macro>}{<true>}{<false>} - \def\blx@imc@iflistequals#1#2{% \blx@imc@iflistundef{#1} {\@secondoftwo} @@ -2000,7 +1959,6 @@ \fi}}} % {<namelist>}{<macro>}{<true>}{<false>} - \def\blx@imc@ifnameequals#1#2{% FIXME \blx@imc@ifnameundef{#1} {\@secondoftwo} @@ -2013,22 +1971,18 @@ \fi}}} % {<field>}{<csname>}{<true>}{<false>} - \def\blx@imc@iffieldequalcs#1{% \ifcsequal{abx@field@#1}} % {<plainlist>}{<csname>}{<true>}{<false>} - \def\blx@imc@iflistequalcs#1{% \ifcsequal{abx@list@#1}} % {<namelist>}{<csname>}{<true>}{<false>} - \def\blx@imc@ifnameequalcs#1{% FIXME \ifcsequal{abx@name@#1}} % {<field>}{<string>}{<true>}{<false>} - \protected\long\def\blx@imc@iffieldequalstr#1#2{% \blx@imc@iffieldundef{#1} {\@secondoftwo} @@ -2037,7 +1991,6 @@ \csname abx@field@#1\endcsname}{#2}}} % {<field>}{<true>}{<false>} - \protected\def\blx@imc@iffieldxref#1{% \blx@imc@iffieldundef{#1} {\@secondoftwo} @@ -2064,7 +2017,6 @@ {#1{crossref}}} % {<plainlist>}{<true>}{<false>} - \protected\def\blx@imc@iflistxref#1{% \blx@imc@iflistundef{#1} {\@secondoftwo} @@ -2084,7 +2036,6 @@ \endgroup} % {<namelist>}{<true>}{<false>} - \protected\def\blx@imc@ifnamexref#1{% \blx@imc@ifnameundef{#1} {\@secondoftwo} @@ -2104,7 +2055,6 @@ \endgroup} % {<string>}{<true>}{<false>} - \protected\def\blx@imc@ifcurrentfield#1{% \begingroup \def\blx@tempa{#1}% @@ -2116,7 +2066,6 @@ \endgroup} % {<string>}{<true>}{<false>} - \protected\def\blx@imc@ifcurrentlist#1{% \begingroup \def\blx@tempa{#1}% @@ -2128,7 +2077,6 @@ \endgroup} % {<string>}{<true>}{<false>} - \protected\def\blx@imc@ifcurrentname#1{% \begingroup \def\blx@tempa{#1}% @@ -2140,7 +2088,6 @@ \endgroup} % {<string>}{<true>}{<false>} - \protected\def\blx@imc@ifentrytype#1{% \begingroup \def\blx@tempa{#1}% @@ -2152,7 +2099,6 @@ \endgroup} % {<true>}{<false>} - \def\blx@imc@ifmorenames{% \ifundef\currentname {\@secondoftwo} @@ -2165,7 +2111,6 @@ \fi}}} % {<true>}{<false>} - \def\blx@imc@ifmoreitems{% \ifundef\currentlist {\@secondoftwo} @@ -2178,7 +2123,6 @@ \fi}}} % {<true>}{<false>} - \def\blx@imc@iffirstcitekey{% \ifboolexpr{ ( test {\ifnumequal\c@multicitetotal\z@} and test {\ifnumequal\c@citecount\@ne} ) @@ -2191,14 +2135,12 @@ and test {\ifnumequal\c@multicitecount\c@multicitetotal} }} % {<category>}{<true>}{<false>} - \protected\def\blx@imc@ifcategory{% \ifdef\abx@field@entrykey {\blx@imc@ifentrycategory\abx@field@entrykey} {\expandafter\@secondoftwo\@gobble}} % {<entrykey>}{<category>}{<true>}{<false>} - \protected\def\blx@imc@ifentrycategory{% \blx@xsanitizeafter\blx@imc@ifentrycategory@i} @@ -2208,14 +2150,12 @@ {\@secondoftwo}} % {<keyword>}{<true>}{<false>} - \protected\def\blx@imc@ifkeyword{% \ifdef\abx@field@entrykey {\blx@imc@ifentrykeyword\abx@field@entrykey} {\expandafter\@secondoftwo\@gobble}} % {<entrykey>}{<keyword>}{<true>}{<false>} - \protected\def\blx@imc@ifentrykeyword{% \blx@xsanitizeafter\blx@imc@ifentrykeyword@i} @@ -2225,7 +2165,6 @@ {\@secondoftwo}} % {<true>}{<false>} - \protected\def\blx@ifciteseen@global{% \ifbool{citetracker} {\ifdef\abx@field@entrykey @@ -2251,7 +2190,6 @@ {\@secondoftwo}} % {<entrykey>}{<true>}{<false>} - \protected\def\blx@ifentryseen@global{% \blx@xsanitizeafter\blx@ifseen@global} @@ -2271,7 +2209,6 @@ {\@secondoftwo}} % {<true>}{<false>} - \def\blx@ifciteibid@global{% \ifbool{citetracker} {\blx@imc@iffieldequals{entrykey}\blx@lastkey@text} @@ -2303,7 +2240,6 @@ {\@secondoftwo}} % {<true>}{<false>} - \def\blx@ifciteidem@global{% \ifbool{citetracker} {\blx@imc@iffieldequals{fullhash}\blx@lasthash@text} @@ -2328,7 +2264,6 @@ {\@secondoftwo}} % {<true>}{<false>} - \def\blx@ifopcit@global{% \ifbool{citetracker} {\blx@imc@iffieldundef{namehash} @@ -2366,7 +2301,6 @@ {\@secondoftwo}} % {<true>}{<false>} - \def\blx@ifloccit@global{% \ifbool{citetracker} {\blx@loccit@check{text}} @@ -2411,7 +2345,6 @@ {\@secondoftwo}}} % {<true>}{<false>} - \def\blx@ifmpfncheck{% \ifnum\numexpr\value\@mpfn-\blx@lastmpfn<\tw@ \expandafter\@firstoftwo @@ -2428,7 +2361,6 @@ \blx@mpfnreset % {<true>}{<false>} - \def\blx@imc@iffirstonpage{% \ifbool{pagetracker} {\iftoggle{blx@footnote} @@ -2460,7 +2392,6 @@ \fi}} % {<count1>}{<count2>}{<true>}{<false>} - \def\blx@imc@ifsamepage#1#2{% \ifbool{pagetracker} {\ifcsundef{blx@page@\number\numexpr#1} @@ -2486,7 +2417,6 @@ \fi} % {<string>}{<true>}{<false>} - \protected\long\def\blx@imc@ifinteger#1{% \begingroup \def\do##1{\uccode`##1=`\%}% @@ -2503,7 +2433,6 @@ \endgroup} % {<field>}{<true>}{<false>} - \protected\def\blx@imc@iffieldint#1{% \blx@imc@iffieldundef{#1} {\@secondoftwo} @@ -2513,7 +2442,6 @@ \expandafter{\csname abx@field@#1\endcsname}}} % {<string>}{<true>}{<false>} - \protected\def\blx@imc@ifnumeral{% \blx@ifnum\blx@hook@ifnum} @@ -2566,7 +2494,6 @@ \blx@dopagecmds} % {<field>}{<true>}{<false>} - \protected\def\blx@imc@iffieldnum#1{% \blx@imc@iffieldundef{#1} {\@secondoftwo} @@ -2592,7 +2519,6 @@ \expandafter{\csname abx@field@#1\endcsname}}} % {<chars>} - \newrobustcmd*{\DeclareNumChars}{% \@ifstar {\blx@defnumchars} @@ -2607,7 +2533,6 @@ \detokenize{#1}\relax}} % {<chars>} - \newrobustcmd*{\DeclareRangeChars}{% \@ifstar {\blx@defrangechars} @@ -2632,7 +2557,6 @@ \fi} % {<cstokens>} - \newrobustcmd*{\DeclareRangeCommands}{% \@ifstar {\blx@defrangecmds} @@ -2652,7 +2576,6 @@ \fi} % {<cstokens>} - \newrobustcmd*{\DeclarePageCommands}{% \@ifstar {\blx@defpagecmds} @@ -2682,12 +2605,10 @@ \DeclarePageCommands{\pno\ppno} % *{<code>} - \newrobustcmd*{\NumCheckSetup}{\appto\blx@hook@ifnum} \newcommand*{\NumcheckSetup}{\NumCheckSetup} % [<pagination>][<postpro>]{<string>} - \newrobustcmd*{\blx@imc@mkpageprefix}[1][pagination]{% \begingroup \def\blx@tempa{\blx@mkpageprefix{page}}% @@ -2715,7 +2636,6 @@ \long\def\blx@mkpageprefix@i[#1]#2{#1{#2}\endgroup} % [<pagination>][<postpro>]{<string>} - \newrobustcmd*{\blx@imc@mkpagetotal}[1][bookpagination]{% \begingroup \def\blx@tempa{\blx@mkpagetotal{page}}% @@ -2928,7 +2848,25 @@ \fi} \def\blx@range@chunk#1{% - \blx@range@chunk@sep#1\bibrangessep&} + \blx@range@chunk@semcol#1;&} + +\def\blx@range@chunk@semcol#1;#2&{% + \notblank{#1} + {\blx@range@chunk@comma#1,&} + {}% + \notblank{#2} + {\notblank{#1}{\blx@range@out@delim{\bibrangessep}}{}% + \blx@range@chunk@semcol#2&} + {}} + +\def\blx@range@chunk@comma#1,#2&{% + \notblank{#1} + {\blx@range@chunk@sep#1\bibrangessep&} + {}% + \notblank{#2} + {\notblank{#1}{\blx@range@out@delim{\bibrangessep}}{}% + \blx@range@chunk@comma#2&} + {}} \def\blx@range@chunk@sep#1\bibrangessep#2&{% \notblank{#1} @@ -2941,7 +2879,6 @@ {}} % <*>[<postpro>]{<string>} - \newrobustcmd*{\mkfirstpage}{% \begingroup \@ifstar @@ -3186,7 +3123,6 @@ % capitalization % {<text>} - \newrobustcmd{\MakeCapital}[1]{% \begingroup \blx@mkcp@init @@ -3262,7 +3198,6 @@ \do\t} % {<text>} - \newrobustcmd*{\MakeSentenceCase}{% \@ifstar\blx@mksc@i\blx@mksc@ii} @@ -3414,7 +3349,6 @@ \let\blx@mksc@endhead\relax} % {<language,language,...>} - \newrobustcmd*{\DeclareCaseLangs}{% \@ifstar {\blx@defcaselangs} @@ -3434,7 +3368,6 @@ %% Main formatting commands % [<entrytype>]{<name>}{<definiton>} - \newrobustcmd*{\DeclareNameFormat}{% \@ifstar {\blx@defformat\blx@defnameformat{nfd}*} @@ -3463,14 +3396,12 @@ {\blx@defformat\blx@defplainformat{fid}{}}} % {<macro>}{<class>}{<*>} - \def\blx@defformat#1#2#3{% \@ifnextchar[%] {\blx@defformat@i{#1}{#2}{#3}} {\blx@defformat@i{#1}{#2}{#3}[*]}} % {<macro>}{<class>}{<*>}[<entrytype>]{<name>} - \def\blx@defformat@i#1#2#3[#4]#5{% \notblank{#3} {\blx@resetformat{#2}{#5}} @@ -3509,14 +3440,12 @@ {}} % {<name>}{<name>} - \def\blx@letformat#1#2{% \blx@safe@actives \afterassignment\blx@rest@actives \csletcs{#1}{#2}} % [aliastype]{aliasname}[formattype]{formatname} - \def\blx@defalias#1{% \@ifnextchar[%] {\blx@defalias@i{#1}} @@ -3532,7 +3461,6 @@ \expandonce{\csname abx@#1@#4@#5\endcsname}}} % {<macro>}{<id>}{<name>}{<field>} - \def\blx@getformat#1#2#3#4{% \blx@safe@actives \afterassignment\blx@rest@actives @@ -3547,7 +3475,6 @@ {\letcs#1{abx@#2@\blx@imc@thefield{entrytype}@#3}}} % [<entrytype>]{<name>} - \newrobustcmd*{\savefieldformat}[2][*]{\blx@save{abx@ffd@#1@#2}} \newrobustcmd*{\savelistformat}[2][*]{\blx@save{abx@lfd@#1@#2}} \newrobustcmd*{\savenameformat}[2][*]{\blx@save{abx@nfd@#1@#2}} @@ -3557,13 +3484,11 @@ \newrobustcmd*{\restorenameformat}[2][*]{\blx@restore{abx@nfd@#1@#2}} % [<entrytype>]{<name>}{<true>}{<false>} - \newrobustcmd*{\iffieldformatundef}[2][*]{\ifcsundef{abx@ffd@#1@#2}} \newrobustcmd*{\iflistformatundef}[2][*]{\ifcsundef{abx@lfd@#1@#2}} \newrobustcmd*{\ifnameformatundef}[2][*]{\ifcsundef{abx@nfd@#1@#2}} % [<entrytype>]{<alias>}[<entrytype>]{<name>} - \newrobustcmd*{\DeclareNameAlias}{\blx@defalias{nfd}} \newrobustcmd*{\DeclareIndexNameAlias}{\blx@defalias{nid}} @@ -3574,7 +3499,6 @@ \newrobustcmd*{\DeclareIndexFieldAlias}{\blx@defalias{fid}} % [<format>]{<text>} - \newrobustcmd{\blx@imc@printtext}[2][]{% \ifblank{#2} {\blx@nounit} @@ -3588,7 +3512,6 @@ \blx@endunit}}} % [<format>]{<field>} - \newrobustcmd*{\blx@imc@printfield}[2][]{% \blx@imc@iffieldundef{#2} {\blx@nounit} @@ -3604,7 +3527,6 @@ \blx@endunit}}} % [<format>]{<field>} - \newcommand*{\blx@imc@indexfield}[2][]{% \blx@imc@iffieldundef{#2} {} @@ -3618,7 +3540,6 @@ \endgroup}}} % [<format>]{<file>} - \newrobustcmd*{\blx@imc@printfile}[2][]{% \iftoggle{blx@loadfiles} {\IfFileExists{#2} @@ -3629,7 +3550,6 @@ % {<macro>}[<format>][<start>-<stop>] % => <macro>{<format>}{<start>}{<stop>} - \def\blx@listargs#1{% \@ifnextchar[%] {\blx@listargs@i{#1}} @@ -3647,12 +3567,10 @@ #1{#2}{#3}{#4}} % [<format>][<start>-<stop>]{<namelist>} - \protected\def\blx@imc@printnames{% \blx@listargs\blx@printnames} % {<format>}{<start>}{<stop>}{<namelist>} - \def\blx@printnames#1#2#3#4{% \blx@imc@ifnameundef{#4} {\blx@nounit} @@ -3720,12 +3638,10 @@ \newrobustcmd*{\bibnamedelimi}{\addnbspace} % [<format>][<start>-<stop>]{<namelist>} - \protected\def\blx@imc@indexnames{% \blx@listargs\blx@indexnames} % {<format>}{<start>}{<stop>}{<namelist>} - \def\blx@indexnames#1#2#3#4{% \blx@imc@ifnameundef{#4} {} @@ -3749,7 +3665,6 @@ \let\bibnamedelimi\bibindexnamedelimi} % {<name1>}{<name2>}{...} - \long\def\blx@nameparser#1{% \ifblank{#1} {\blx@namebreak} @@ -3772,12 +3687,10 @@ \long\def\blx@namebreak#1&{} % [<format>][<start>-<stop>]{<plainlist>} - \protected\def\blx@imc@printlist{% \blx@listargs\blx@printlist} % {<format>}{<start>}{<stop>}{<plainlist>} - \def\blx@printlist#1#2#3#4{% \blx@imc@iflistundef{#4} {\blx@nounit} @@ -3817,12 +3730,10 @@ \fi}} % [<format>][<start>-<stop>]{<plainlist>} - \protected\def\blx@imc@indexlist{% \blx@listargs\blx@indexlist} % {<format>}{<start>}{<stop>}{<plainlist>} - \def\blx@indexlist#1#2#3#4{% \blx@imc@iflistundef{#4} {} @@ -3835,7 +3746,6 @@ \endgroup}}} % {<item1>}{<item2>}{...} - \long\def\blx@listparser#1{% \ifblank{#1} {\blx@listbreak} @@ -3852,7 +3762,6 @@ \long\def\blx@listbreak#1&{} % <*>{<key>}{<code>} - \protected\def\blx@imc@entrydata{% \@ifstar {\blx@xsanitizeafter{\blx@imc@entrydata@i\blx@saveentry}} @@ -3925,7 +3834,6 @@ %% Localization % [<wrapper>]{<string>} - \newrobustcmd*{\blx@imc@bibstring}[2][\@firstofone]{% \blx@bibstring{#1}{\abx@str}{#2}} @@ -3951,7 +3859,6 @@ \blx@endunit}} % [<wrapper>]{<string>} - \newrobustcmd*{\blx@imc@bibcpstring}[2][\@firstofone]{% \blx@bibcpstring{#1}{\abx@str}{#2}} @@ -3975,7 +3882,6 @@ \blx@endunit}} % [<wrapper>]{<string>} - \newrobustcmd*{\blx@imc@biblcstring}[2][\@firstofone]{% \blx@biblcstring{#1}{\abx@str}{#2}} @@ -3999,7 +3905,6 @@ \blx@endunit}} % [<wrapper>]{<string>} - \newrobustcmd*{\blx@imc@bibucstring}[2][\@firstofone]{% \blx@bibucstring{#1}{\abx@str}{#2}} @@ -4023,7 +3928,6 @@ \blx@endunit}} % {<string>} - \def\blx@imc@bibxstring#1{% \blx@bibxstring{\abx@str}{#1}} @@ -4039,7 +3943,6 @@ {\csuse{#1@#2}}} % {<string>}{<true>}{<false>} - \def\blx@imc@ifbibstring#1{% \ifcsundef{\abx@str @\detokenize{#1}} {\@secondoftwo} @@ -4051,7 +3954,6 @@ {\@firstoftwo}} % {<field>}{<true>}{<false>} - \def\blx@imc@iffieldbibstring#1{% \blx@imc@iffieldundef{#1} {\@secondoftwo} @@ -4400,6 +4302,7 @@ \do{langpolish}% \do{langportuguese}% \do{langrussian}% + \do{langslovene}% \do{langspanish}% \do{langswedish}% \do{fromamerican}% @@ -4420,6 +4323,7 @@ \do{frompolish}% \do{fromportuguese}% \do{fromrussian}% + \do{fromslovene}% \do{fromspanish}% \do{fromswedish}% \do{countryde}% @@ -4453,13 +4357,11 @@ % in *.cbx/bbx/tex: <key> = {<string>}, % in *.lbx: <key> = {{<longstring>}{<abbrevstring>}}, - \def\do#1{\define@key{blx@lbx}{#1}{\blx@defstring{#1}{##1}}} \abx@dostrings % in *.cbx/bbx/tex: (implicit) % in *.lbx: inherit = {<language>}, - \define@key{blx@lbx}{inherit}{% \blx@lbxinput{#1}{}{\blx@err@nolang{#1}}% \csuse{abx@strings@#1}} @@ -4475,7 +4377,6 @@ \csdef{abx@sstr@#1}{#3}} % {<language>} - \def\blx@lbxcheck#1{% \ifcsdef{blx@lng@#1} {\expandafter\expandafter\expandafter\IfFileExists @@ -4488,7 +4389,6 @@ {\blx@err@nolang{#1}}}} % {<language>}{<definitions>} - \newrobustcmd*{\DefineBibliographyExtras}[2]{% \blx@lbxcheck{#1}% \csgappto{blx@hook@extras@#1}{% @@ -4505,14 +4405,12 @@ \def\blx@undefbibextras#1{\csgappto{abx@noextras@#1}} % {<language>}{<language>} - \def\blx@letbibextras#1#2{% \blx@lbxinput{#2}{}{\blx@err@nolang{#2}}% \global\csletcs{abx@extras@#1}{abx@extras@#2} \global\csletcs{abx@noextras@#1}{abx@noextras@#2}}% % {<language>}{<strings>} - \newrobustcmd*{\DefineBibliographyStrings}[2]{% \blx@lbxcheck{#1}% \csgappto{blx@hook@strings@#1}{% @@ -4537,8 +4435,8 @@ {\letcs\refname{\abx@str @references}} {\let\refname\@empty}% \ifcsdef{\abx@str @shorthands} - {\letcs\losname{\abx@str @shorthands}} - {\let\losname\@empty}}} + {\letcs\biblistname{\abx@str @shorthands}} + {\let\biblistname\@empty}}} \def\blx@defbibstrings@i#1{% \ifcsdef{abx@lstr@#1} @@ -4551,13 +4449,11 @@ {\undef\expandafter\noexpand\csname abx@sstr@#1\endcsname}} % {<language>}{<language>} - \def\blx@letbibstrings#1#2{% \blx@lbxinput{#2}{}{\blx@err@nolang{#2}}% \global\csletcs{abx@strings@#1}{abx@strings@#2}}% % {<language>}{<exceptions>} - \newrobustcmd*{\DefineHyphenationExceptions}[2]{% \ifcsundef{l@#1} {\blx@warn@nohyph{#1}} @@ -4574,13 +4470,11 @@ \endgroup}} % {<language>}{<mapping>} - \newrobustcmd*{\DeclareLanguageMapping}[2]{% \csgdef{blx@lng@#1}{#2}} \@onlypreamble\DeclareLanguageMapping % {<language>}{<success>}{<failure>} - \def\blx@lbxinput#1{% \ifcsdef{blx@lng@#1} {\expandafter\expandafter\expandafter\blx@lbxinput@i @@ -4589,7 +4483,6 @@ {\blx@lbxinput@ii{#1}{#1}{language '#1'}}} % {<mapping>}{<language>} - \def\blx@lbxinput@i#1#2{% \global\csundef{blx@lng@#2}% \IfFileExists{#1.lbx} @@ -4600,7 +4493,6 @@ \blx@lbxinput{#2}}} % {<language>}{<lbxfile>}{<message>} - \def\blx@lbxinput@ii#1#2#3{% \begingroup \setbox\@tempboxa=\hbox\bgroup @@ -4638,7 +4530,6 @@ \egroup} % {<language>} - \def\blx@langsetup#1{% \blx@lbxinput{#1} {\edef\blx@languagename{#1}} @@ -4848,7 +4739,6 @@ \printurldate \printeventdate \printorigdate \stripzeros \mkdatezeros} % {<language>}{<strings>} - \def\blx@maplang#1#2{% \csxappto{extras#1}{% \noexpand\blx@resetpunct @@ -4906,6 +4796,7 @@ \expandafter{\abx@field@langid}}} {}}} {}% + \def\blx@langstrings{}% \def\blx@imc@mainlang{\select@language{\bbl@main@language}}% \blx@langsetup\bbl@main@language} {\blx@err@patch{'babel' package}% @@ -4946,6 +4837,11 @@ \csuse{abx@strings@\abx@field@langid}}} {}}} {}% + % polyglossia needs this - it doesn't get the + % strings by 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 @@ -4955,7 +4851,7 @@ \blx@langsetup\bbl@main@language} {\blx@err@patch{'polyglossia' package}% \blx@mknoautolang}% - \catcode`\_=8} + \catcode`\_=8} \endgroup \def\blx@mknoautolang{% @@ -5003,6 +4899,10 @@ \def\abx@dotypes{\dolistcsloop{blx@biber@datamodel@entrytypes}} +% fields which can be used as labels - we auto-create some macros for these +\def\abx@dolabelfields{% + \dolistcsloop{blx@biber@datamodel@labelfields}} + \def\abx@donames{% \dolistcsloop{blx@biber@datamodel@names}% \do{labelname}% @@ -5090,7 +4990,8 @@ \do{localnumber}% \do{namehash}% \do{prefixnumber}% - \do{sortinit}} + \do{sortinit}% + \do{sortinithash}} \def\abx@dobooleans{% \do{singletitle}} @@ -5098,23 +4999,25 @@ \def\do#1{% \newcounter{#1}% \newcounter{saved#1}% - \csedef{the#1}{\noexpand\the\expandonce{\csname c@#1\endcsname}}% - \csedef{thesaved#1}{\noexpand\the\expandonce{\csname c@saved#1\endcsname}}% \appto\abx@dobooleans{\do{more#1}}} -\dolistcsloop{blx@biber@datamodel@names}\do{labelname}% -\dolistcsloop{blx@biber@datamodel@lists}\do{pageref}% + +\abx@donames +\abx@dolists \def\do#1{\newtoggle{abx@bool@#1}} \abx@dobooleans +\def\do#1{\expandafter\newlength\expandafter{\csname #1width\endcsname}} +\abx@dolabelfields + \protected\def\blx@resetdata{% \let\blx@saved@do\do \let\do\blx@imc@clearname - \dolistcsloop{blx@biber@datamodel@names}\do{labelname}% + \abx@donames \let\do\blx@imc@clearlist - \dolistcsloop{blx@biber@datamodel@lists}\do{pageref}% + \abx@dolists \let\do\blx@imc@clearfield - \dolistcsloop{blx@biber@datamodel@fields}\do{options}% - \do{labeltitle}\do{labelyear}\do{labelmonth}\do{labelday}\do{datelabelsource}% + \abx@dofields + \do{options}\do{labeltitle}\do{labelyear}\do{labelmonth}\do{labelday}\do{datelabelsource}% \abx@dointernalfields \def\do##1{\togglefalse{abx@bool@##1}}% \abx@dobooleans @@ -5131,12 +5034,12 @@ \protected\def\blx@saveentry{% \let\blx@saved@do\do \let\do\blx@savename - \dolistcsloop{blx@biber@datamodel@names}\do{labelname}% + \abx@donames \let\do\blx@savelist - \dolistcsloop{blx@biber@datamodel@lists}\do{pageref}% + \abx@dolists \let\do\blx@savefield - \dolistcsloop{blx@biber@datamodel@fields}\do{options}% - \do{labeltitle}\do{labelyear}\do{labelmonth}\do{labelday}\do{datelabelsource}% + \abx@dofields + \do{options}\do{labeltitle}\do{labelyear}\do{labelmonth}\do{labelday}\do{datelabelsource}% \abx@dointernalfields \let\do\blx@savebool \abx@dobooleans @@ -5160,12 +5063,10 @@ \csletcs{abx@bool@saved#1}{abx@bool@#1}} % {<code>} - \protected\long\def\blx@bbl@preamble#1{% \gappto\abx@preamble{#1}} % {<message>} - \protected\def\blx@bbl@warn#1{% \begingroup \def\item{\MessageBreak-\space}% @@ -5180,7 +5081,6 @@ \endgroup} % {<field>}{<code>} - \newrobustcmd{\DeclareFieldInputHandler}[2]{% \ifblank{#2} {\csundef{blx@fih@#1}} @@ -5188,7 +5088,6 @@ \@onlypreamble\DeclareFieldInputHandler % {<list>}{<code>} - \newrobustcmd*{\DeclareListInputHandler}[2]{% \ifblank{#2} {\csundef{blx@lih@#1}} @@ -5196,7 +5095,6 @@ \@onlypreamble\DeclareListInputHandler % {<name>}{<code>} - \newrobustcmd*{\DeclareNameInputHandler}[2]{% \ifblank{#2} {\csundef{blx@nih@#1}} @@ -5204,13 +5102,11 @@ \@onlypreamble\DeclareNameInputHandler % {<entrykey>}{<refsection>}{<field>}{<value>} - \long\def\blx@bbl@addentryfield#1#2#3#4{% \csxappto{blx@data@#2@#1}{% \def\expandafter\noexpand\csname abx@field@#3\endcsname{#4}}} % {<field>}{<value>} - \long\def\blx@bbl@addfield#1#2{% \csxappto\blx@bbl@data{% \def\expandafter\noexpand\csname abx@field@#1\endcsname{#2}}} @@ -5240,8 +5136,29 @@ \blx@bbl@fielddef{#1}{\detokenize{#2}}}% \blx@tempa} -% {<field>} +% Verbatim lists +% {<list>}{<listcount>} +\protected\def\blx@bbl@verbldef#1#2{% + \begingroup + \let\lverb\blx@bbl@verbladd + \def\blx@tempa{#1}% + \def\blx@tempb{#2}% + \let\blx@tempc\@empty + \let\NewValue\@empty} + +\protected\def\blx@bbl@verblend{% + \expandafter\blx@bbl@listdef\expandafter{\expandafter\blx@tempa\expandafter}\expandafter{\expandafter\blx@tempb\expandafter}\expandafter{\blx@tempc}% + \endgroup} +\protected\def\blx@bbl@verbladd{% + \begingroup + \let\do\@makeother + \dospecials + \catcode\endlinechar=12\relax + \blx@bbl@verbladd@i} + +% Verbatim fields +% {<field>} \protected\def\blx@bbl@verbdef#1{% \begingroup \let\verb\blx@bbl@verbadd @@ -5273,16 +5190,17 @@ \uppercase{\gdef\blx@bbl@verbadd@i<#1>}{% \endgroup \edef\NewValue{\NewValue\detokenize{#1}}} +\uppercase{\gdef\blx@bbl@verbladd@i<#1>}{% + \endgroup + \eappto\blx@tempc{{\detokenize{#1}}}}% \endgroup % {<counter>}{<value>} - \protected\long\def\blx@bbl@cntdef#1#2{% \csxappto\blx@bbl@data{% \csname c@#1\endcsname#2\relax}} % {<boolean>} - \protected\def\blx@bbl@booltrue#1{% \csgappto\blx@bbl@data{% \toggletrue{abx@bool@#1}}} @@ -5291,8 +5209,7 @@ \csgappto\blx@bbl@data{% \togglefalse{abx@bool@#1}}} -% {<list}{<itemcount>}{<value>} - +% {<list>}{<itemcount>}{<value>} \protected\def\blx@bbl@listdef#1#2#3{% \def\NewCount{#2}% \def\NewValue{#3}% @@ -5306,9 +5223,7 @@ \def\expandafter\noexpand\csname abx@list@#1\endcsname {\expandonce\NewValue}}}} - % {<name>}{<itemcount>}{<nameoptions>}{<value>} - \protected\def\blx@bbl@namedef#1#2#3#4{% \def\NewCount{#2}% \def\NewOption{#3}% @@ -5324,7 +5239,6 @@ {{\expandonce\NewOption}{\expandonce\NewValue}}}}} % {<entrykey>,...} - \protected\def\blx@bbl@set#1{% \blx@bbl@fieldedef{entryset}{\detokenize{#1}}% \csxdef{blx@setp@\the\c@refsection @\abx@field@entrykey}{\detokenize{#1}}% @@ -5340,14 +5254,12 @@ \csxdef{blx@seti@\the\c@refsection @#1}{\the\blx@tempcnta}} % {<entrykey>} - \protected\def\blx@bbl@inset#1{% \toggletrue{blx@setonly}% \blx@bbl@fieldedef{entryset}{\detokenize{#1}}% \csxdef{blx@setc@\the\c@refsection @\abx@field@entrykey}{\detokenize{#1}}} % {<keyword>,...} - \protected\def\blx@bbl@keyw#1{% \iftoggle{blx@skipbib} {} @@ -5358,7 +5270,6 @@ \listcsxadd{blx@keyw@\the\c@refsection @\detokenize{#2}}{#1}} % {<options>} - \protected\long\def\blx@bbl@options#1{% \begingroup \let\blx@tempa\@empty @@ -5382,52 +5293,6 @@ \ifx\blx@tempa\@empty\else,\fi \unexpanded{#1}\ifblank{#2}{}{=\unexpanded{#2}}}}} -% \blx@data@<section>@<entrykey> data hook -% key -> data -% \blx@miss@<section> missing entries (blacklist) -% section -> keys [internal list] -% \blx@sort@<section> all entries, sorted -% section -> keys [internal list] -% \blx@sbib@<section> all entries in bibliography, sorted -% section -> keys [internal list] -% \blx@bsee@<section> seen citations, document body -% section -> keys [internal list] -% \blx@fsee@<section> seen citations, footnotes -% section -> keys [internal list] -% \blx@type@<section>@<entrytype> type hash -% type -> keys [internal list] -% \blx@subt@<section>@<entrytype> subtype hash -% subtype -> keys [internal list] -% \blx@segm@<section>@<segment> segment hash -% segment -> keys [internal list] -% \blx@keyw@<section>@<keyword> keyword hash -% keyword -> keys [internal list] -% \blx@losh@<section> shorthand hash -% section -> keys [internal list] -% \blx@slistsbib@<section>@<sectiontype>@<sectionname> all entries in -% bibliography of a type sorted -% in a particular way -% section -> keys [internal list] -% sectiontype -> "shorthand" or "entry" -% sectionname -> sort scheme name -% \blx@slists@<section>@<sectiontype>@<sectionname> all entries of a type sorted -% in a particular way -% section -> keys [internal list] -% sectiontype -> "shorthand" or "entry" -% sectionname -> sort scheme name -% \blx@catg@<category> category hash, global -% category -> keys [internal list] -% \blx@set@<section>@<entrykey> parent -> child mapping (dynamic entry sets) -% key -> key,key,... [csv list] -% \blx@setp@<section>@<entrykey> parent -> child mapping (entry sets) -% key -> key,key,... [csv list] -% \blx@setc@<section>@<entrykey> child -> parent mapping (entry sets) -% key -> key -% \blx@seti@<section>@<entrykey> child -> index mapping (entry sets) -% key -> index -% \blx@pref@<section>@<entrykey> pageref hook, temporary -% key -> pages [internal list] - \def\blx@ifdata#1{% \ifcsdef{blx@data@\the\c@refsection @#1}} \let\blx@imc@ifentryinbib\blx@ifdata @@ -5487,7 +5352,6 @@ {}} % {<section>} - \def\blx@bbl@refsection#1{% \begingroup \c@refsection#1\relax} @@ -5502,7 +5366,6 @@ \iftoggle{blx@reencode}{\blx@reencode}{}} % {<entrykey>} - \protected\def\blx@bbl@missing#1{% \listcsxadd{blx@miss@\the\c@refsection}{\detokenize{#1}}% \blx@warning@noline{% @@ -5515,11 +5378,15 @@ Please verify the spelling and rerun\MessageBreak LaTeX afterwards}} +% We create an alias resolving macro and also a list of aliases +% which we need to add to the .bcf. We need to resolve the aliases +% for internal use but we always want the aliases themselves in the .bcf +% so that biber can correctly use and resolve them too. \protected\def\blx@bbl@keyalias#1#2{% - \csgdef{blx@keyalias@\the\c@refsection @#1}{\detokenize{#2}}} + \csgdef{blx@keyalias@\the\c@refsection @#1}{\detokenize{#2}}% + \listcsgadd{blx@keyaliases@\the\c@refsection}{#1}} % {<entrykey>}{<entrytype>}{<options>} - \protected\def\blx@bbl@entry#1#2#3{% \begingroup \edef\abx@field@entrykey{\detokenize{#1}}% @@ -5540,20 +5407,20 @@ {} {\blx@addpageref{\abx@field@entrykey}}% \nottoggle{blx@setonly} - {\listcsxadd{blx@slists@\the\c@refsection @entry@\blx@slist@name}{\abx@field@entrykey}} + {\listcsxadd{blx@slists@\the\c@refsection @entry@\blx@slist@scheme}{\abx@field@entrykey}} {\global\toggletrue{blx@addset}% \toggletrue{blx@skipbib}% - \toggletrue{blx@skiplos}% + \toggletrue{blx@skipbiblist}% \toggletrue{blx@skiplab}}% \nottoggle{blx@skipbib} - {\listcsxadd{blx@slistsbib@\the\c@refsection @entry@\blx@slist@name}{\abx@field@entrykey}% + {\listcsxadd{blx@slistsbib@\the\c@refsection @entry@\blx@slist@scheme}{\abx@field@entrykey}% \listcsxadd{blx@type@\the\c@refsection @\abx@field@entrytype}{\abx@field@entrykey}% \ifdef\abx@field@entrysubtype {\listcsxadd{blx@subt@\the\c@refsection @\abx@field@entrysubtype}{\abx@field@entrykey}} {}} {}% - \nottoggle{blx@skiplos} - {\blx@bbl@shorthand} + \nottoggle{blx@skipbiblist} + {\blx@bbl@labelfields} {}% \nottoggle{blx@skiplab} {\iftoggle{blx@labelnumber} @@ -5601,40 +5468,41 @@ \def\blx@addset@ii#1{% \listcsgadd{blx@slists@\the\c@refsection @entry@\blx@sorting}{#1}} -\def\blx@bbl@shorthand{% - \ifundef\abx@field@shorthand - {} - {\blx@setlabwidth{\shorthandwidth}{% - \csuse{abx@ffd@*@shorthandwidth}{\abx@field@shorthand}}}} +\def\blx@bbl@labelfields{% + \def\do##1{% + \ifcsundef{abx@field@##1} + {} + {\blx@setlabwidth{\csname ##1width\endcsname}{% + \csuse{abx@ffd@*@##1width}{\csname abx@field@##1\endcsname}}}}% + \abx@dolabelfields} \def\blx@bbl@labelnumber{% % Used at endentry, when reading .bbl % only do this for the global sorting list otherwise we increment % the labelnumbers for each sortlist - \ifdefstrequal{\blx@slist@name}{\blx@sorting} + \ifdefstrequal{\blx@slist@scheme}{\blx@sorting} {\ifdefempty\abx@field@localnumber {}% only if omitnumbers=true {\ifundef\abx@field@shorthand - {\ifdef\abx@field@localnumber + {\ifdef\abx@field@localnumber {}% only if defernumbers=true {\csnumgdef{blx@labelnumber@\the\c@refsection}{% \csuse{blx@labelnumber@\the\c@refsection}+1}% - \edef\abx@field@localnumber{% - \csuse{blx@labelnumber@\the\c@refsection}}}% - \blx@bbl@fieldedef{labelnumber}{\abx@field@localnumber}% - \iftoggle{blx@skipbib} - {} - {\blx@setlabwidth{\labelnumberwidth}{% + \edef\abx@field@localnumber{% + \csuse{blx@labelnumber@\the\c@refsection}}% + \blx@bbl@fieldedef{labelnumber}{\abx@field@localnumber}}% + \iftoggle{blx@skipbib} + {} + {\blx@setlabwidth{\labelnumberwidth}{% \csuse{abx@ffd@*@labelnumberwidth}{% \ifdef\abx@field@prefixnumber - {\csuse{abx@ffd@*@prefixnumber}{\abx@field@prefixnumber}} - {}% + {\csuse{abx@ffd@*@prefixnumber}{\abx@field@prefixnumber}} + {}% \abx@field@localnumber}}}} - {\csgappto\blx@bbl@data{% - \let\abx@field@labelnumber\abx@field@shorthand}% - \iftoggle{blx@skipbib} - {} - {\blx@setlabwidth{\labelnumberwidth}{% + {\csgappto\blx@bbl@data{\let\abx@field@labelnumber\abx@field@shorthand}% + \iftoggle{blx@skipbib} + {} + {\blx@setlabwidth{\labelnumberwidth}{% \csuse{abx@ffd@*@labelnumberwidth}{\abx@field@shorthand}}}}}} {}} @@ -5737,7 +5605,9 @@ \let\true\blx@bbl@booltrue \let\false\blx@bbl@boolfalse \let\verb\blx@bbl@verbdef - \let\endverb\blx@bbl@verbend} + \let\endverb\blx@bbl@verbend + \let\lverb\blx@bbl@verbldef + \let\endlverb\blx@bbl@verblend} \def\blx@bblend{% } @@ -5754,16 +5624,8 @@ % {<sortschemename>} % Get the saved information on which shorthand sorting schemes were mentioned last run -\protected\def\abx@aux@sortschemelos#1{% - \listgadd{\blx@lastsortschemeslos}{#1}} - -% {<instcount>}{<entrykey>}{<refsection>}{<labelnumber>} -\protected\def\blx@aux@number#1#2#3#4{% - \blx@bbl@addentryfield{\detokenize{#2}}{#3}{localnumber}{#4}% - \global\toggletrue{blx@localnumber}% - \ifblank{#4} - {} - {\csgdef{blx@labelnumber@#3}{#4}}} +\protected\def\abx@aux@biblist#1{% + \listgadd{\blx@lastbiblists}{#1}} % Here we mustn't change the checksum if we used localnumbers from the % .aux file as this means that deferred numbering is @@ -5798,8 +5660,8 @@ % already tested for more or less cites between runs by now, we are % testing here for exactly the same cites by treating the cite and % lastcite lists as strings and comparing them. This doesn't apply - % to shorthand sortschemes as nobody wants to sort shorthands with - % "none" anyway, it makes no sense + % to biblist sortschemes as nobody wants to sort biblists with + % "none", since it makes no sense \ifinlist{none}{\blx@sortschemes} {\ifdefstrequal{\blx@cites}{\blx@lastcites} {} @@ -5813,14 +5675,14 @@ % If we did, we need to re-run biber \def\do#1{\ifinlist{#1}{\blx@lastsortschemes}{}{\blx@logreq@active{}}\relax}% \dolistloop\blx@sortschemes - % Test if we removed any mention of a shorthand sorting scheme since last run. + % Test if we removed any mention of a biblist since last run. % If we did, we need to re-run biber - \def\do#1{\ifinlist{#1}{\blx@sortschemeslos}{}{\blx@logreq@active{}}\relax}% - \dolistloop\blx@lastsortschemeslos - % Test to see if we added any mention of a shorthand sorting scheme since last run. + \def\do#1{\ifinlist{#1}{\blx@biblists}{}{\blx@logreq@active{}}\relax}% + \dolistloop\blx@lastbiblists + % Test to see if we added any mention of a biblist sorting scheme since last run. % If we did, we need to re-run biber - \def\do#1{\ifinlist{#1}{\blx@lastsortschemeslos}{}{\blx@logreq@active{}}\relax}% - \dolistloop\blx@sortschemeslos + \def\do#1{\ifinlist{#1}{\blx@lastbiblists}{}{\blx@logreq@active{}}\relax}% + \dolistloop\blx@biblists % If we have to run biber or latex again and we are using defernumbers, % don't write the localnumber information to the .aux file yet as we will % potentially have to regenerate sorting order first in biber @@ -5832,6 +5694,15 @@ {}% \endgroup} +% {<instcount>}{<entrykey>}{<refsection>}{<labelnumber>} +\protected\def\blx@aux@number#1#2#3#4{% + \blx@bbl@addentryfield{\detokenize{#2}}{#3}{localnumber}{#4}% + \blx@bbl@addentryfield{\detokenize{#2}}{#3}{labelnumber}{#4}% + \global\toggletrue{blx@localnumber}% + \ifblank{#4} + {} + {\csgdef{blx@labelnumber@#3}{#4}}} + % Called as part of bib output for an entry % Only used when defernumbers=true \def\blx@addlabelnumber{% @@ -5842,34 +5713,39 @@ % Need to know if we set any localnumber from .aux file, not % just current item. Otherwise, we may just write new % localnumbers but not existing ones - {\nottoggle{blx@localnumber} - {\iftoggle{blx@omitnumbers} - {\let\abx@field@localnumber\@empty} - {\csnumgdef{blx@labelnumber@\the\c@refsection}{% - \csuse{blx@labelnumber@\the\c@refsection}+1}% - \edef\abx@field@localnumber{% - \csuse{blx@labelnumber@\the\c@refsection}}% - \blx@bbl@addentryfield{\abx@field@entrykey}{\the\c@refsection}% - {localnumber}{\abx@field@localnumber}}% - \listxadd\blx@localnumaux{% - \string\abx@aux@number - {\the\c@instcount} - {\abx@field@entrykey} - {\the\c@refsection} - {\abx@field@localnumber}}} - % If localnumbers were already in the .aux, add them - % again from the .aux. This prevents some cycling - % problems where pagebreaks change after localnumber - % settles down and then we need another run which then - % regenerates localnumber requiring another run but then - % the pagebreaks change back again ... etc. - {\listxadd\blx@localnumaux{% - \string\abx@aux@number - {\the\c@instcount} - {\abx@field@entrykey} - {\the\c@refsection} - {\abx@field@localnumber}}}} - {}}% + % Also, don't want to regenerate localnumber for any key in a + % refsection which we've already seen because this has the nasty + % side-effect of incrementing the localnum counter + {\ifboolexpr { not togl {blx@localnumber} + and + test {\ifcsundef{blx@defer@\the\c@refsection @\abx@field@entrykey}} } + {\iftoggle{blx@omitnumbers} + {\let\abx@field@localnumber\@empty} + {\csnumgdef{blx@labelnumber@\the\c@refsection}{% + \csuse{blx@labelnumber@\the\c@refsection}+1}% + \edef\abx@field@localnumber{% + \csuse{blx@labelnumber@\the\c@refsection}}% + \blx@bbl@addentryfield{\abx@field@entrykey}{\the\c@refsection}% + {localnumber}{\abx@field@localnumber}}} + {}% + % If localnumbers were already in the .aux, add them + % again from the .aux. This prevents some cycling + % problems where pagebreaks change after localnumber + % settles down and then we need another run which then + % regenerates localnumber requiring another run but then + % the pagebreaks change back again ... etc. + \ifcsundef{blx@defer@\the\c@refsection @\abx@field@entrykey} + {\listxadd\blx@localnumaux{% + \string\abx@aux@number% + {\the\c@instcount}% + {\abx@field@entrykey}% + {\the\c@refsection}% + {\abx@field@localnumber}}% + % record that we have already generated and output localnum + % for this key in this refsection + \csgdef{blx@defer@\the\c@refsection @\abx@field@entrykey}{}} + {}} + {}}% {}} {}% \endgroup} @@ -5891,15 +5767,15 @@ {}} % {<entrykey>}{<refsection>}{<numberprefix>} - \protected\def\blx@aux@numprefix#1#2#3{% \blx@bbl@addentryfield{\detokenize{#1}}{#2}{prefixnumber}{#3}} +% {<sortlistname>}{<sortlistsortscheme>} \def\blx@bbl@slist#1#2{% \begingroup - \def\blx@slist@name{#2}% - % This macro (\key) will only be called in shorthand lists - \def\key##1{\listcsxadd{blx@slistsbib@\the\c@refsection @shorthand@#2}{\detokenize{##1}}}} + \def\blx@slist@scheme{#2}% + % This macro (\key) will only be called in sortlists of type "list" + \def\key##1{\listcsxadd{blx@slistsbib@\the\c@refsection @#1@#2}{\detokenize{##1}}}} \let\blx@bbl@endslist\endgroup \def\blx@addpageref#1{% @@ -5954,11 +5830,12 @@ \abx@hook@reencode \let\protect\@unexpandable@protect \def\do##1{\cslet{abx@name@##1}\relax}% - \dolistcsloop{blx@biber@datamodel@names}\do{labelname}% + \abx@donames \def\do##1{\cslet{abx@list@##1}\relax}% - \dolistcsloop{blx@biber@datamodel@lists}\do{pageref}% + \abx@dolists \def\do##1{\cslet{abx@field@##1}\relax}% - \dolistcsloop{blx@biber@datamodel@fields}\do{options}% + \abx@dofields + \do{options}% \abx@dointernalfields \long\def\abx@field@execute##1{% \unexpanded{\abx@field@execute{##1}}}% @@ -5978,7 +5855,6 @@ %% Bibliography % {<name>}{<start code>}[<end code>]{<item code>} - \newrobustcmd*{\defbibenvironment}[4]{% \long\csdef{blx@env@#1}{#2}% \long\csdef{blx@endenv@#1}{#3}% @@ -5993,20 +5869,21 @@ {\endlist} {\item} -\defbibenvironment{shorthands} - {\list{\thefield{shorthand}}{% - \labelwidth\shorthandwidth - \labelsep\biblabelsep - \leftmargin\labelwidth - \advance\leftmargin\labelsep - \itemsep\bibitemsep - \parsep\bibparsep - \def\makelabel##1{##1\hss}}} - {\endlist} - {\item} +\def\do#1{% + \defbibenvironment{#1} + {\list{\thefield{#1}}{% + \labelwidth\csname #1width\endcsname + \labelsep\biblabelsep + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \itemsep\bibitemsep + \parsep\bibparsep + \def\makelabel####1{####1\hss}}} + {\endlist} + {\item}} +\abx@dolabelfields % {<name>}[<default>]{<code>} - \newrobustcmd*{\defbibheading}[1]{% \@ifnextchar[%] {\blx@defbibheading{blx@head@#1}} @@ -6017,12 +5894,10 @@ \expandafter\newcommand\csname#1\endcsname[1][#2]} % {<name>}{<text>} - \newrobustcmd*{\defbibnote}[1]{% \long\csdef{blx@note@#1}} % {<name>}{<code>} - \newrobustcmd*{\defbibfilter}[2]{% \begingroup \def\blx@flt@error{\csname blx@flt@errortrue\endcsname}% @@ -6080,7 +5955,6 @@ test {\xifinlistcs\blx@flt@item{blx@catg@#1}}} % {<name>}{<code>} - \newrobustcmd*{\defbibcheck}[2]{% \csdef{blx@bibcheck@#1}{% \togglefalse{blx@skipentry}% @@ -6089,9 +5963,8 @@ % options % We need a 2-pass structure for options in \printbibliography and -% \printshorthands because section and/or sorting have to be set before any +% \printbiblist because section and/or sorting have to be set before any % other options and these also determine which list to use for later filtering - \define@key{blx@bib1}{segment}{} \define@key{blx@bib1}{type}{} \define@key{blx@bib1}{nottype}{} @@ -6115,25 +5988,25 @@ \define@key{blx@bib2}{section}{} \define@key{blx@bib2}{sorting}{} -\define@key{blx@los1}{segment}{} -\define@key{blx@los1}{type}{} -\define@key{blx@los1}{nottype}{} -\define@key{blx@los1}{subtype}{} -\define@key{blx@los1}{notsubtype}{} -\define@key{blx@los1}{keyword}{} -\define@key{blx@los1}{notkeyword}{} -\define@key{blx@los1}{category}{} -\define@key{blx@los1}{notcategory}{} -\define@key{blx@los1}{filter}{} -\define@key{blx@los1}{check}{} -\define@key{blx@los1}{heading}{} -\define@key{blx@los1}{env}{} -\define@key{blx@los1}{title}{} -\define@key{blx@los1}{prenote}{} -\define@key{blx@los1}{postnote}{} - -\define@key{blx@los2}{section}{} -\define@key{blx@los2}{sorting}{} +\define@key{blx@biblist1}{segment}{} +\define@key{blx@biblist1}{type}{} +\define@key{blx@biblist1}{nottype}{} +\define@key{blx@biblist1}{subtype}{} +\define@key{blx@biblist1}{notsubtype}{} +\define@key{blx@biblist1}{keyword}{} +\define@key{blx@biblist1}{notkeyword}{} +\define@key{blx@biblist1}{category}{} +\define@key{blx@biblist1}{notcategory}{} +\define@key{blx@biblist1}{filter}{} +\define@key{blx@biblist1}{check}{} +\define@key{blx@biblist1}{heading}{} +\define@key{blx@biblist1}{env}{} +\define@key{blx@biblist1}{title}{} +\define@key{blx@biblist1}{prenote}{} +\define@key{blx@biblist1}{postnote}{} + +\define@key{blx@biblist2}{section}{} +\define@key{blx@biblist2}{sorting}{} \define@key{blx@bib1}{sorting}{% \ifcsundef{blx@biber@sorting@#1} @@ -6148,21 +6021,27 @@ \blx@auxwrite\@mainaux{}{\string\abx@aux@sortscheme{#1}}}% \edef\blx@tempd{% \blx@xml@sorting{% + \ifcsdef{blx@sortdef@locale@#1} + { locale="\csuse{blx@sortdef@locale@#1}"} + {}}{% \csuse{blx@biber@sorting@#1}}}}} -\define@key{blx@los1}{sorting}{% +\define@key{blx@biblist1}{sorting}{% \ifcsundef{blx@biber@sorting@#1} {\blx@err@invopt{sorting=#1}{}}% {\blx@printbibchecks \def\blx@tempc{#1}% - % Add the sortscheme to the list of shorthand sortschemes + % Add the sortscheme to the list of sortschemes for this biblist % so we can compare on next run - \ifinlist{#1}{\blx@sortschemeslos} + \ifinlist{#1}{\blx@biblists} {} - {\listgadd\blx@sortschemeslos{#1}% - \blx@auxwrite\@mainaux{}{\string\abx@aux@sortschemelos{#1}}}% + {\listgadd\blx@biblists{#1}% + \blx@auxwrite\@mainaux{}{\string\abx@aux@biblist{#1}}}% \edef\blx@tempd{% \blx@xml@sorting{% + \ifcsdef{blx@sortdef@locale@#1} + { locale="\csuse{blx@sortdef@locale@#1}"} + {}}{% \csuse{blx@biber@sorting@#1}}}}} \define@key{blx@bib1}{section}{% @@ -6171,7 +6050,7 @@ {\c@refsection#1\relax \def\blx@tempe{#1}}} -\define@key{blx@los1}{section}{% +\define@key{blx@biblist1}{section}{% \ifcsundef{blx@sections@#1} {\blx@err@nosec{#1}} {\c@refsection#1\relax @@ -6188,7 +6067,7 @@ {\c@refsection#1\relax}} \define@key{blx@bib2}{segment}{\blx@key@segment{#1}} -\define@key{blx@los2}{segment}{\blx@key@segment{#1}} +\define@key{blx@biblist2}{segment}{\blx@key@segment{#1}} \def\blx@key@segment#1{% \ifcsundef{blx@segm@\the\c@refsection @#1} @@ -6200,7 +6079,7 @@ \blx@filter\blx@tempa{blx@segm@\the\c@refsection @#1}}} \define@key{blx@bib2}{type}{\blx@key@type{#1}} -\define@key{blx@los2}{type}{\blx@key@type{#1}} +\define@key{blx@biblist2}{type}{\blx@key@type{#1}} \def\blx@key@type#1{% \ifcsundef{blx@type@\the\c@refsection @#1} @@ -6219,7 +6098,7 @@ Use 'filter' and '\string\defbibfilter' with OR conjunctions}}}} \define@key{blx@bib2}{nottype}{\blx@key@nottype{#1}} -\define@key{blx@los2}{nottype}{\blx@key@nottype{#1}} +\define@key{blx@biblist2}{nottype}{\blx@key@nottype{#1}} \def\blx@key@nottype#1{% \ifcsundef{blx@type@\the\c@refsection @#1} @@ -6228,7 +6107,7 @@ \blx@notfilter\blx@tempa{blx@type@\the\c@refsection @#1}}} \define@key{blx@bib2}{subtype}{\blx@key@subtype{#1}} -\define@key{blx@los2}{subtype}{\blx@key@subtype{#1}} +\define@key{blx@biblist2}{subtype}{\blx@key@subtype{#1}} \def\blx@key@subtype#1{% \ifcsundef{blx@subt@\the\c@refsection @#1} @@ -6247,7 +6126,7 @@ Use 'filter' and '\string\defbibfilter' with OR conjunctions}}}} \define@key{blx@bib2}{notsubtype}{\blx@key@notsubtype{#1}} -\define@key{blx@los2}{notsubtype}{\blx@key@notsubtype{#1}} +\define@key{blx@biblist2}{notsubtype}{\blx@key@notsubtype{#1}} \def\blx@key@notsubtype#1{% \ifcsundef{blx@subt@\the\c@refsection @#1} @@ -6256,7 +6135,7 @@ \blx@notfilter\blx@tempa{blx@subt@\the\c@refsection @#1}}} \define@key{blx@bib2}{keyword}{\blx@key@keyword{#1}} -\define@key{blx@los2}{keyword}{\blx@key@keyword{#1}} +\define@key{blx@biblist2}{keyword}{\blx@key@keyword{#1}} \def\blx@key@keyword#1{% \ifcsundef{blx@keyw@\the\c@refsection @\detokenize{#1}} @@ -6266,7 +6145,7 @@ \blx@filter\blx@tempa{blx@keyw@\the\c@refsection @\detokenize{#1}}}} \define@key{blx@bib2}{notkeyword}{\blx@key@notkeyword{#1}} -\define@key{blx@los2}{notkeyword}{\blx@key@notkeyword{#1}} +\define@key{blx@biblist2}{notkeyword}{\blx@key@notkeyword{#1}} \def\blx@key@notkeyword#1{% \ifcsundef{blx@keyw@\the\c@refsection @\detokenize{#1}} @@ -6275,7 +6154,7 @@ \blx@notfilter\blx@tempa{blx@keyw@\the\c@refsection @\detokenize{#1}}}} \define@key{blx@bib2}{category}{\blx@key@category{#1}} -\define@key{blx@los2}{category}{\blx@key@category{#1}} +\define@key{blx@biblist2}{category}{\blx@key@category{#1}} \def\blx@key@category#1{% \ifcsundef{blx@catg@\detokenize{#1}} @@ -6285,7 +6164,7 @@ \blx@filter\blx@tempa{blx@catg@\detokenize{#1}}}} \define@key{blx@bib2}{notcategory}{\blx@key@notcategory{#1}} -\define@key{blx@los2}{notcategory}{\blx@key@notcategory{#1}} +\define@key{blx@biblist2}{notcategory}{\blx@key@notcategory{#1}} \def\blx@key@notcategory#1{% \ifcsundef{blx@catg@#1} @@ -6294,7 +6173,7 @@ \blx@notfilter\blx@tempa{blx@catg@#1}}} \define@key{blx@bib2}{filter}{\blx@key@filter{#1}} -\define@key{blx@los2}{filter}{\blx@key@filter{#1}} +\define@key{blx@biblist2}{filter}{\blx@key@filter{#1}} \def\blx@key@filter#1{% \ifcsdef{blx@filter@#1} @@ -6307,7 +6186,7 @@ Use \string\defbibfilter\space to define it}}} \define@key{blx@bib2}{check}{\blx@key@bibcheck{#1}} -\define@key{blx@los2}{check}{\blx@key@bibcheck{#1}} +\define@key{blx@biblist2}{check}{\blx@key@bibcheck{#1}} \def\blx@key@bibcheck#1{% \ifcsdef{blx@bibcheck@#1} @@ -6320,7 +6199,7 @@ \define@key{blx@bhd}{heading}{\blx@key@heading{#1}} \define@key{blx@bib2}{heading}{\blx@key@heading{#1}} -\define@key{blx@los2}{heading}{\blx@key@heading{#1}} +\define@key{blx@biblist2}{heading}{\blx@key@heading{#1}} \define@key{blx@bbs}{heading}{\blx@key@heading{#1}} \define@key{blx@bbg}{heading}{\blx@key@heading{#1}} @@ -6333,7 +6212,7 @@ {\def\blx@theheading{#1}}} \define@key{blx@bib2}{env}{\blx@key@env{#1}} -\define@key{blx@los2}{env}{\blx@key@env{#1}} +\define@key{blx@biblist2}{env}{\blx@key@env{#1}} \define@key{blx@bbs}{env}{\blx@key@env{#1}} \define@key{blx@bbg}{env}{\blx@key@env{#1}} \define@key{blx@bbc}{env}{\blx@key@env{#1}} @@ -6348,10 +6227,10 @@ \define@key{blx@bhd}{title}{\def\blx@thetitle{#1}} \define@key{blx@bib2}{title}{\def\blx@thetitle{#1}} -\define@key{blx@los2}{title}{\def\blx@thetitle{#1}} +\define@key{blx@biblist2}{title}{\def\blx@thetitle{#1}} \define@key{blx@bib2}{prenote}{\blx@key@prenote{#1}} -\define@key{blx@los2}{prenote}{\blx@key@prenote{#1}} +\define@key{blx@biblist2}{prenote}{\blx@key@prenote{#1}} \define@key{blx@bbs}{prenote}{\blx@key@prenote{#1}} \define@key{blx@bbg}{prenote}{\blx@key@prenote{#1}} \define@key{blx@bbc}{prenote}{\blx@key@prenote{#1}} @@ -6364,7 +6243,7 @@ {\def\blx@theprenote{#1}}} \define@key{blx@bib2}{postnote}{\blx@key@postnote{#1}} -\define@key{blx@los2}{postnote}{\blx@key@postnote{#1}} +\define@key{blx@biblist2}{postnote}{\blx@key@postnote{#1}} \define@key{blx@bbs}{postnote}{\blx@key@postnote{#1}} \define@key{blx@bbg}{postnote}{\blx@key@postnote{#1}} \define@key{blx@bbc}{postnote}{\blx@key@postnote{#1}} @@ -6378,13 +6257,15 @@ {\def\blx@thepostnote{#1}}} \define@key{blx@bib2}{resetnumbers}[true]{% - \ifstrequal{#1}{true} - {\iftoggle{blx@defernumbers} + \iftoggle{blx@defernumbers} + {\ifstrequal{#1}{true} {\csnumdef{blx@labelnumber@\the\c@refsection}{0}} - {\blx@warning{% - Option 'resetnumbers' requires 'defernumbers=true'.\MessageBreak - Ignoring 'resetnumbers=true'}}} - {}} + {\ifstrequal{#1}{false} + {} + {\csnumdef{blx@labelnumber@\the\c@refsection}{#1-1}}}} + {\blx@warning{% + Option 'resetnumbers' requires 'defernumbers=true'.\MessageBreak + Ignoring 'resetnumbers=true'}}} \define@key{blx@bib2}{omitnumbers}[true]{% \ifstrequal{#1}{true} @@ -6406,7 +6287,6 @@ {}}} % [<options>] - \newrobustcmd*{\printbibheading}{% \begingroup \edef\on@line{\on@line}% @@ -6420,11 +6300,11 @@ \blx@safe@actives \setkeys{blx@bhd}{#1}% \blx@rest@actives + \blx@langstrings \blx@bibheading\blx@theheading\blx@thetitle \endgroup} % [<options>] - \newrobustcmd*{\printbibliography}{% \begingroup \edef\on@line{\on@line}% @@ -6445,7 +6325,10 @@ \let\blx@tempc\blx@sorting% sorting scheme name from "sorting" option \edef\blx@tempd{% \blx@xml@sorting{% - \csuse{blx@biber@sorting@\blx@sorting}}}% sorting scheme from "sorting" option + \ifcsdef{blx@sortdef@locale@\blx@sorting} + { locale="\csuse{blx@sortdef@locale@\blx@sorting}"} + {}}{% + \csuse{blx@biber@sorting@\blx@sorting}}}% default to global \edef\blx@tempe{\the\c@refsection}% default refsection is current \blx@safe@actives \setkeys{blx@bib1}{#1}% Set sorting and section only, if present ... @@ -6464,13 +6347,12 @@ \setkeys{blx@bib2}{#1}% ... now we have correct \blx@tempa, set rest of options \blx@rest@actives \csxappto{blx@xml@slistsbib}{% - \blx@xml@slist{entry}{\blx@tempe}{\blx@tempc}{\blx@tempd}}% + \blx@xml@slist{\blx@tempc}{entry}{\blx@tempe}{\blx@tempc}{\blx@tempd}{}}% \ifdefvoid\blx@tempa {\blx@warn@bibempty\endgroup} {\blx@bibliography\blx@tempa}} % [<options>] - \newrobustcmd*{\bibbysection}{% \begingroup \ifnum\blx@maxsection=\z@ @@ -6509,7 +6391,6 @@ \fi} % [<options>] - \newrobustcmd*{\bibbysegment}{% \begingroup \edef\on@line{\on@line}% @@ -6553,7 +6434,6 @@ \fi} % [<options>] - \newrobustcmd*{\bibbycategory}{% \begingroup \edef\on@line{\on@line}% @@ -6596,8 +6476,8 @@ \endgroup} % {<entrykey>,...} - \def\blx@bibliography{% + \blx@langstrings \blx@bibheading\blx@theheading\blx@thetitle \blx@bibnote\blx@theprenote \begingroup @@ -6694,14 +6574,14 @@ \let\blx@bibcheck\relax \def\blx@initsep{% - \blx@imc@iffieldundef{sortinit} + \blx@imc@iffieldundef{bibinitsephash} {} {\ifnum\c@instcount>\@ne - \blx@imc@iffieldequals{sortinit}\blx@previnit + \blx@imc@iffieldequals{sortinithash}\blx@previnithash {} {\addvspace{\bibinitsep}}% \fi - \global\let\blx@previnit\abx@field@sortinit}} + \global\let\blx@previnithash\abx@field@sortinithash}} \def\blx@namesep{% \ifnum\c@instcount>\@ne @@ -6727,7 +6607,6 @@ \gappto\blx@hook@bibinit@next} % page tracker - \def\blx@pagetracker@context{% \blx@leavevmode \ifbool{@filesw} @@ -6741,7 +6620,6 @@ {}} % {<instcount>}{<page>} - \protected\def\blx@aux@page#1#2{% \csgdef{blx@page@#1}{#2}% \blx@addpagesum{#1}{#2}} @@ -6769,7 +6647,6 @@ \def\abx@aux@fnpage#1#2{\blx@addpagesum{#1}{#2}}} % hyperref interface - \appto\blx@mkhyperref{% \let\blx@anchors\@empty \ifundef\hyper@natanchorstart @@ -6787,45 +6664,59 @@ \appto\blx@mknohyperref{\let\blx@anchor\relax} -% List of shorthands - -\newrobustcmd*{\printshorthands}{% - \begingroup - \edef\on@line{\on@line}% +% Legacy alias for \printshorthands +\def\printshorthands{% \@ifnextchar[%] {\blx@printshorthands} {\blx@printshorthands[]}} -\def\blx@printshorthands[#1]{% +\def\blx@printshorthands[#1]{\printbiblist[#1]{shorthand}} + +% Custom bibliography list +% [<otions>]{biblistname} +\newrobustcmd*{\printbiblist}[2][]{% + \begingroup + \edef\on@line{\on@line}% \toggletrue{blx@tempa}% \toggletrue{blx@tempb}% - \def\blx@theheading{shorthands}% - \def\blx@theenv{shorthands}% + \def\blx@theheading{biblist}% default to biblist heading + \def\blx@theenv{#2}% default to list name + \def\blx@thebiblist{#2}% \let\blx@theprenote\@empty \let\blx@thepostnote\@empty \let\blx@thetitle\@empty % defaults \let\blx@tempa\@empty% before there is a .bbl, this must not be undef - \def\blx@tempc{shorthand}% default sorting scheme for shorthands + % default sorting scheme and scheme name for list is same name as list + % name, then global if not found + \edef\blx@tempc{% + \ifcsdef{blx@biber@sorting@#2} + {#2} + {\blx@sorting}}% \edef\blx@tempd{% - \blx@xml@sorting{% - \csuse{blx@biber@sorting@shorthand}}}% default sorting scheme for shorthands + \blx@xml@sorting + {\ifcsdef{blx@sortdef@locale@#2} + { locale="\csuse{blx@sortdef@locale@#2}"} + {}} + {\ifcsdef{blx@biber@sorting@#2} + {\csuse{blx@biber@sorting@#2}} + {\csuse{blx@biber@sorting@\blx@sorting}}}}% \let\blx@printbibchecks\relax \edef\blx@tempe{\the\c@refsection}% default refsection is current \blx@safe@actives - \setkeys{blx@los1}{#1}% Set sorting and section only, if present ... + \setkeys{blx@biblist1}{#1}% Set sorting and section only, if present ... \blx@rest@actives - \ifcsvoid{blx@slistsbib@\blx@tempe @shorthand@\blx@tempc} + \ifcsvoid{blx@slistsbib@\blx@tempe @#2@\blx@tempc} {} - {\letcs\blx@tempa{blx@slistsbib@\blx@tempe @shorthand@\blx@tempc}}% + {\letcs\blx@tempa{blx@slistsbib@\blx@tempe @#2@\blx@tempc}}% \blx@safe@actives - \setkeys{blx@los2}{#1}% ... now we have correct \blx@tempa, set rest of options + \setkeys{blx@biblist2}{#1}% ... now we have correct \blx@tempa, set rest of options \blx@rest@actives \csxappto{blx@xml@slistsbib}{% - \blx@xml@slistlos{shorthand}{\blx@tempe}{\blx@tempc}{\blx@tempd}}% + \blx@xml@slist{#2}{list}{\blx@tempe}{\blx@tempc}{\blx@tempd}{\csuse{blx@biber@biblistfilters@#2}}}% \ifdefvoid\blx@tempa - {\blx@warn@losempty\endgroup} - {\blx@shorthands\blx@tempa}} + {\blx@warn@biblistempty{#2}\endgroup} + {\blx@biblist\blx@tempa}} \def\blx@printbibchecks{% \togglefalse{blx@tempa}% @@ -6836,26 +6727,26 @@ {\global\let\blx@printbibchecks\relax}}} % {<entrykey>,...} - -\def\blx@shorthands{% +\def\blx@biblist{% \if@twocolumn \@restonecoltrue\onecolumn \else \@restonecolfalse \fi + \blx@langstrings \blx@bibheading\blx@theheading\blx@thetitle \blx@bibnote\blx@theprenote \begingroup \blx@bibinit \let\@noitemerr\@empty - \let\blx@noitem\blx@warn@losempty + \def\blx@noitem{\blx@warn@biblistempty{\blx@thebiblist}}% \csuse{blx@env@\blx@theenv}% - \csuse{blx@hook@losinit}% - \let\blx@do\blx@lositem - \let\blx@done\blx@endshorthands + \csuse{blx@hook@biblistinit@\blx@thebiblist}% + \let\blx@do\blx@biblistitem + \let\blx@done\blx@endbiblist \blx@listloop} -\def\blx@endshorthands{% +\def\blx@endbiblist{% \csuse{blx@endenv@\blx@theenv}% \blx@noitem \endgroup @@ -6863,14 +6754,20 @@ \endgroup \if@restonecol\twocolumn\fi} -\newrobustcmd*{\AtBeginShorthands}{\gappto\blx@hook@losinit} -\newrobustcmd*{\AtEveryLositem}{\gappto\blx@hook@lositem} +% Legacy aliases +\def\AtBeginShorthands{\AtBeginBiblist{shorthand}} +\def\AtEveryLositem{\AtEveryBiblistitem{shorthand}} \@onlypreamble\AtBeginShorthands \@onlypreamble\AtEveryLositem -% {<entrykey>} +% {<biblistname>} +\newrobustcmd*{\AtBeginBiblist}[1]{\csgappto{blx@hook@biblistinit@#1}} +\newrobustcmd*{\AtEveryBiblistitem}[1]{\csgappto{blx@hook@biblistitem@#1}} +\@onlypreamble\AtBeginBiblist +\@onlypreamble\AtEveryBiblistitem -\def\blx@lositem#1{% +% {<entrykey>} +\def\blx@biblistitem#1{% \blx@ifdata{#1} {\begingroup \blx@getdata{#1}% @@ -6881,19 +6778,21 @@ \blx@setoptions@entry \addtocounter{instcount}\@ne \csuse{blx@item@\blx@theenv}\relax - \csuse{blx@hook@lositem}% + \csuse{blx@hook@biblistitem@\blx@thebiblist}% \blx@execute \blx@initunit \blx@beglangbib \bibsentence \blx@pagetracker - \blx@driver{shorthands}% + \blx@driver{\blx@thebiblist}% \blx@postpunct \blx@endlangbib}% \endgroup} {}} -\DeclareBibliographyDriver{shorthands}{% +% Just a default in case .bbx doesn't define it. standard.bbx defines +% it to print a complete entry, like the bibliography. +\DeclareBibliographyDriver{shorthand}{% \iffieldundef{shorttitle} {\printfield{title}} {\printfield{shorttitle}}} @@ -6983,6 +6882,20 @@ \global\c@refsection\z@} \def\blx@endrefsection@biber{% + % make sure we always output aliases to the .bcf otherwise after their + % first resolution by biber, they will be invisible to subsequent biber + % runs since biblatex will resolve the \keyalias{} macro to the main + % entry key, biber won't put \keyalias{}in the .bbl on subsequent runs + % and biblatex will report a missing citekey + \def\do##1{% + % Make sure this counter exists. Sometimes it might not when using, e.g: + % refsection=chapter and \includeonly to put in the chapters. + \ifcsname blx@sectionciteorder@\the\c@refsection\endcsname\else + \expandafter\newcount\csname blx@sectionciteorder@\the\c@refsection\endcsname + \fi + \global\advance\csname blx@sectionciteorder@\the\c@refsection\endcsname\@ne + \blx@auxwrite\blx@bcfout{}{\blx@xml@citekey{##1}{\expandafter\the\csname blx@sectionciteorder@\the\c@refsection\endcsname}}}% + \dolistcsloop{blx@keyaliases@\the\c@refsection}% \ifnum\c@refsection>\z@ \blx@auxwrite\blx@bcfout{}{% \blx@xml@endsection\blx@nl @@ -7412,7 +7325,6 @@ \endgroup} % {<entrykey>,...} - \protected\def\blx@citeloop#1{% \begingroup \global\advance\csname blx@sectionciteorder@\the\c@refsection\endcsname\@ne @@ -7930,7 +7842,6 @@ \csname blx@#1@\the\c@refsection @#2\endcsname}} % {<instcount>}{<entrykey>}{<refsection>}{<page>}{<page int>} - \protected\def\blx@aux@backref#1#2#3#4#5{% \ifcsundef{blx@pref@#3@\detokenize{#2}} {\global\cslet{blx@pref@#3@\detokenize{#2}}\@empty @@ -7945,7 +7856,6 @@ \def\abx@aux@backref#1#2#3#4#5{\blx@addpagesum{#1}{#5}}} % {<true>}{<false>} - \def\blx@ifcitesingle{% \ifnum\c@citetotal=\@ne \expandafter\@firstoftwo @@ -8005,7 +7915,6 @@ \bibhyperref \bibhyperlink \bibhypertarget \ifhyperref} % {<entrykey>,...} - \protected\def\nocite#{\blx@nocite} \def\blx@nocite#1{% @@ -8024,7 +7933,6 @@ % {<macro>}[<arg1>][<arg2>]{<arg3>} % => <macro>{<arg1>}{<arg2>}{<arg3>} - \protected\def\blx@citeargs#1{% \@ifnextchar[%] {\blx@citeargs@i{#1}} @@ -8040,7 +7948,6 @@ % {<macro>}(<arg1>)(<arg2>) % => <macro>{<arg1>}{<arg2>} - \protected\def\blx@multiargs#1{% \@ifnextchar(%) {\blx@multiargs@i{#1}} @@ -8053,7 +7960,6 @@ % {<macro>}[<arg1>][<arg2>]{<arg3>}<punct> % => <macro>{<arg1>}{<arg2>}{<arg3>}{<punctcmd>} - \protected\def\blx@citepunct#1{% \blx@citeargs{\blx@citepunct@i{#1}}} \long\def\blx@citepunct@i#1#2#3#4{% @@ -8061,7 +7967,6 @@ % {<csname>}[<arg1>][<arg2>]{arg3}[arg4]{arg5}<punct> % => <macro>{<arg1>}{<arg2>}{<arg3>}{<arg4>}{arg5}{<punctcmd>} - \protected\def\blx@citexpunct#1{% \blx@citeargs{\blx@citexpunct@i{#1}}} \long\def\blx@citexpunct@i#1#2#3#4{% @@ -8072,7 +7977,6 @@ \blx@thecheckpunct{\blxcitecmd{#1}#2{#3}{#4}}} % {<code>}<punct> => <code>{<punctcmd>} - \long\def\blx@checkpunct#1{% \begingroup \def\blx@tempa{\endgroup#1}% @@ -8123,7 +8027,6 @@ {\blx@initunit}} % *{<command>}[<wrapper>]{<precode>}{<loopcode>}{<delimcode>}{<postcode>} - \newrobustcmd*{\DeclareCiteCommand}{% \@ifstar{\blx@defcitecmd*}{\blx@defcitecmd{}}} @@ -8173,7 +8076,6 @@ \endgroup}} % {<type>}{<name>}{*} - \def\blx@checkcitecmd#1#2{% \ifblank{#2} {\ifcsdef{blx@cite@#1} @@ -8193,7 +8095,6 @@ \csdef{blx@citei@#1}{\blx@err@citecmd{#1}}}}} % {<name>}{prenote}{postnote}{citekey}{punct} - \newrobustcmd*{\blxcitecmd}[1]{% \ifcsundef{blx@cite@#1} {\blx@err@citecmd{#1}} @@ -8207,13 +8108,11 @@ {\csuse{blx@citei@#1}}} % {<multicitecount>}{<name>}{prenote}{postnote}{citekey}{punct} - \protected\def\blxmciteicmd#1{% \c@multicitecount#1\relax \blxciteicmd} % {<multicitetotal>}{<multiprenote>}{<multipostnote>} - \protected\def\blxmcites#1#2#3{% \begingroup \blx@citeinit @@ -8237,7 +8136,6 @@ \endgroup} % {<command>}[<wrapper>]{<cite>}{<delimiter>} - \newrobustcmd{\DeclareMultiCiteCommand}[1]{% \ifundef#1% {} @@ -8274,7 +8172,6 @@ % {<command>}{<wrapper>}{<citecmd>}{<delimiter>} => % <init><command>{<wrapper>}{<cites>}{<punct>} - \def\blx@multicite#1#2#3#4{% \begingroup \csuse{blx@hook@mcite@before}% @@ -8348,7 +8245,6 @@ \csdef{blx@multiparse@iii} {\toggletrue{blx@tempa}\blx@multiparse} % {<name>}[l|i|r]{<cite>}{<multicite>} - \newrobustcmd*{\DeclareAutoCiteCommand}[1]{% \ifcsundef{blx@acite@#1} {} @@ -8402,7 +8298,6 @@ \endgroup}} % {<characters>} - \newrobustcmd*{\DeclareAutoPunctuation}[1]{% \ifblank{#1} {\let\blx@thecheckpunct\blx@nocheckpunct} @@ -8420,7 +8315,6 @@ \endgroup} % [<prenote>][<postnote>]{<entrykey>,...}[<format>]{<namelist>}<punct> - \newrobustcmd*{\citename}{\blx@citexpunct{citename}} \long\csdef{blx@cite@citename}#1#2#3#4#5#6{% \begingroup @@ -8448,7 +8342,6 @@ \endgroup} % [<prenote>][<postnote>]{<entrykey>,...}[<format>]{<list>}<punct> - \newrobustcmd*{\citelist}{\blx@citexpunct{citelist}} \long\csdef{blx@cite@citelist}#1#2#3#4#5#6{% \begingroup @@ -8682,7 +8575,11 @@ \protected\long\def\blx@imc@mkbibbold#1{% \textbf{#1}\blx@imc@setpunctfont\textbf} -\blx@regimcs{\mkbibquote \mkbibemph \mkbibbold} +\newrobustcmd*{\mkbibitalic}{\textit} +\protected\long\def\blx@imc@mkbibitalic#1{% + \textit{#1}\blx@imc@setpunctfont\textit} + +\blx@regimcs{\mkbibquote \mkbibemph \mkbibbold \mkbibitalic} \newcommand*{\bibleftparen}{\blx@postpunct(} \newcommand*{\bibrightparen}{\blx@postpunct)\midsentence} @@ -9021,9 +8918,9 @@ \xdef\blx@xml@noinit#1{% ~~~~<bcf:noinit value="#1"/>\blx@nl} -\xdef\blx@xml@sorting#1{% - ~~<bcf:sorting>\blx@nl - #1% +\xdef\blx@xml@sorting#1#2{% + ~~<bcf:sorting#1>\blx@nl% + #2% ~~</bcf:sorting>\blx@nl} \xdef\blx@xml@presort#1#2{% ~~~~<bcf:presort\noexpand\ifblank{#1}{}{ type="#1"}>% @@ -9046,15 +8943,17 @@ \xdef\blx@xml@endsection{% ~~</bcf:section>} -\xdef\blx@xml@slist#1#2#3#4{% - ~~<bcf:sortlist section="#2" type="#1" label="#3">\blx@nl - #4% - ~~</bcf:sortlist>\blx@nl} -\xdef\blx@xml@slistlos#1#2#3#4{% - ~~<bcf:sortlist section="#2" type="#1" label="#3">\blx@nl - ~~~~<bcf:filter type="field">shorthand</bcf:filter>\blx@nl - #4% +\xdef\blx@xml@slist#1#2#3#4#5#6{% + ~~<bcf:sortlist section="#3" name="#1" type="#2" sortscheme="#4">\blx@nl + #6% + #5% ~~</bcf:sortlist>\blx@nl} +\xdef\blx@xml@slistfilterorbegin{% + ~~~~<bcf:filteror>\blx@nl} +\xdef\blx@xml@slistfilterorend{% + ~~~~</bcf:filteror>\blx@nl} +\xdef\blx@xml@slistfilter#1#2{% + ~~~~<bcf:filter type="#1">#2</bcf:filter>\blx@nl} \xdef\blx@xml@bibdata#1#2{% ~~<bcf:bibdata section="#1">\blx@nl @@ -9099,6 +8998,7 @@ \blx@xml@svalue{minitems}{\blx@minitems}% \blx@xml@toggle{singletitle}% \blx@xml@svalue{sortalphaothers}{\sortalphaothers}% + \blx@xml@svalue{sortlocale}{\blx@sortlocale}% \blx@xml@svalue{sortscheme}{\blx@sorting}% \blx@xml@svalue{uniquelist}{\blx@uniquelist}% \blx@xml@svalue{uniquename}{\blx@uniquename}% @@ -9139,7 +9039,7 @@ \blx@xml@toggle{singletitle}% \blx@xml@toggle{skipbib}% \blx@xml@toggle{skiplab}% - \blx@xml@toggle{skiplos}% + \blx@xml@toggle{skipbiblist}% \blx@xml@svalue{uniquelist}{\blx@uniquelist}% \blx@xml@svalue{uniquename}{\blx@uniquename}% \blx@xml@toggle{useauthor}% @@ -9168,9 +9068,6 @@ \blx@xml@svalue{mincrossrefs}{\blx@mincrossrefs}% \blx@xml@toggle{sortcase}% \blx@xml@toggle{sortfirstinits}% - \ifdef\blx@sortlocale - {\blx@xml@svalue{sortlocale}{\blx@sortlocale}} - {}% \blx@xml@toggle{sortupper}% }% \blx@xml@comment{BIBLATEX OPTIONS}% @@ -9258,7 +9155,7 @@ \dolistcsloop{blx@biber@datamodel@entrytypes}% \eappto\blx@tempa{% \blx@xml@comment{SORTING}% - \blx@xml@sorting{% + \blx@xml@sorting{}{% \blx@bcf@presort \blx@bcf@exclude \csuse{blx@biber@sorting@\blx@sorting}% @@ -9669,8 +9566,43 @@ \@onlypreamble\ResetDataInheritance % {<name>}{<spec>} +\newrobustcmd*{\DeclareBiblistFilter}[2]{% + \begingroup + \let\filteror\blx@biblistfilteror + \let\filter\blx@biblistfilter + \let\blx@tempa\@empty + #2% + \global\cslet{blx@biber@biblistfilters@#1}\blx@tempa + \endgroup} +\@onlypreamble\DeclareBiblistFilter + +\newcommand*{\blx@biblistfilteror}[1]{% + \eappto\blx@tempa{\blx@xml@slistfilterorbegin}% + #1% + \eappto\blx@tempa{\blx@xml@slistfilterorend}} + +\newcommand*{\blx@biblistfilter}[1][2]{% + \let\blx@tempc\@empty + \let\blx@tempd\@empty + \setkeys{blx@biblistfilter@filter}{#1}% + \eappto\blx@tempa{% + \blx@xml@slistfilter{\blx@tempc}{\blx@tempd}}} + +\define@key{blx@biblistfilter@filter}{type}{% + \def\blx@tempc{#1}} +\define@key{blx@biblistfilter@filter}{filter}{% + \def\blx@tempd{#1}} + +% Predefine filters for label fields +\def\do#1{\DeclareBiblistFilter{#1}{\filter[type=field,filter=#1]}} +\abx@dolabelfields -\newrobustcmd*{\DeclareSortingScheme}[2]{% +% {<name>}{<spec>} +\newrobustcmd*{\DeclareSortingScheme}[3][]{% + \ifblank{#1} + {} + {\setkeys{blx@sortdef@sorting}{#1}% + \csxdef{blx@sortdef@locale@#2}{\blx@templ}}% \begingroup \let\sort\blx@sortdef@sort \let\name\blx@sortdef@field% legacy pre-biblatex 2.0 compat @@ -9680,11 +9612,14 @@ \def\citeorder{\blx@sortdef@field{citeorder}}% \blx@tempcnta\z@ \let\blx@tempa\@empty - #2% - \global\cslet{blx@biber@sorting@#1}\blx@tempa + #3% + \global\cslet{blx@biber@sorting@#2}\blx@tempa \endgroup} \@onlypreamble\DeclareSortingScheme +\define@key{blx@sortdef@sorting}{locale}{% locale name + \def\blx@templ{#1}} + \newcommand*{\blx@sortdef@sort}[2][]{% \advance\blx@tempcnta\@ne \blx@tempcntb\z@ @@ -9698,6 +9633,8 @@ \eappto\blx@tempa{% \blx@xml@sort{\blx@tempc}{\blx@tempb}}} +\define@key{blx@sortdef@sort}{locale}{% locale name + \eappto\blx@tempc{ locale="#1"}} \define@key{blx@sortdef@sort}{direction}{% ascending|descending \ifstrequal{#1}{ascending} {\eappto\blx@tempc{ sort\string_direction="ascending"}} @@ -9988,14 +9925,9 @@ \DeclareBibliographyOption{sortupper}[true]{% \settoggle{blx@sortupper}{#1}} -\DeclareBibliographyOption{sortlocale}{% - \ifblank{#1} - {\undef\blx@sortlocale} - {\edef\blx@sortlocale{\detokenize{#1}}}} - \DeclareBibliographyOption{sortlos}{% \blx@warning@noline{% - sortlos option is deprecated, use 'sorting' option to \string\printshorthands}} + sortlos option is deprecated, use 'sorting' option to \string\printbiblist}} \DeclareBibliographyOption{maxnames}{% \numdef\blx@maxcitenames{#1}% @@ -10162,6 +10094,9 @@ {\let\abx@bibmonth\blx@imc@bibsstring} {\let\abx@bibmonth\blx@imc@biblstring}} +\DeclareBibliographyOption{sortlocale}{% + \edef\blx@sortlocale{\detokenize{#1}}} + \DeclareBibliographyOption{language}{% \togglefalse{blx@autolangbib}% \togglefalse{blx@autolangcite}% @@ -10810,10 +10745,19 @@ \DeclareEntryOption{skipbib}[true]{% \settoggle{blx@skipbib}{#1}} -\DeclareTypeOption{skiplos}[true]{% - \settoggle{blx@skiplos}{#1}} -\DeclareEntryOption{skiplos}[true]{% - \settoggle{blx@skiplos}{#1}} +\DeclareTypeOption{skiplos}{% + \blx@warning@noline{% + skiplos option is deprecated, use 'skipbiblist' instead}% + \settoggle{blx@skipbiblist}{#1}} +\DeclareEntryOption{skiplos}{% + \blx@warning@noline{% + skiplos option is deprecated, use 'skipbiblist' instead}% + \settoggle{blx@skipbiblist}{#1}} + +\DeclareTypeOption{skipbiblist}[true]{% + \settoggle{blx@skipbiblist}{#1}} +\DeclareEntryOption{skipbiblist}[true]{% + \settoggle{blx@skipbiblist}{#1}} \DeclareTypeOption{skiplab}[true]{% \settoggle{blx@skiplab}{#1}} @@ -10822,11 +10766,11 @@ \DeclareTypeOption{dataonly}[true]{% \settoggle{blx@skipbib}{#1}% - \settoggle{blx@skiplos}{#1}% + \settoggle{blx@skipbiblist}{#1}% \settoggle{blx@skiplab}{#1}} \DeclareEntryOption{dataonly}[true]{% \settoggle{blx@skipbib}{#1}% - \settoggle{blx@skiplos}{#1}% + \settoggle{blx@skipbiblist}{#1}% \settoggle{blx@skiplab}{#1}} % Option processor/scheduler @@ -10857,7 +10801,7 @@ \setkeys{blx@opt@ldt}{style=numeric} \setkeys{blx@opt@pre}{% - sorting=nty,sortcase,sortupper,sortcites=false, + sorting=nty,sortlocale=auto,sortcase,sortupper,sortcites=false, maxnames=3,minnames=1,maxalphanames=3,minalphanames=1, maxitems=3,minitems=1,mincrossrefs=2,useauthor=true,useeditor=true, usetranslator=false,indexing=false,abbreviate=true,dateabbrev=true, @@ -11017,6 +10961,16 @@ \blx@inf@refseg} \AtEndOfPackage{% + % Data model macros are forbidden after package load is finished + \def\blx@warn@dm#1{\blx@warning@noline{Data model macro '#1' cannot be used in preamble}} + \def\ResetDatamodelEntrytypes{\blx@warn@dm{ResetDatamodelEntrytypes}} + \def\ResetDatamodelFields{\blx@warn@dm{ResetDatamodelFields}} + \def\ResetDatamodelEntryfields{\blx@warn@dm{ResetDatamodelEntryfields}} + \def\ResetDatamodelConstraints{\blx@warn@dm{ResetDatamodelConstraints}} + \renewcommand*{\DeclareDatamodelEntrytypes}[2][]{\blx@warn@dm{DeclareDatamodelEntrytypes}} + \renewcommand*{\DeclareDatamodelFields}[2][]{\blx@warn@dm{DeclareDatamodelFields}} + \renewcommand*{\DeclareDatamodelEntryfields}[2][]{\blx@warn@dm{DeclareDatamodelEntryfields}} + \renewcommand*{\DeclareDatamodelConstraints}[2][]{\blx@warn@dm{DeclareDatamodelConstraints}} \AtBeginDocument{% \let\do\undef \blx@dopreamblecmds diff --git a/Master/texmf-dist/tex/latex/biblatex/blx-compat.def b/Master/texmf-dist/tex/latex/biblatex/blx-compat.def index 45aeb955f98..32562dc6497 100644 --- a/Master/texmf-dist/tex/latex/biblatex/blx-compat.def +++ b/Master/texmf-dist/tex/latex/biblatex/blx-compat.def @@ -73,6 +73,12 @@ \DeclareOption{toc=bibliography}{% \let\ifkomabibtotoc=\@firstoftwo \let\ifkomabibtotocnumbered=\@secondoftwo}% + \DeclareOption{toc=nobib}{% + \let\ifkomabibtotoc=\@secondoftwo + \let\ifkomabibtotocnumbered=\@secondoftwo}% + \DeclareOption{toc=nobibliography}{% + \let\ifkomabibtotoc=\@secondoftwo + \let\ifkomabibtotocnumbered=\@secondoftwo}% \DeclareOption{toc=bibnumbered}{% \let\ifkomabibtotoc=\@firstoftwo \let\ifkomabibtotocnumbered=\@firstoftwo}% diff --git a/Master/texmf-dist/tex/latex/biblatex/blx-dm.def b/Master/texmf-dist/tex/latex/biblatex/blx-dm.def index c275d1e57ff..5646a3f55e6 100644 --- a/Master/texmf-dist/tex/latex/biblatex/blx-dm.def +++ b/Master/texmf-dist/tex/latex/biblatex/blx-dm.def @@ -1,6 +1,7 @@ % -*- mode: LaTeX -*- \newbool{dmskipout}% +\newbool{dmlabelfield}% % Data model .bcf output macros \xdef\blx@xml@datamodel#1{% @@ -64,6 +65,7 @@ \global\cslet{blx@biber@datamodel@entrytypes}\@empty} \newrobustcmd*{\ResetDatamodelFields}{% + \global\cslet{blx@biber@datamodel@labelfields}\@empty \global\cslet{blx@bcf@datamodel@fields}\@empty \global\cslet{blx@biber@datamodel@fields}\@empty \global\cslet{blx@biber@datamodel@names}\@empty @@ -101,9 +103,18 @@ \let\blx@dm@datatype\@empty \let\blx@dm@format\@empty \boolfalse{dmskipout}% + \boolfalse{dmlabelfield}% \let\blx@tempa\@empty \setkeys{blx@datamodel@field}{#1}% \def\do##1{% + \ifboolexpr{% add to list of label fields + not bool {dmskipout} + and + bool {dmlabelfield} + and + not test {\ifinlistcs{##1}{blx@biber@datamodel@labelfields}}} + {\listcsgadd{blx@biber@datamodel@labelfields}{##1}} + {}% \ifboolexpr{% add to list of names if it is a name which appears in .bbl not bool {dmskipout} and @@ -119,6 +130,10 @@ ( test {\ifcsstring{blx@dm@datatype}{literal}} or test {\ifcsstring{blx@dm@datatype}{key}} + or + test {\ifcsstring{blx@dm@datatype}{uri}} + or + test {\ifcsstring{blx@dm@datatype}{verbatim}} ) and not test {\ifinlistcs{##1}{blx@biber@datamodel@lists}}} @@ -134,14 +149,24 @@ test {\ifcsstring{blx@dm@datatype}{literal}} ) or - ( test {\ifcsstring{blx@dm@type}{field}} + ( test {\ifcsstring{blx@dm@type}{list}} and - test {\ifcsstring{blx@dm@datatype}{code}} + test {\ifcsstring{blx@dm@datatype}{key}} ) or ( test {\ifcsstring{blx@dm@type}{list}} and - test {\ifcsstring{blx@dm@datatype}{key}} + test {\ifcsstring{blx@dm@datatype}{uri}} + ) + or + ( test {\ifcsstring{blx@dm@type}{list}} + and + test {\ifcsstring{blx@dm@datatype}{verbatim}} + ) + or + ( test {\ifcsstring{blx@dm@type}{field}} + and + test {\ifcsstring{blx@dm@datatype}{code}} ) or test {\ifinlistcs{##1}{blx@biber@datamodel@fields}}} @@ -170,6 +195,11 @@ {\appto\blx@tempa{ skip\string_output="true"}% \booltrue{dmskipout}} {}} +\define@key{blx@datamodel@field}{label}[true]{% true|false + \ifstrequal{#1}{true} + {\appto\blx@tempa{ label="true"}% + \booltrue{dmlabelfield}} + {}} \newrobustcmd*{\DeclareDatamodelEntryfields}[2][]{% \begingroup @@ -389,11 +419,7 @@ relatedtype, reprinttitle, series, - shorthand, shorthandintro, - shortjournal, - shortseries, - shorttitle, subtitle, title, titleaddon, @@ -408,6 +434,12 @@ volume, volumes} +\DeclareDatamodelFields[type=field, datatype=literal, label=true]{ + shorthand, + shortjournal, + shortseries, + shorttitle} + \DeclareDatamodelFields[type=field, datatype=datepart, nullok]{ urlendyear, endyear, @@ -451,10 +483,12 @@ namea, nameb, namec, - shortauthor, - shorteditor, translator} +\DeclareDatamodelFields[type=list, datatype=name, label=true]{ + shortauthor, + shorteditor} + \DeclareDatamodelFields[type=list, datatype=name, skipout]{sortname} \DeclareDatamodelFields[type=field, datatype=key]{ @@ -494,12 +528,12 @@ \DeclareDatamodelFields[type=field, datatype=uri]{url} -\DeclareDatamodelFields[type=field, format=csv, datatype=entrykey, skipout]{xdata, ids, entryset} -\DeclareDatamodelFields[type=field, format=csv, datatype=entrykey]{related} +\DeclareDatamodelFields[type=field, format=xsv, datatype=entrykey, skipout]{xdata, ids, entryset} +\DeclareDatamodelFields[type=field, format=xsv, datatype=entrykey]{related} -\DeclareDatamodelFields[type=field, format=csv, datatype=keyword]{keywords} +\DeclareDatamodelFields[type=field, format=xsv, datatype=keyword]{keywords} -\DeclareDatamodelFields[type=field, format=csv, datatype=option, skipout]{options, relatedoptions} +\DeclareDatamodelFields[type=field, format=xsv, datatype=option, skipout]{options, relatedoptions} \DeclareDatamodelFields[type=field, datatype=range]{pages} \DeclareDatamodelFields[type=field, datatype=code]{execute} diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/brazilian.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/brazilian.lbx index 72cd517b6f4..317aa18ab3e 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/brazilian.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/brazilian.lbx @@ -409,6 +409,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{portugu{\^e}s}{portugu{\^e}s}}, langrussian = {{russo}{russo}}, +% langslovene = {{}{}},% FIXME: missing langspanish = {{espanhol}{espanhol}}, langswedish = {{sueco}{sueco}}, fromamerican = {{do ingl\^es}{do ingl\^es}}, @@ -429,6 +430,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{do portugu{\^e}s}{do portugu{\^e}s}}, fromrussian = {{do russo}{do russo}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{do espanhol}{do espanhol}}, fromswedish = {{do sueco}{do sueco}}, countryde = {{Alemanha}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/catalan.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/catalan.lbx index 911441d9e22..dc87d06d0f1 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/catalan.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/catalan.lbx @@ -430,6 +430,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{portugu\`es}{port\adddot}}, langrussian = {{rus}{rus}}, +% langslovene = {{}{}},% FIXME: missing langspanish = {{castell\`a}{cast\adddot}}, langswedish = {{suec}{suec}}, fromamerican = {{de l'angl\`es americ\`a}{de l'ang\adddotspace amer\adddot}}, @@ -450,6 +451,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{del portugu\`es}{del port\adddot}}, fromrussian = {{del rus}{del rus}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{del castell\`a}{del cast\adddot}}, fromswedish = {{del suec}{del suec}}, countryde = {{Alemanya}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/croatian.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/croatian.lbx index d009faf02b7..08aee901dbf 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/croatian.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/croatian.lbx @@ -29,17 +29,19 @@ \iffieldundef{#1}{}{\space}}% \iffieldbibstring{#1} {\bibstring{\thefield{#1}}} - {\mkbibordinal{\thefield{#1}}}}% + {\stripzeros{\thefield{#1}}}}% \protected\def\mkbibdateshort#1#2#3{% \iffieldundef{#3} {} - {\mkbibordinal{\thefield{#3}}}% + {\mkbibordinal{\thefield{#3}}% + \iffieldundef{#2}{}{\addnbthinspace}}% \iffieldundef{#2} {} - {\mkbibordinal{\thefield{#2}}}% + {\mkbibordinal{\thefield{#2}}% + \iffieldundef{#1}{}{\addnbthinspace}}% \iffieldbibstring{#1} {\bibstring{\thefield{#1}}} - {\mkbibordinal{\thefield{#1}}}}% + {\stripzeros{\thefield{#1}}}}% \savecommand\mkbibordedition \savecommand\mkbibordseries \def\mkbibordedition{\mkbibordinal}% @@ -441,6 +443,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{portugalski}{portugalski}}, % langrussian = {{}{}},% FIXME: missing +% langslovene = {{}{}},% FIXME: missing langspanish = {{\v{s}panjolski}{\v{s}panjolski}}, langswedish = {{\v{s}vedski}{\v{s}vedski}}, fromamerican = {{s engleskog}{s engleskog}}, @@ -461,6 +464,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{s portugalskog}{s portugalskog}}, % fromrussian = {{}{}},% FIXME: missing +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{sa \v{s}panjolskog}{sa \v{s}panjolskog}}, fromswedish = {{sa \v{s}vedskog}{sa \v{s}vedskog}}, countryde = {{Njema\v{c}ka}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/czech.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/czech.lbx index 0e0af3f90a3..5c3593dff42 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/czech.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/czech.lbx @@ -351,6 +351,7 @@ langnorwegian = {{nor\v{s}tina}{nor\v{s}\adddot}}, % langpolish = {{}{}},% FIXME: missing langportuguese = {{portugal\v{s}tina}{port\adddot}}, +% langslovene = {{}{}},% FIXME: missing langspanish = {{\v{s}pan\v{e}l\v{s}tina}{\v{s}pa\v{n}\adddot}}, langswedish = {{\v{s}v\'{e}d\v{s}tina}{\v{s}v\'{e}d\adddot}}, fromamerican = {{z americk\'{e} angli\v{c}tiny}{z amer\adddot angl\adddot}}, @@ -370,6 +371,7 @@ fromnorwegian = {{z nor\v{s}tiny}{z nor\adddot}}, % frompolish = {{}{}},% FIXME: missing fromportuguese = {{z portugal\v{s}tiny}{z portugal\v{s}tiny}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{ze \v{s}pan\v{e}l\v{s}tiny}{ze \v{s}pa\v{n}\adddot}}, fromswedish = {{ze \v{s}v\'{e}d\v{s}tiny}{ze \v{s}v\'{e}d\adddot}}, countryde = {{N\v{e}mecko}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/danish.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/danish.lbx index ca68c709adc..7b99454a729 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/danish.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/danish.lbx @@ -350,6 +350,7 @@ % langpolish = {{}{}},% FIXME: missing % langportuguese = {{}{}},% FIXME: missing % langrussian = {{}{}},% FIXME: missing +% langslovene = {{}{}},% FIXME: missing langspanish = {{spansk}{spansk}}, % langswedish = {{}{}},% FIXME: missing fromamerican = {{fra amerikansk}{fra amerikansk}}, @@ -370,6 +371,7 @@ % frompolish = {{}{}},% FIXME: missing % fromportuguese = {{}{}},% FIXME: missing % fromrussian = {{}{}},% FIXME: missing +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{fra spansk}{fra spansk}}, % fromswedish = {{}{}},% FIXME: missing countryde = {{Tyskland}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/dutch.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/dutch.lbx index c9f5d9bb0d8..b795becbc5b 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/dutch.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/dutch.lbx @@ -421,6 +421,7 @@ langpolish = {{Pools}{Pools}}, langportuguese = {{Portugees}{Portugees}}, langrussian = {{Russisch}{Russisch}}, +% langslovene = {{}{}},% FIXME: missing langspanish = {{Spaans}{Spaans}}, langswedish = {{Zweeds}{Zweeds}}, fromamerican = {{uit het Amerikaans Engels}{uit het Amerikaans Engels}}, @@ -441,6 +442,7 @@ frompolish = {{uit het Pools}{uit het Pools}}, fromportuguese = {{uit het Portugees}{uit het Portugees}}, fromrussian = {{uit het Russisch}{uit het Russisch}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{uit het Spaans}{uit het Spaans}}, fromswedish = {{uit het Zweeds}{uit het Zweeds}}, countryde = {{Duitsland}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/english.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/english.lbx index a3183327a1f..754cc2939a7 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/english.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/english.lbx @@ -435,6 +435,7 @@ canadian,australian,newzealand,USenglish,UKenglish} langpolish = {{Polish}{Polish}}, langportuguese = {{Portuguese}{Portuguese}}, langrussian = {{Russian}{Russian}}, + langslovene = {{Slovene}{Slovene}}, langspanish = {{Spanish}{Spanish}}, langswedish = {{Swedish}{Swedish}}, fromamerican = {{from the American}{from the American}}, @@ -455,6 +456,7 @@ canadian,australian,newzealand,USenglish,UKenglish} frompolish = {{from the Polish}{from the Polish}}, fromportuguese = {{from the Portuguese}{from the Portuguese}}, fromrussian = {{from the Russian}{from the Russian}}, + fromslovene = {{from the Slovene}{from the Slovene}}, fromspanish = {{from the Spanish}{from the Spanish}}, fromswedish = {{from the Swedish}{from the Swedish}}, countryde = {{Germany}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/finnish.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/finnish.lbx index f0d1f867413..ec257270325 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/finnish.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/finnish.lbx @@ -459,6 +459,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{portugali}{portugali}}, % langrussian = {{}{}},% FIXME: missing +% langslovene = {{}{}},% FIXME: missing langspanish = {{espanja}{espanja}}, langswedish = {{ruotsi}{ruotsi}}, fromamerican = {{englannin kielest\"a}{englannin kielest\"a}}, @@ -479,6 +480,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{portugalin kielest\"a}{portugalin kielest\"a}}, % fromrussian = {{}{}},% FIXME: missing +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{espanjan kielest\"a}{espanjan kielest\"a}}, fromswedish = {{ruotsin kielest\"a}{ruotsin kielest\"a}}, countryde = {{Saksa}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/french.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/french.lbx index f85c12ad3c2..73b5108ba31 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/french.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/french.lbx @@ -436,6 +436,7 @@ langpolish = {{polonais}{polonais}}, langportuguese = {{portugais}{portugais}}, langrussian = {{russe}{russe}}, + langslovene = {{slov\`ene}{slov\`ene}}, langspanish = {{espagnol}{espagnol}}, langswedish = {{su\'edois}{su\'edois}}, fromamerican = {{de l'am\'ericain}{de l'am\'ericain}}, @@ -456,6 +457,7 @@ frompolish = {{du polonais}{du polonais}}, fromportuguese = {{du portugais}{du portugais}}, fromrussian = {{du russe}{du russe}}, + fromslovene = {{du slov\`ene}{du slov\`ene}}, fromspanish = {{de l'espagnol}{de l'espagnol}}, fromswedish = {{du su\'edois}{du su\'edois}}, countryde = {{Allemagne}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/german.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/german.lbx index 3f96968dd86..73b2a3bd3a1 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/german.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/german.lbx @@ -417,6 +417,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{Portugiesisch}{Portugiesisch}}, langrussian = {{Russisch}{Russisch}}, +% langslovene = {{}{}},% FIXME: missing langspanish = {{Spanisch}{Spanisch}}, langswedish = {{Schwedisch}{Schwedisch}}, fromamerican = {{aus dem Amerikanischen}{aus dem Amerikanischen}}, @@ -437,6 +438,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{aus dem Portugiesischen}{aus dem Portugiesischen}}, fromrussian = {{aus dem Russischen}{aus dem Russischen}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{aus dem Spanischen}{aus dem Spanischen}}, fromswedish = {{aus dem Schwedischen}{aus dem Schwedischen}}, countryde = {{Deutschland}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/greek.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/greek.lbx index 733bdf60c68..16a89071084 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/greek.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/greek.lbx @@ -443,6 +443,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{Πορτογαλικά}{Πορτογαλικά}}, % langrussian = {{}{}},% FIXME: missing +% langslovene = {{}{}},% FIXME: missing langspanish = {{Ισπανικά}{Ισπανικά}}, langswedish = {{Σουηδικά}{Σουηδικά}}, fromamerican = {{από τα Αγγλικά}{από τα Αγγλικά}}, @@ -463,6 +464,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{από τα Πορτογαλικά}{από τα Πορτογαλικά}}, % fromrussian = {{}{}},% FIXME: missing +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{από τα Ισπανικά}{από τα Ισπανικά}}, fromswedish = {{από τα Σουηδικά}{από τα Σουηδικά}}, countryde = {{Γερμανία}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/icelandic.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/icelandic.lbx index affd2a7dea7..960d3ace7e4 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/icelandic.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/icelandic.lbx @@ -359,6 +359,7 @@ langpolish = {{p\'olska}{p\'olska}}, langportuguese = {{port\'ugalska}{port\'ugalska}}, langrussian = {{r\'ussneska}{r\'ussneska}}, +% langslovene = {{}{}},% FIXME: missing langspanish = {{sp\ae{}nska}{sp\ae{}nska}}, langswedish = {{s\ae{}nska}{s\ae{}nska}}, fromamerican = {{\'ur bandar\'{\i}sku}{\'ur bandar\'{\i}sku}}, @@ -379,6 +380,7 @@ frompolish = {{\'ur p\'olsku}{\'ur p\'olsku}}, fromportuguese = {{\'ur port\'ug\"olsku}{\'ur port\'ug\"olsku}}, fromrussian = {{\'ur r\'ussnesku}{\'ur r\'ussnesku}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{\'ur sp\ae{}nsku}{\'ur sp\ae{}nsku}}, fromswedish = {{\'ur s\ae{}nsku}{\'ur s\ae{}nsku}}, countryde = {{\TH\'yskaland}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/italian.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/italian.lbx index 9aec79f97f9..5c762abc006 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/italian.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/italian.lbx @@ -342,6 +342,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{portoghese}{portoghese}}, % langrussian = {{}{}},% FIXME: missing +% langslovene = {{}{}},% FIXME: missing langspanish = {{spagnolo}{spagnolo}}, langswedish = {{svedese}{svedese}}, fromamerican = {{dall'americano}{dall'americano}}, @@ -362,6 +363,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{dall portoghese}{dall portoghese}}, % fromrussian = {{}{}},% FIXME: missing +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{dallo spagnolo}{dallo spagnolo}}, fromswedish = {{dal svedese}{dal svedese}}, countryde = {{Germania}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/norwegian.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/norwegian.lbx index c0dcebbc578..d4c9d7c3e4d 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/norwegian.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/norwegian.lbx @@ -398,6 +398,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{portugisisk}{portugisisk}}, langrussian = {{russisk}{russisk}}, +% langslovene = {{}{}},% FIXME: missing langspanish = {{spansk}{spansk}}, langswedish = {{svensk}{svensk}}, fromamerican = {{fra amerikansk-engelsk}{fra amerikansk-engelsk}}, @@ -418,6 +419,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{fra portugisisk}{fra portugisisk}}, fromrussian = {{fra russisk}{fra russisk}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{fra spansk}{fra spansk}}, fromswedish = {{fra svensk}{fra svensk}}, countryde = {{Tyskland}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/nynorsk.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/nynorsk.lbx index d642d0caa38..e664c1c38b1 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/nynorsk.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/nynorsk.lbx @@ -281,6 +281,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{fr{\aa} portugisisk}{fr{\aa} portugisisk}}, fromrussian = {{fr{\aa} russisk}{fr{\aa} russisk}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{fr{\aa} spansk}{fr{\aa} spansk}}, fromswedish = {{fr{\aa} svensk}{fr{\aa} svensk}}, countryeu = {{Den europeiske unionen}{EU}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/polish.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/polish.lbx index 483f4a87739..99cdf72220b 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/polish.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/polish.lbx @@ -314,7 +314,7 @@ issue = {{wydanie}{wyd\adddot}},% FIXME: unsure, newseries = {{nowa serja}{now\adddotspace ser\adddot}}, oldseries = {{stara serja}{star\adddotspace ser\adddot}}, - edition = {{wydruk}{wydr\adddot}},% FIXME: unsure + edition = {{wydruk}{wyd\adddot}}, reprint = {{przedruk}{przedr\adddot}}, reprintof = {{przedruk}{przedr\adddot}}, reprintas = {{przedrukowano jako}{przedr\adddotspace jako}}, @@ -429,6 +429,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{portugalski}{portugalski}}, langrussian = {{rosyjski}{rosyjski}}, +% langslovene = {{}{}},% FIXME: missing langspanish = {{hiszpa\'{n}ski}{hiszpa\'{n}ski}}, langswedish = {{szwedzki}{szwedzki}}, fromamerican = {{z ameryka\'{n}skiego}{z amer\adddot}}, @@ -449,6 +450,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{z portugalskiego}{z port\adddot}}, fromrussian = {{z rosyjskiego}{z ros\adddot}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{z hiszpa\'{n}skiego}{z hiszp\adddot}}, fromswedish = {{ze szwedskiego}{ze szw\adddot}}, countryde = {{Niemcy}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/portuguese.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/portuguese.lbx index f93c143b7d4..5ec05897c76 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/portuguese.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/portuguese.lbx @@ -415,6 +415,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{portugu{\^e}s}{portugu{\^e}s}}, % langrussian = {{}{}},% FIXME: missing +% langslovene = {{}{}},% FIXME: missing langspanish = {{espanhol}{espanhol}}, langswedish = {{sueco}{sueco}}, fromamerican = {{do ingl\^es}{do ingl\^es}}, @@ -435,6 +436,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{do portugu{\^e}s}{do portugu{\^e}s}}, % fromrussian = {{}{}},% FIXME: missing +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{do espanhol}{do espanhol}}, fromswedish = {{do sueco}{do sueco}}, countryde = {{Alemanha}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/russian.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/russian.lbx index 179393cee57..67b78f17e31 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/russian.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/russian.lbx @@ -455,6 +455,7 @@ langpolish = {{польский}{пол\adddot}}, langportuguese = {{португальский}{порт\adddot}}, langrussian = {{русский}{рус\adddot}}, +% langslovene = {{}{}},% FIXME: missing langspanish = {{испанский}{исп\adddot}}, langswedish = {{шведский}{швед\adddot}}, fromamerican = {{с американского}{с\addabbrvspace амер\adddot}}, @@ -475,6 +476,7 @@ frompolish = {{с польского}{с пол\adddot}}, fromportuguese = {{с португальского}{с\addabbrvspace порт\adddot}}, fromrussian = {{с русского}{с\addabbrvspace рус\adddot}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{с испанского}{с\addabbrvspace исп\adddot}}, fromswedish = {{со шведского}{со\addabbrvspace швед\adddot}}, countryde = {{Германия}{Германия}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/slovene.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/slovene.lbx new file mode 100644 index 00000000000..3ba5a92ddf0 --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/slovene.lbx @@ -0,0 +1,462 @@ +\ProvidesFile{slovene.lbx} +[\abx@lbxid] + +\DeclareRedundantLanguages{slovene}{slovene} + +\DeclareBibliographyExtras{% + \protected\def\bibrangedash{\textendash\penalty\hyphenpenalty}% + \protected\def\bibdatedash{\addnbthinspace\textendash\addhpthinspace}% + \let\finalandcomma=\empty + \let\finalandsemicolon=\empty + \protected\def\mkbibordinal#1{\stripzeros{#1}\adddot}% + \protected\def\mkbibmascord{\mkbibordinal}% + \protected\def\mkbibfemord{\mkbibordinal}% + \protected\def\mkbibneutord{\mkbibordinal}% + \protected\def\mkbibdatelong#1#2#3{% + \iffieldundef{#3} + {} + {\mkbibordinal{\thefield{#3}}% + \iffieldundef{#2}{}{\nobreakspace}}% + \iffieldundef{#2} + {} + {\mkbibmonth{\thefield{#2}}% + \iffieldundef{#1}{}{\space}}% + \iffieldbibstring{#1} + {\bibstring{\thefield{#1}}} + {\stripzeros{\thefield{#1}}}}% + \protected\def\mkbibdateshort#1#2#3{% + \iffieldundef{#3} + {} + {\mkbibordinal{\thefield{#3}}% + \iffieldundef{#2}{}{\addnbthinspace}}% + \iffieldundef{#2} + {} + {\mkbibordinal{\thefield{#2}}% + \iffieldundef{#1}{}{\addnbthinspace}}% + \iffieldbibstring{#1} + {\bibstring{\thefield{#1}}} + {\stripzeros{\thefield{#1}}}}% + \savecommand\mkbibordedition + \savecommand\mkbibordseries + \def\mkbibordedition{\mkbibordinal}% + \def\mkbibordseries{\mkbibfemord}% +} + +\UndeclareBibliographyExtras{% + \restorecommand\mkbibordedition + \restorecommand\mkbibordseries +} + +\DeclareBibliographyStrings{% + bibliography = {{Literatura}{Literatura}}, + references = {{Literatura}{Literatura}}, + shorthands = {{Kratice}{Kratice}}, + editor = {{urednik}{ur\adddot}}, + editors = {{uredniki}{ur\adddot}}, + compiler = {{sestavljalec}{sest\adddot}}, + compilers = {{sestavljalci}{sest\adddot}}, + redactor = {{redaktor}{redaktor}}, + redactors = {{redaktorji}{redaktorji}}, + reviser = {{korektor}{korektor}}, + revisers = {{korektorji}{korektorji}}, + founder = {{snovalec}{snovalec}}, + founders = {{snovalci}{snovalci}}, + continuator = {{nadaljevalec}{nadaljevalec}}, + continuators = {{nadaljevalci}{nadaljevalci}}, + collaborator = {{sodelavec}{sod\adddot}}, + collaborators = {{sodelavci}{sod\adddot}}, + translator = {{prevajalec}{prev\adddot}}, + translators = {{prevajalci}{prev\adddot}}, + commentator = {{komentator}{komentator}}, + commentators = {{komentatorji}{komentatorji}}, + annotator = {{anotator}{anotator}}, + annotators = {{anotatorji}{anotatorji}}, + commentary = {{komentar}{komentar}}, + annotations = {{opombe}{op\adddot}}, + introduction = {{uvod}{uvod}}, + foreword = {{predgovor}{predg\adddot}}, + afterword = {{spremna beseda}{spr\adddotspace b\adddot}}, + editortr = {{urednik in prevajalec}% + {ur\adddotspace in prev\adddot}}, + editorstr = {{uredniki in prevajalci}% + {ur\adddotspace and prev\adddot}}, + editorco = {{urednik in komentator}% + {ur\adddotspace in komentator}}, + editorsco = {{uredniki in komentatorji}% + {ur\adddotspace in komentatorji}}, + editoran = {{urednik in anotator}% + {ur\adddotspace in anotator}}, + editorsan = {{uredniki in anotatorji}% + {ur\adddotspace in anotatorji}}, + editorin = {{urednik in avtor uvoda}% + {ur\adddotspace in avt\adddotspace uvoda}}, + editorsin = {{uredniki in avtorji uvoda}% + {ur\adddotspace in avt\adddotspace uvoda}}, + editorfo = {{urednik in avtor predgovora}% + {ur\adddotspace in avt\adddotspace predg\adddot}}, + editorsfo = {{uredniki in avtorji predgovora}% + {ur\adddotspace in avt\adddotspace predg\adddot}}, + editoraf = {{urednik in avtor spremne besede}% + {ur\adddotspace in avt\adddotspace spr\adddotspace b\adddot}}, + editorsaf = {{uredniki in avtorji spremne besede}% + {ur\adddotspace in avt\adddotspace spr\adddotspace b\adddot}}, + editortrco = {{urednik, prevajalec in komentator}% + {ur\adddotspace, prev\adddotspace in komentator}}, + editorstrco = {{uredniki, prevajalci in komentatorji}% + {ur\adddotspace, prev\adddotspace in komentatorji}}, + editortran = {{urednik, prevajalec in anotator}% + {ur\adddotspace, prev\adddotspace in anotator}}, + editorstran = {{uredniki, prevajalci in anotatorji}% + {ur\adddotspace, prev\adddotspace in anotatorji}}, + editortrin = {{urednik, prevajalec in avtor uvoda}% + {ur\adddotspace, prev\adddotspace in avt\adddotspace uvoda}}, + editorstrin = {{uredniki, prevajalci in avtorji uvoda}% + {ur\adddotspace, prev\adddotspace in avt\adddotspace uvoda}}, + editortrfo = {{urednik, prevajalec in avtor predgovora}% + {ur\adddotspace, prev\adddotspace in avt\adddotspace predg\adddot}}, + editorstrfo = {{uredniki, prevajalci in avtorji predgovora}% + {ur\adddotspace, prev\adddotspace in avt\adddotspace predg\adddot}}, + editortraf = {{urednik, prevajalec in avtor spremne besede}% + {ur\adddotspace, prev\adddotspace in avt\adddotspace spr\adddotspace b\adddot}}, + editorstraf = {{uredniki, prevajalci in avtorji spremne besede}% + {ur\adddotspace, prev\adddotspace in avt\adddotspace spr\adddotspace b\adddot}}, + editorcoin = {{urednik, komentator in avtor uvoda}% + {ur\adddotspace, komentator in avt\adddotspace uvoda}}, + editorscoin = {{uredniki, komentatorji in avtorji uvoda}% + {ur\adddotspace, komentatorji in avt\adddotspace uvoda}}, + editorcofo = {{urednik, komentator in avtor predgovora}% + {ur\adddotspace, komentator in avt\adddotspace predg\adddot}}, + editorscofo = {{uredniki, komentatorji in avtorji predgovora}% + {ur\adddotspace, komentatorji in avt\adddotspace predg\adddot}}, + editorcoaf = {{urednik, komentator in avtor spremne besede}% + {ur\adddotspace, komentator in avt\adddotspace spr\adddotspace b\adddot}}, + editorscoaf = {{uredniki, komentatorji in avtorji spremne besede}% + {ur\adddotspace, komentatorji in avt\adddotspace spr\adddotspace b\adddot}}, + editoranin = {{urednik, anotator in avtor uvoda}% + {ur\adddotspace, anotator in avt\adddotspace uvoda}}, + editorsanin = {{uredniki, anotatorji in avtorji uvoda}% + {ur\adddotspace, anotatorji in avt\adddotspace uvoda}}, + editoranfo = {{urednik, anotator in avtor predgovora}% + {ur\adddotspace, anotator in avt\adddotspace predg\adddot}}, + editorsanfo = {{uredniki, anotatorji in avtorji predgovora}% + {ur\adddotspace, anotatorji in avt\adddotspace predg\adddot}}, + editoranaf = {{urednik, anotator in avtor spremne besede}% + {ur\adddotspace, anotator in avt\adddotspace spr\adddotspace b\adddot}}, + editorsanaf = {{uredniki, anotatorji in avtorji spremne besede}% + {ur\adddotspace, anotatorji in avt\adddotspace spr\adddotspace b\adddot}}, + editortrcoin = {{urednik, prevajalec, komentator in avtor uvoda}% + {ur\adddotspace, prev\adddotspace, komentator in avt\adddotspace uvoda}}, + editorstrcoin = {{uredniki, prevajalci, komentatorji in avtorji uvoda}% + {ur\adddotspace, prev\adddotspace, komentatorji in avt\adddotspace uvoda}}, + editortrcofo = {{urednik, prevajalec, komentator in avtor predgovora}% + {ur\adddotspace, prev\adddotspace, komentator in avt\adddotspace predg\adddot}}, + editorstrcofo = {{uredniki, prevajalci, komentatorji in avtorji predgovora}% + {ur\adddotspace, prev\adddotspace, komentatorji in avt\adddotspace predg\adddot}}, + editortrcoaf = {{urednik, prevajalec, komentator in avtor spremne besede}% + {ur\adddotspace, prev\adddotspace, komentator in avt\adddotspace spr\adddotspace b\adddot}}, + editorstrcoaf = {{uredniki, prevajalci, komentatorji in avtorji spremne besede}% + {ur\adddotspace, prev\adddotspace, komentatorji in avt\adddotspace spr\adddotspace b\adddot}}, + editortranin = {{urednik, prevajalec, anotator in avtor uvoda}% + {ur\adddotspace, prev\adddotspace, anotator in avt\adddotspace uvoda}}, + editorstranin = {{uredniki, prevajalci, anotatorji in avtorji uvoda}% + {ur\adddotspace, prev\adddotspace, anotatorji in avt\adddotspace uvoda}}, + editortranfo = {{urednik, prevajalec, anotator in avtor predgovora}% + {ur\adddotspace, prev\adddotspace, anotator in avt\adddotspace predg\adddot}}, + editorstranfo = {{uredniki, prevajalci, anotatorji in avtorji predgovora}% + {ur\adddotspace, prev\adddotspace, anotatorji in avt\adddotspace predg\adddot}}, + editortranaf = {{urednik, prevajalec, anotator in avtor spremne besede}% + {ur\adddotspace, prev\adddotspace, anotator in avt\adddotspace spr\adddotspace b\adddot}}, + editorstranaf = {{uredniki, prevajalci, anotatorji in avtorji spremne besede}% + {ur\adddotspace, prev\adddotspace, anotatorji in avt\adddotspace spr\adddotspace b\adddot}}, + translatorco = {{prevajalec in komentator}% + {prev\adddotspace in komentator}}, + translatorsco = {{prevajalci in komentatorji}% + {prev\adddotspace in komentatorji}}, + translatoran = {{prevajalec in anotator}% + {prev\adddotspace in anotator}}, + translatorsan = {{prevajalci in anotatorji}% + {prev\adddotspace in anotatorji}}, + translatorin = {{avtor prevoda in uvoda}% + {avt\adddotspace prev\adddotspace in uvoda}}, + translatorsin = {{avtorji prevoda in uvoda}% + {avt\adddotspace prev\adddotspace in uvoda}}, + translatorfo = {{avtor prevoda in predgovora}% + {avt\adddotspace prev\adddotspace in predg\adddot}}, + translatorsfo = {{avtorji prevoda in predgovora}% + {avt\adddotspace prev\adddotspace in predg\adddot}}, + translatoraf = {{avtor prevoda in spremne besede}% + {avt\adddotspace prev\adddotspace in spr\adddotspace b\adddot}}, + translatorsaf = {{avtorji prevoda in spremne besede}% + {avt\adddotspace prev\adddotspace in spr\adddotspace b\adddot}}, + translatorcoin = {{avtor prevoda, komentarja in uvoda}% + {avt\adddotspace prev\adddotspace, komentarja in uvoda}}, + translatorscoin = {{avtorji prevoda, komentarja in uvoda}% + {avt\adddotspace prev\adddotspace, komentarja in uvoda}}, + translatorcofo = {{avtor prevoda, komentarja in predgovora}% + {avt\adddotspace prev\adddotspace, komentarja in predg\adddot}}, + translatorscofo = {{avtorji prevoda, komentarja in predgovora}% + {avt\adddotspace prev\adddotspace, komentarja in predg\adddot}}, + translatorcoaf = {{avtor prevoda, komentarja in spremne besede}% + {avt\adddotspace prev\adddotspace, komentarja in spr\adddotspace b\adddot}}, + translatorscoaf = {{avtorji prevoda, komentarja in spremne besede}% + {avt\adddotspace prev\adddotspace, komentarja in spr\adddotspace b\adddot}}, + translatoranin = {{avtor prevoda, opomb in uvoda}% + {avt\adddotspace prev\adddotspace, opomb in uvoda}}, + translatorsanin = {{avtorji prevoda, opomb in uvoda}% + {avt\adddotspace prev\adddotspace, opomb in uvoda}}, + translatoranfo = {{avtor prevoda, opomb in predgovora}% + {avt\adddotspace prev\adddotspace, opomb in predg\adddot}}, + translatorsanfo = {{avtorji prevoda, opomb in predgovora}% + {avt\adddotspace prev\adddotspace, opomb in predg\adddot}}, + translatoranaf = {{avtor prevoda, opomb in spremne besede}% + {avt\adddotspace prev\adddotspace, opomb in spr\adddotspace b\adddot}}, + translatorsanaf = {{avtorji prevoda, opomb in spremne besede}% + {avt\adddotspace prev\adddotspace, opomb in spr\adddotspace b\adddot}}, + byauthor = {{}{}}, + byeditor = {{uredil}{ur\adddot}},% FIXME: unsure + bycompiler = {{sestavil}{sest\adddot}},% FIXME: unsure + byredactor = {{oblikoval}{oblik\adddot}},% FIXME: unsure + byreviser = {{koregiral}{koregiral}},% FIXME: unsure + byreviewer = {{recenziral}{recenziral}},% FIXME: unsure + byfounder = {{snoval}{snoval}},% FIXME: unsure + bycontinuator = {{nadaljeval}{nadaljeval}},% FIXME: unsure + bycollaborator = {{v sodelovanju z}{v sod\adddotspace z}}, + bytranslator = {{prevedel}{prev\adddot}},% FIXME: unsure + bycommentator = {{komentiral}{komentiral}},% FIXME: unsure + byannotator = {{anotiral}{anotiral}},% FIXME: unsure + withcommentator = {{s komentarjem}{s komentarjem}}, + withannotator = {{z opombami}{z opombami}}, + withintroduction = {{z uvodom}{z uvodom}}, + withforeword = {{s predgovorom}{s predg\adddot}}, + withafterword = {{s spremno besedo}{s spr\adddotspace b\adddot}}, + byeditortr = {{uredil in prevedel}% + {uredil in prevedel}},% FIXME: unsure + byeditorco = {{uredil in komentiral}% + {ur\adddotspace in komentiral}},% FIXME: unsure + byeditoran = {{uredil in anotiral}% + {ur\adddotspace in anotiral}},% FIXME: unsure + byeditorin = {{uredil, z uvodom}% + {ur\adddotspace z uvodom}},% FIXME: unsure + byeditorfo = {{uredil, s predgovorom}% + {ur\adddotspace s predg\adddot}},% FIXME: unsure + byeditoraf = {{uredil, s spremno besedo}% + {ur\adddotspace s sprem\adddotspace b\adddot}},% FIXME: unsure + byeditortrco = {{uredil, prevedel \lbx@lfromlang\ in komentiral}% + {ur\adddotspace prev\adddot\ \lbx@sfromlang\ in komentiral}},% FIXME: unsure + byeditortran = {{uredil, prevedel \lbx@lfromlang\ in anotiral}% + {ur\adddotspace prev\adddot\ \lbx@sfromlang\ in anotiral}},% FIXME: unsure + byeditortrin = {{uredil in prevedel \lbx@lfromlang, z uvodom}% + {ur\adddotspace in prev\adddot\ \lbx@sfromlang, z uvodom}},% FIXME: unsure + byeditortrfo = {{uredil in prevedel \lbx@lfromlang, s predgovorom}% + {ur\adddotspace in prev\adddot\ \lbx@sfromlang, s predg\adddot}},% FIXME: unsure + byeditortraf = {{uredil in prevedel \lbx@lfromlang, s spremno besedo}% + {ur\adddotspace in prev\adddot\ \lbx@sfromlang, s sprem\adddotspace b\adddot}},% FIXME: unsure + byeditorcoin = {{uredil in komentiral, z uvodom}% + {ur\adddotspace in komentiral, z uvodom}},% FIXME: unsure + byeditorcofo = {{uredil in komentiral, s predgovorom}% + {ur\adddotspace in komentiral, s predg\adddot}},% FIXME: unsure + byeditorcoaf = {{uredil in komentiral, s spremno besedo}% + {ur\adddotspace in komentiral, s sprem\adddotspace b\adddot}},% FIXME: unsure + byeditoranin = {{uredil in anotiral, z uvodom}% + {ur\adddotspace in anotiral, z uvodom}},% FIXME: unsure + byeditoranfo = {{uredil in anotiral, s predgovorom}% + {ur\adddotspace in anotiral, s predg\adddot}},% FIXME: unsure + byeditoranaf = {{uredil in anotiral, s spremno besedo}% + {ur\adddotspace in anotiral, s sprem\adddotspace b\adddot}},% FIXME: unsure + byeditortrcoin = {{uredil, prevedel \lbx@lfromlang\ in komentiral, z uvodom}% + {ur\adddotspace prev\adddot\ \lbx@sfromlang\ in komentiral, z uvodom}},% FIXME: unsure + byeditortrcofo = {{uredil, prevedel \lbx@lfromlang\ in komentiral, s predgovorom}% + {ur\adddotspace prev\adddot\ \lbx@sfromlang\ in komentiral, s predg\adddot}},% FIXME: unsure + byeditortrcoaf = {{uredil, prevedel \lbx@lfromlang\ in komentiral, s spremno besedo}% + {ur\adddotspace prev\adddot\ \lbx@sfromlang\ in komentiral, s sprem\adddotspace b\adddot}},% FIXME: unsure + byeditortranin = {{uredil, prevedel \lbx@lfromlang\ in anotiral, z uvodom}% + {ur\adddotspace prev\adddot\ \lbx@sfromlang\ in anotiral, z uvodom}},% FIXME: unsure + byeditortranfo = {{uredil, prevedel \lbx@lfromlang\ in anotiral, s predgovorom}% + {ur\adddotspace prev\adddot\ \lbx@sfromlang\ in anotiral, s predg\adddot}},% FIXME: unsure + byeditortranaf = {{uredil, prevedel \lbx@lfromlang\ in anotiral, s spremno besedo}% + {ur\adddotspace prev\adddot\ \lbx@sfromlang\ in anotiral, s sprem\adddotspace b\adddot}},% FIXME: unsure + bytranslatorco = {{prevedel \lbx@lfromlang\ in komentiral}% + {prev\adddot\ \lbx@sfromlang\ in komentiral}},% FIXME: unsure + bytranslatoran = {{prevedel \lbx@lfromlang\ in anotiral}% + {prev\adddot\ \lbx@sfromlang\ in anotiral}},% FIXME: unsure + bytranslatorin = {{prevedel \lbx@lfromlang, z uvodom}% + {prev\adddot\ \lbx@sfromlang, z uvodom}},% FIXME: unsure + bytranslatorfo = {{prevedel \lbx@lfromlang, s predgovorom}% + {prev\adddot\ \lbx@sfromlang, s predg\adddot}},% FIXME: unsure + bytranslatoraf = {{prevedel \lbx@lfromlang, s spremno besedo}% + {prev\adddot\ \lbx@sfromlang, s sprem\adddotspace b\adddot}},% FIXME: unsure + bytranslatorcoin = {{prevedel \lbx@lfromlang\ in komentiral, z uvodom}% + {prev\adddot\ \lbx@sfromlang\ in komentiral, z uvodom}},% FIXME: unsure + bytranslatorcofo = {{prevedel \lbx@lfromlang\ in komentiral, s predgovorom}% + {prev\adddot\ \lbx@sfromlang\ in komentiral, s predg\adddot}},% FIXME: unsure + bytranslatorcoaf = {{prevedel \lbx@lfromlang\ in komentiral, s spremno besedo}% + {prev\adddot\ \lbx@sfromlang\ in komentiral, s sprem\adddotspace b\adddot}},% FIXME: unsure + bytranslatoranin = {{prevedel \lbx@lfromlang\ in anotiral, z uvodom}% + {prev\adddot\ \lbx@sfromlang\ in anotiral, z uvodom}},% FIXME: unsure + bytranslatoranfo = {{prevedel \lbx@lfromlang\ in anotiral, s predgovorom}% + {prev\adddot\ \lbx@sfromlang\ in anotiral, s predg\adddot}},% FIXME: unsure + bytranslatoranaf = {{prevedel \lbx@lfromlang\ in anotiral, s spremno besedo}% + {prev\adddot\ \lbx@sfromlang\ in anotiral, s sprem\adddotspace b\adddot}},% FIXME: unsure + and = {{in}{in}}, + andothers = {{in sodelavci}{in sod\adddot}}, + andmore = {{idr\adddot}{idr\adddot}}, + volume = {{zvezek}{zv\adddot}}, + volumes = {{zvezki}{zv\adddot}}, + involumes = {{v}{v}}, + jourvol = {{letnik}{let\adddot}}, + jourser = {{zbirka}{zbirka}}, + book = {{knjiga}{knj\adddot}}, + part = {{del}{del}}, + issue = {{\v{s}tevilka}{\v{s}t\adddot}}, + newseries = {{nova zbirka}{nova zbirka}}, + oldseries = {{stara zbirka}{stara zbirka}}, + edition = {{izdaja}{izd\adddot}}, + reprint = {{ponatis}{ponatis}}, + reprintof = {{ponatis}{ponatis}}, + reprintas = {{ponatisnjeno kot}{ponatisnjeno kot}}, + reprintfrom = {{ponatisnjeno iz}{ponatisnjeno iz}}, + %reviewof = {{recenzija}{recenzija}},% FIXME: unsure + translationof = {{prevod}{prev\adddot}}, + translationas = {{prevedeno kot}{prev\adddotspace kot}}, + translationfrom = {{prevedeno iz}{prev\adddotspace iz}}, + origpubas = {{izvirna izdaja}{izvirna izd\adddot}}, + origpubin = {{izvirno izdano v}{izvirno izdano v}}, + astitle = {{}{}}, + bypublisher = {{}{}}, + page = {{stran}{str\adddot}}, + pages = {{strani}{str\adddot}}, + column = {{stolpec}{st\adddot}}, + columns = {{stolpci}{st\adddot}}, + line = {{vrstica}{v\adddot}}, + lines = {{vrstice}{v\adddot}}, + nodate = {{brez datuma}{b\adddot d\adddot}}, + verse = {{verz}{v\adddot}}, + verses = {{verzi}{v\adddot}}, + section = {{razdelek}{\S}}, + sections = {{razdelek}{\S\S}}, + paragraph = {{odstavek}{odstavek}}, + paragraphs = {{odstavki}{odstavki}}, + in = {{v}{v}}, + inseries = {{v zbirki}{v zbirki}}, + ofseries = {{iz zbirke}{iz zbirke}}, + number = {{\v{s}tevilka}{\v{s}t\adddot}}, + chapter = {{poglavje}{pogl\adddot}}, + mathesis = {{Magistrsko delo}{Magistrsko delo}}, + phdthesis = {{Doktorska disertacija}{Doktorska disertacija}}, + %candthesis = {{Candidate thesis}{Cand\adddotspace thesis}},% FIXME: don't know + resreport = {{Raziskovalno poro\v{c}ilo}{Razisk\adddotspace poro\v{c}ilo}}, + techreport = {{Tehni\v{c}no poro\v{c}ilo}{Teh\adddotspace poro\v{c}ilo}}, + software = {{Ra\v{c}unalni\v{s}ki program}{Ra\v{c}\adddotspace prog\adddot}}, + datacd = {{CD-ROM}{CD-ROM}}, + audiocd = {{avdio CD}{avdio CD}}, + version = {{verzija}{ver\adddot}}, + url = {{spletni naslov}{spletni naslov}}, + urlfrom = {{dostopno na}{dostopno na}}, + urlseen = {{pridobljeno}{pridobljeno}}, + inpreparation = {{v pripravi}{v pripravi}}, + submitted = {{poslano v objavo}{poslano v objavo}}, + %forthcoming = {{forthcoming}{forthcoming}},% FIXME: don't know + inpress = {{v tisku}{v tisku}}, + %prepublished = {{pre-published}{pre-published}},% FIXME: don't know + citedas = {{v nadaljevanju citirano kot}{v nadalj\adddotspace cit\adddotspace kot}}, + thiscite = {{posebno}{posebno}}, + seenote = {{glej opombo}{gl\adddotspace op\adddot}}, + quotedin = {{citirano v}{cit\adddotspace v}}, + idem = {{isti}{id\adddot}}, + idemsm = {{isti}{id\adddot}}, + idemsf = {{ista}{id\adddot}}, + idemsn = {{isto}{id\adddot}}, + idempm = {{isti}{id\adddot}}, + idempf = {{iste}{id\adddot}}, + idempn = {{ista}{id\adddot}}, + idempp = {{isti}{id\adddot}}, + ibidem = {{prav tam}{ibid\adddot}}, + %opcit = {{op\adddotspace cit\adddot}{op\adddotspace cit\adddot}},% FIXME: don't know + %loccit = {{loc\adddotspace cit\adddot}{loc\adddotspace cit\adddot}},% FIXME: don't know + confer = {{primerjaj}{prim\adddot}}, + %sequens = {{sq\adddot}{sq\adddot}},% FIXME: don't know + %sequentes = {{sqq\adddot}{sqq\adddot}},% FIXME: don't know + %passim = {{passim}{pass\adddot}},% FIXME: don't know + see = {{glej}{gl\adddot}}, + seealso = {{glej tudi}{gl\adddotspace tudi}}, + backrefpage = {{citirano na strani}{cit\adddotspace na str\adddot}}, + backrefpages = {{citirano na straneh}{cit\adddotspace na str\adddot}}, + january = {{januar}{jan\adddot}}, + february = {{februar}{feb\adddot}}, + march = {{marec}{mar\adddot}}, + april = {{april}{apr\adddot}}, + may = {{maj}{maj}}, + june = {{junij}{jun\adddot}}, + july = {{julij}{jul\adddot}}, + august = {{avgust}{avg\adddot}}, + september = {{september}{sep\adddot}}, + october = {{oktober}{okt\adddot}}, + november = {{november}{nov\adddot}}, + december = {{december}{dec\adddot}}, + langamerican = {{angle\v{s}\v{c}ina}{angl\adddot}}, + langbrazilian = {{brazil\v{s}\v{c}ina}{braz\adddot}}, + langcatalan = {{katalon\v{s}\v{c}ina}{kat\adddot}}, + langcroatian = {{hrva\v{s}\v{c}ina}{hrv\adddot}}, + langczech = {{\v{c}e\v{s}\v{c}ina}{\v{c}e\v{s}\adddot}}, + langdanish = {{dan\v{s}\v{c}ina}{dan\adddot}}, + langdutch = {{nizozem\v{s}\v{c}ina}{niz\adddot}}, + langenglish = {{angle\v{s}\v{c}ina}{angl\adddot}}, + langfinnish = {{fin\v{s}\v{c}ina}{fin\adddot}}, + langfrench = {{franco\v{s}\v{c}ina}{fr\adddot}}, + langgerman = {{nem\v{s}\v{c}ina}{nem\adddot}}, + langgreek = {{gr\v{s}\v{c}ina}{gr\adddot}}, + langitalian = {{italijan\v{s}\v{c}ina}{it\adddot}}, + langlatin = {{latin\v{s}\v{c}ina}{lat\adddot}}, + langnorwegian = {{norve\v{s}\v{c}ina}{nor\adddot}}, + langpolish = {{polj\v{s}\v{c}ina}{polj\adddot}}, + langportuguese = {{portugal\v{s}\v{c}ina}{por\adddot}}, + langrussian = {{ru\v{s}\v{c}ina}{ru\adddot}}, + langslovene = {{sloven\v{s}\v{c}ina}{sl\adddot}}, + langspanish = {{\v{s}pan\v{s}\v{c}ina}{\v{s}p\adddot}}, + langswedish = {{\v{s}ved\v{s}\v{c}ina}{\v{s}ved\adddot}}, + fromamerican = {{iz angle\v{s}\v{c}ine}{iz angl\adddot}}, + frombrazilian = {{iz brazil\v{s}\v{c}ine}{iz braz\adddot}}, + fromcatalan = {{iz katalon\v{s}\v{c}ine}{iz kat\adddot}}, + fromcroatian = {{iz hrva\v{s}\v{c}ine}{iz hrv\adddot}}, + fromczech = {{iz \v{c}e\v{s}\v{c}ine}{iz \v{c}e\v{s}\adddot}}, + fromdanish = {{iz dan\v{s}\v{c}ine}{iz dan\adddot}}, + fromdutch = {{iz nizozem\v{s}\v{c}ine}{iz niz\adddot}}, + fromenglish = {{iz angle\v{s}\v{c}ine}{iz angl\adddot}}, + fromfinnish = {{iz fin\v{s}\v{c}ine}{iz fin\adddot}}, + fromfrench = {{iz franco\v{s}\v{c}ine}{iz fr\adddot}}, + fromgerman = {{iz nem\v{s}\v{c}ine}{iz nem\adddot}}, + fromgreek = {{iz gr\v{s}\v{c}ine}{iz gr\adddot}}, + fromitalian = {{iz italijan\v{s}\v{c}ine}{iz it\adddot}}, + fromlatin = {{iz latin\v{s}\v{c}ine}{iz lat\adddot}}, + fromnorwegian = {{iz norve\v{s}\v{c}ine}{iz nor\adddot}}, + frompolish = {{iz polj\v{s}\v{c}ine}{iz polj\adddot}}, + fromportuguese = {{iz portugal\v{s}\v{c}ine}{iz por\adddot}}, + fromrussian = {{iz ru\v{s}\v{c}ine}{iz ru\adddot}}, + fromslovene = {{iz sloven\v{s}\v{c}ine}{iz sl\adddot}}, + fromspanish = {{iz \v{s}pan\v{s}\v{c}ine}{iz \v{s}p\adddot}}, + fromswedish = {{iz \v{s}ved\v{s}\v{c}ine}{iz \v{s}ved\adddot}}, + countryde = {{Nem\v{c}ija}{Nem\v{c}ija}}, + countryeu = {{Evropska unija}{EU}}, + countryep = {{Evropska unija}{EP}}, + countryfr = {{Francija}{Francija}}, + countryuk = {{Velika Britanija}{VB}}, + countryus = {{Zdru\v{z}ene dr\v{z}ave Amerike}{ZDA}}, + patent = {{patent}{patent}}, + patentde = {{nem\v{s}ki patent}{nem\v{s}ki patent}}, + patenteu = {{evropski patent}{evropski patent}}, + patentfr = {{francoski patent}{francoski patent}}, + patentuk = {{britanski patent}{britanski patent}}, + patentus = {{patent v ZDA}{patent v ZDA}}, + patreq = {{patentna prijava}{patentna prijava}}, + patreqde = {{prijava nem\v{s}kega patenta}{prijava nem\v{s}kega patenta}}, + patreqeu = {{prijava evropskega patenta}{prijava evropskega patenta}}, + patreqfr = {{prijava francoskega patenta}{prijava francoskega patenta}}, + patrequk = {{prijava britanskega patenta}{prijava britanskega patenta}}, + patrequs = {{prijava patenta v ZDA}{prijava patenta v ZDA}}, + file = {{datoteka}{datoteka}}, + library = {{knji\v{z}nica}{knji\v{z}nica}}, + abstract = {{povzetek}{povzetek}}, + annotation = {{opomba}{op\adddot}}, +} + +\endinput diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/spanish.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/spanish.lbx index fd0e8c0ee5c..20cf7a699cd 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/spanish.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/spanish.lbx @@ -355,6 +355,7 @@ % langpolish = {{}{}},% FIXME: missing langportuguese = {{portugu\'es}{portugu\'es}}, % langrussian = {{}{}},% FIXME: missing +% langslovene = {{}{}},% FIXME: missing langspanish = {{espa\~nol}{espa\~nol}}, langswedish = {{sueco}{sueco}}, fromamerican = {{del americano}{del americano}}, @@ -375,6 +376,7 @@ % frompolish = {{}{}},% FIXME: missing fromportuguese = {{del portugu\'es}{del portugu\'es}}, % fromrussian = {{}{}},% FIXME: missing +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{del espa\~nol}{del espa\~nol}}, fromswedish = {{del sueco}{del sueco}}, countryde = {{Alemania}{DE}}, diff --git a/Master/texmf-dist/tex/latex/biblatex/lbx/swedish.lbx b/Master/texmf-dist/tex/latex/biblatex/lbx/swedish.lbx index 6a0bbed3519..65efafba26e 100644 --- a/Master/texmf-dist/tex/latex/biblatex/lbx/swedish.lbx +++ b/Master/texmf-dist/tex/latex/biblatex/lbx/swedish.lbx @@ -386,6 +386,7 @@ langpolish = {{polska}{polska}}, langportuguese = {{portugisiska}{portugisiska}}, langrussian = {{ryska}{ryska}}, +% langslovene = {{}{}},% FIXME: missing langspanish = {{spanska}{spanska}}, langswedish = {{svenska}{svenska}}, fromamerican = {{fr\aa n amerikanska}{fr\aa n amerikanska}}, @@ -406,6 +407,7 @@ frompolish = {{fr\aa n polska}{fr\aa n polska}}, fromportuguese = {{fr\aa n portugisiska}{fr\aa n portugisiska}}, fromrussian = {{fr\aa n ryska}{fr\aa n ryska}}, +% fromslovene = {{}{}},% FIXME: missing fromspanish = {{fr\aa n spanska}{fr\aa n spanska}}, fromswedish = {{fr\aa n svenska}{fr\aa n svenska}}, countryde = {{Tyskland}{DE}}, |