summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex/latex/biblatex.def
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/biblatex/latex/biblatex.def')
-rw-r--r--macros/latex/contrib/biblatex/latex/biblatex.def67
1 files changed, 48 insertions, 19 deletions
diff --git a/macros/latex/contrib/biblatex/latex/biblatex.def b/macros/latex/contrib/biblatex/latex/biblatex.def
index 992e8ba7e3..10f4144dab 100644
--- a/macros/latex/contrib/biblatex/latex/biblatex.def
+++ b/macros/latex/contrib/biblatex/latex/biblatex.def
@@ -18,9 +18,9 @@
% \namepart<namepart>i - e.g. \namepartfamilyi
\def\do#1{%
\csdef{mkbibname#1}##1{##1}%
- \define@key{blx@opt@namepart}{#1}{\csdef{namepart#1}{##1}}%
- \define@key{blx@opt@namepart}{#1i}{\csdef{namepart#1i}{##1}}%
- \define@key{blx@opt@namepart}{#1un}{\csdef{namepart#1un}{##1}}}
+ \blx@kv@defkey{blx@opt@namepart}{#1}{\csdef{namepart#1}{##1}}%
+ \blx@kv@defkey{blx@opt@namepart}{#1i}{\csdef{namepart#1i}{##1}}%
+ \blx@kv@defkey{blx@opt@namepart}{#1un}{\csdef{namepart#1un}{##1}}}
\expandafter\docsvlist\expandafter{\blx@datamodel@constant@nameparts}
% legacy aliases
@@ -95,8 +95,17 @@
\DeclareDelimFormat{andmoredelim}{\addspace}
\newcommand*{\multicitedelim}{\addsemicolon\space}
+\newcommand*{\multicitesubentrydelim}{\addcomma}
+\newcommand*{\multiciterangedelim}{\bibrangedash}
+\newcommand*{\multicitesubentryrangedelim}{\multiciterangedelim}
+
\newcommand*{\compcitedelim}{\addcomma\space}
+
\newcommand*{\supercitedelim}{\addcomma}
+\newcommand*{\supercitesubentrydelim}{\supercitedelim}
+\newcommand*{\superciterangedelim}{\bibrangedash}
+\newcommand*{\supercitesubentryrangedelim}{\superciterangedelim}
+
\DeclareDelimFormat{prenotedelim}{\addspace}
\DeclareDelimFormat{postnotedelim}{\addcomma\space}
\DeclareDelimAlias{multiprenotedelim}{prenotedelim}
@@ -168,6 +177,7 @@
\newcommand*{\subtitlepunct}{\newunitpunct}
\newcommand*{\intitlepunct}{\addcolon\space}
\newcommand*{\bibpagespunct}{\addcomma\space}
+\newcommand*{\bibeidpunct}{\addcomma\space}
\newcommand*{\bibpagerefpunct}{\addspace}
\newcommand*{\revsdnamepunct}{\addcomma}
\newcommand*{\bibnamedash}{%
@@ -238,6 +248,10 @@
% want more visual separation, try the package option 'block=space'.
% This will yield better results than \nonfrenchspacing.
+% If \frenchspacing is removed here, it may also have to be removed
+% from \blx@beglang@spacefactors, for example with
+% \let\blx@beglang@spacefactors\@empty
+
% \citesetup is a generic hook for citations.
\newcommand*{\citesetup}{%
@@ -462,15 +476,15 @@
\DeclareFieldFormat{prenote}{#1\isdot}
\DeclareFieldFormat{postnote}{\mkpageprefix[pagination][\mknormrange]{#1}}
\DeclareFieldFormat{volcitevolume}{\bibstring{volume}\ppspace#1}
-\DeclareFieldFormat{volcitepages}{\mkpageprefix[pagination][\mknormrange]{#1}}
+\DeclareFieldAlias{volcitepages}{postnote}
\DeclareFieldFormat{volcitenote}{\mkvolcitenote#1}
\newrobustcmd*{\mkvolcitenote}[2]{%
\printtext[volcitevolume]{#1}%
\ifblank{#2}{}{\volcitedelim\printtext[volcitepages]{#2}}}
% multicite commands
-\DeclareFieldFormat{multiprenote}{#1\isdot}
-\DeclareFieldFormat{multipostnote}{\mkpageprefix[pagination][\mknormrange]{#1}}
+\DeclareFieldAlias{multiprenote}{prenote}
+\DeclareFieldAlias{multipostnote}{postnote}
% Used by \citeurl
@@ -1163,8 +1177,6 @@
% The fallback used by \indexlist
-\DeclareIndexListWrapperFormat{default}{#1}
-
\DeclareIndexListFormat{default}{\index{#1}}
% ------------------------------------------------------------------
@@ -1176,8 +1188,6 @@
% The fallback used by \indexnames
-\DeclareIndexNameWrapperFormat{default}{#1}
-
\DeclareIndexNameFormat{default}{%
\usebibmacro{index:name}
{\index}
@@ -1227,7 +1237,7 @@
\newbibmacro*{index:name}[5]{%
\usebibmacro{index:entry}{#1}{\mkbibindexname{#2}{#3}{#4}{#5}}}
-% {<family name>}{<given name>}{<given initials>}{<family name prefix>}
+% {<family name>}{<given name>}{<prefix>}{<suffix>}
\newcommand*{\mkbibindexname}[4]{%
\ifuseprefix
{\ifdefvoid{#3}{}{#3 }%
@@ -1715,6 +1725,7 @@
\DeclareDataInheritance{periodical}{article,suppperiodical}{%
\inherit{title}{journaltitle}
\inherit{subtitle}{journalsubtitle}
+ \inherit{titleaddon}{journaltitleaddon}
\noinherit{shorttitle}
\noinherit{sorttitle}
\noinherit{indextitle}
@@ -2344,7 +2355,7 @@
\newbibmacro*{multipostnote}{%
\iffieldundef{multipostnote}
{}
- {\printdelim{multipostnotedelim}
+ {\printdelim{multipostnotedelim}%
\printfield{multipostnote}}}
% ------------------------------------------------------------------
@@ -2824,6 +2835,9 @@
\newunit}%
\printfield{maintitleaddon}}
+% The \iffieldundef{journaltitleaddon} is usually not necessary.
+% We need it to ensure that a \setunit* after this macro does the right thing
+% for backwards compatibility.
\newbibmacro*{journal}{%
\ifboolexpr{
test {\iffieldundef{journaltitle}}
@@ -2834,8 +2848,14 @@
{\printtext[journaltitle]{%
\printfield[titlecase]{journaltitle}%
\setunit{\subtitlepunct}%
- \printfield[titlecase]{journalsubtitle}}}}
+ \printfield[titlecase]{journalsubtitle}}%
+ \newunit}%
+ \iffieldundef{journaltitleaddon}
+ {}
+ {\printfield{journaltitleaddon}}}
+% Re \iffieldundef{titleaddon} see the comment about
+% \iffieldundef{journaltitleaddon} above.
\newbibmacro*{periodical}{%
\ifboolexpr{
test {\iffieldundef{title}}
@@ -2846,7 +2866,11 @@
{\printtext[title]{%
\printfield[titlecase]{title}%
\setunit{\subtitlepunct}%
- \printfield[titlecase]{subtitle}}}}
+ \printfield[titlecase]{subtitle}}%
+ \newunit}%
+ \iffieldundef{titleaddon}
+ {}
+ {\printfield{titleaddon}}}
\newbibmacro*{issue}{%
\ifboolexpr{
@@ -2858,11 +2882,13 @@
{\printtext[issuetitle]{%
\printfield[titlecase]{issuetitle}%
\setunit{\subtitlepunct}%
- \printfield[titlecase]{issuesubtitle}}}}
+ \printfield[titlecase]{issuesubtitle}}%
+ \newunit}%
+ \printfield{issuetitleaddon}}
\newbibmacro*{in:}{%
- \printtext{%
- \bibstring{in}\intitlepunct}}
+ \bibstring{in}%
+ \printunit{\intitlepunct}}
\newbibmacro*{date}{\printdate}
@@ -2900,9 +2926,12 @@
{\printfield[eprint:\strfield{eprinttype}]{eprint}}}
\newbibmacro*{annotation}{%
+ \begingroup
+ \togglefalse{blx@bibliography}%
\iffieldundef{annotation}
{\printfile[annotation]{\bibannotationprefix\thefield{entrykey}.tex}}
- {\printfield{annotation}}}
+ {\printfield{annotation}}%
+ \endgroup}
\newbibmacro*{abstract}{%
\iffieldundef{abstract}
@@ -2926,7 +2955,7 @@
\ifbibmacroundef{date+extradate}
{}
{\renewbibmacro*{date+extradate}{}%
- \renewbibmacro*{date}{\printdate}}%
+ \renewbibmacro*{bbx:ifmergeddate}{\@secondoftwo}}%
\renewbibmacro*{pageref}{}}
{\thefield{entrytype}}}}