summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-03-05 22:20:02 +0000
committerKarl Berry <karl@freefriends.org>2018-03-05 22:20:02 +0000
commitc4d413f7fd5020baebc166f24b7f39ba8f8aaacd (patch)
tree02c2fce0d73bbbf408b4f87cc64b9500179cc941 /Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx
parentcf3bfced31aa1039d850d531c69ee993e99430de (diff)
biblatex-oxref (4mar18)
git-svn-id: svn://tug.org/texlive/trunk@46852 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx')
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx578
1 files changed, 466 insertions, 112 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx
index ce8086d62e7..acfede01a6d 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2018/02/09 v0.11.3}
+\def\Version{2018/03/03 v0.12}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxref.bbx}
[\Version\space Base settings for bibliography styles inspired by the Oxford Guide to Style]
@@ -22,8 +22,9 @@
\RequirePackage{graphicx}
\DeclareLanguageMappingSuffix{-oxref}
\NewBibliographyString{%
- director, performer, reader, conductor,
- bydirector, byperformer, byreader, byconductor, byserieseditor,
+ director, performer, reader, conductor, serieseditor, holder, editorcm,
+ directors, performers, readers, conductors, serieseditors, holders, editorcms,
+ bydirector, byperformer, byreader, byconductor, byserieseditor, byholder, byeditorcm,
facsimile, revised, revisedenlarged, revisedreprint, suppto, equals, original,
inpressin,
book, books, canto, cantos, stanza, stanzas, act, acts, scene, scenes, folio, folios,
@@ -33,8 +34,9 @@
articletotal, articletotals, clausetotal, clausetotals, regulationtotal,
regulationtotals, ruletotal, ruletotals,
facebook, tweet, podcast, clip, webcast, poster,
- nolocation, modified, recorded, uploaded,
+ nolocation, modified, recorded, uploaded, filed, issued,
anon, pseudo, urldown,
+ countryjp, patentjp, patreqjp,
1column, 2column, inflayer, suplayer, paper, papyrus, pergament,
eucase, eujoinedcases, commissiondecision, application,
order, bill, draft, opened, signed, adopted, inforce,
@@ -62,6 +64,8 @@
\newtoggle{blx@ox@nametitle}\toggletrue{blx@ox@nametitle}%
\DeclareBibliographyOption[boolean]{usenametitles}[true]{%
\settoggle{blx@ox@nametitle}{#1}}
+\DeclareTypeOption[boolean]{usenametitles}[true]{%
+ \settoggle{blx@ox@nametitle}{#1}}
\DeclareEntryOption[boolean]{usenametitles}[true]{%
\settoggle{blx@ox@nametitle}{#1}}
\newbibmacro*{name:title-given-family}[5]{%
@@ -455,6 +459,7 @@
\setunit{\addspace}}}%
{\global\undef\bbx@lasthash}}
\DeclareFieldFormat{authortype}{\mkbibparens{#1}}
+\newcommand{\titlebyauthordelim}{\addspace}
\renewbibmacro*{editor}{%
\usebibmacro{bbx:editor}{editorstrg}}
\renewbibmacro*{editor+others}{%
@@ -611,6 +616,8 @@
\newtoggle{blx@ox@timefirst}
\DeclareBibliographyOption{timefirst}[true]{%
\settoggle{blx@ox@timefirst}{#1}}
+\DeclareTypeOption{timefirst}[true]{%
+ \settoggle{blx@ox@timefirst}{#1}}
\DeclareEntryOption{timefirst}[true]{%
\settoggle{blx@ox@timefirst}{#1}}
\newbibmacro*{date+time}{%
@@ -657,6 +664,18 @@
\setunit*{\addcomma\space}%
\printorigtime}%
}
+\DeclareFieldFormat{date}{%
+ \def\currentfield{date}%
+ \iffieldannotation{inferred}{\mkbibbrackets{#1}}{#1}%
+ \undef\currentfield}
+\DeclareFieldFormat{origdate}{%
+ \def\currentfield{origdate}%
+ \iffieldannotation{inferred}{\mkbibbrackets{#1}}{#1}%
+ \undef\currentfield}
+\DeclareFieldFormat{eventdate}{%
+ \def\currentfield{eventdate}%
+ \iffieldannotation{inferred}{\mkbibbrackets{#1}}{#1}%
+ \undef\currentfield}
\xpatchfieldformat{edition}{%
#1\isdot
}{%
@@ -733,7 +752,6 @@
\do\={\mathbin{}\mskip-\Urlmuskip\mathchar`\=\mskip\Urlmuskip}%
\do\?{\mathbin{}\mskip-\Urlmuskip\mathchar`\?\mskip\Urlmuskip}%
\do\_{\mathbin{}\mskip-\Urlmuskip\_\mskip\Urlmuskip}%
- \do\@{\mathbin{}\mskip-\Urlmuskip\@\mskip\Urlmuskip}%
\do\#{\mathbin{}\mskip-\Urlmuskip\#\mskip\Urlmuskip}%
}%
\ifnumgreater{\value{biburlnumpenalty}}{0}
@@ -780,7 +798,7 @@
\DeclareFieldFormat{pubstate}{\mkbibparens{#1}}
\DeclareFieldFormat{howpublished}{\mkbibbrackets{#1}}
\DeclareFieldFormat[misc,unpublished]{howpublished}{#1}
-\DeclareFieldFormat[article,periodical,review]{entrysubtype}{\mkbibbrackets{#1}}
+\DeclareFieldFormat[article,periodical,suppperiodical,review]{entrysubtype}{\mkbibbrackets{#1}}
\newcommand*{\blx@ox@abbrevstring}{%
A\^{A}BCDEFG\u{G}HI\.{I}\^{I}JKLMNO\"{O}\^{O}PQRSTU\"{U}\^{U}VWXYZ.}%
\AtBeginDocument{
@@ -884,8 +902,16 @@
\newtoggle{blx@ox@varissuedate}
\DeclareBibliographyOption[boolean]{varissuedate}[true]{%
\settoggle{blx@ox@varissuedate}{#1}}
+\DeclareTypeOption[boolean]{varissuedate}[true]{%
+ \settoggle{blx@ox@varissuedate}{#1}}
\DeclareEntryOption[boolean]{varissuedate}[true]{%
\settoggle{blx@ox@varissuedate}{#1}}
+\DeclareBibliographyOption[boolean]{issuedate-plain}[true]{%
+ \settoggle{blx@ox@varissuedate}{#1}}
+\DeclareTypeOption[boolean]{issuedate-plain}[true]{%
+ \settoggle{blx@ox@varissuedate}{#1}}
+\DeclareEntryOption[boolean]{issuedate-plain}[true]{%
+ \settoggle{blx@ox@varissuedate}{#1}}
\renewbibmacro*{issue+date}{%
\ifboolexpr{
test {\iffieldundef{issue}}
@@ -928,7 +954,7 @@
\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{bytranslator+others}%
@@ -990,16 +1016,61 @@
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}
+\DeclareFieldFormat[suppperiodical]{title}{%
+ \def\currentfield{title}%
+ \iffieldannotation{descriptor}{#1}{\mkbibquote{#1\isdot}}%
+ \undef\currentfield}
+\DeclareFieldFormat[suppperiodical]{volume}{#1}% volume of a journal
+\DeclareFieldFormat[suppperiodical]{number}{#1}% number of a journal
+\DeclareFieldFormat[suppperiodical]{series}{% series of a journal
+ \ifinteger{#1}
+ {\mkbibordseries{#1}~\bibstring{jourser}}
+ {\ifbibstring{#1}{\bibstring{#1}}{#1}}}
+\DeclareBibliographyDriver{suppperiodical}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{author/translator+others}%
+ \setunit{\printdelim{nametitledelim}}\newblock
+ \usebibmacro{title}%
+ \setunit{\titlebyauthordelim}\newblock
+ \usebibmacro{byauthor}%
+ \newunit\newblock
+ \usebibmacro{bytranslator+others}%
+ \newunit\newblock
+ \printfield{note}\clearfield{note}%
+ \newunit\newblock
+ \printfield{version}%
+ \newunit\newblock
+ \usebibmacro{journal+issuetitle}%
+ \newunit
+ \usebibmacro{byeditor+others}%
+ \iffieldequalstr{relatedtype}{suppto}{%
+ \setunit{\addsemicolon\space}%
+ \iftoggle{bbx:related}{%
+ \usebibmacro{related:init}%
+ \usebibmacro{related}%
+ \clearfield{related}%
+ }{}%
+ }{}%
+ \newunit
+ \usebibmacro{note+pages}%
+ \newunit\newblock
+ \iftoggle{bbx:isbn}
+ {\printfield{issn}}
+ {}%
+ \newunit\newblock
+ \usebibmacro{doi+eprint+url}%
+ \newunit\newblock
+ \usebibmacro{addendum+pubstate}%
+ \setunit{\bibpagerefpunct}\newblock
+ \usebibmacro{pageref}%
+ \setunit{\relatedtypepunct}\newblock
+ \iftoggle{bbx:related}
+ {\usebibmacro{related:init}%
+ \usebibmacro{related}}
+ {}%
+ \usebibmacro{finentry}}
\ExecuteBibliographyOptions[book,mvbook,reference,mvreference]{useeditor=false,usetranslator=false}
-\DeclareFieldFormat[bookinbook]{citetitle}{%
- \ifboolexpr{
- test {\iffieldequalstr{entrysubtype}{poem}}
- or
- test {\iffieldequalstr{entrysubtype}{play}}
- }{%
- \mkbibemph{#1}%
- }{%
- \mkbibquote{#1\isdot}}}
\DeclareFieldFormat[bookinbook]{title}{%
\ifboolexpr{
test {\iffieldequalstr{entrysubtype}{poem}}
@@ -1045,6 +1116,16 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{byserieseditor}%
\setunit*{\addcomma\space}%
\printfield{number}}
+\newtoggle{blx@ox@altbookseries}
+\DeclareBibliographyOption[string]{bookseries}[in]{%
+ \ifstrequal{#1}{out}{%
+ \toggletrue{blx@ox@altbookseries}%
+ }{%
+ \togglefalse{blx@ox@altbookseries}%
+ \ifstrequal{#1}{in}{}{%
+ \PackageError{oxref}
+ {Invalid option 'bookseries=#1'}
+ {Valid values are 'in' and 'out'.}}}}
\newcounter{locpubpairs}
\newbibmacro*{edition+publisher+location+date}{%
\printlist{origlocation}%
@@ -1103,6 +1184,9 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{date}%
}
\newbibmacro*{series+number+edition+publisher+location+date}{%
+ \iftoggle{blx@ox@altbookseries}{%
+ \usebibmacro{series+number}%
+ \setunit{\addspace}\newblock}{}%
\ifboolexpr{
test {\iffieldundef{series}}
and
@@ -1122,8 +1206,9 @@ reference,mvreference,inreference]{volume}{%
}{}{%
\nopunct
\printtext[publication]{%
- \usebibmacro{series+number}%
- \setunit{\addsemicolon\addspace}%
+ \iftoggle{blx@ox@altbookseries}{}{%
+ \usebibmacro{series+number}%
+ \setunit{\addsemicolon\addspace}}%
\usebibmacro{edition+publisher+location+date}%
\usebibmacro{copub}}}%
\iffieldequalstr{relatedtype}{copub}{\clearfield{related}}%
@@ -1131,6 +1216,9 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{origpub}%
}
\newbibmacro*{series+number+publisher+location+date}{%
+ \iftoggle{blx@ox@altbookseries}{%
+ \usebibmacro{series+number}%
+ \setunit{\addspace}\newblock}{}%
\ifboolexpr{
test {\iffieldundef{series}}
and
@@ -1148,8 +1236,9 @@ reference,mvreference,inreference]{volume}{%
}{}{%
\nopunct
\printtext[publication]{%
- \usebibmacro{series+number}%
- \setunit{\addsemicolon\addspace}%
+ \iftoggle{blx@ox@altbookseries}{}{%
+ \usebibmacro{series+number}%
+ \setunit{\addsemicolon\addspace}}%
\usebibmacro{publisher+location+date}%
\usebibmacro{copub}}}%
\iffieldequalstr{relatedtype}{copub}{\clearfield{related}}%
@@ -1186,7 +1275,7 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
@@ -1232,7 +1321,7 @@ reference,mvreference,inreference]{volume}{%
}{}{%
\printfield{volume}%
\printfield{part}}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
@@ -1277,7 +1366,7 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
@@ -1295,7 +1384,7 @@ reference,mvreference,inreference]{volume}{%
\printfield{volumes}%
\newunit\newblock
\printfield{note}%
- \newunit\newblock%
+ \newunit\newblock
\usebibmacro{series+number+edition+publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
@@ -1315,14 +1404,61 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}
-\DeclareFieldFormat[suppbook]{title}{#1\nopunct}
-\DeclareBibliographyDriver{bookinbook}{%
+\DeclareFieldFormat[suppbook]{title}{%
+ \def\currentfield{title}%
+ \iffieldannotation{descriptor}{#1}{\mkbibemph{#1}}%
+ \undef\currentfield}
+\DeclareBibliographyDriver{suppbook}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
+ \setunit{\titlebyauthordelim}\newblock
+ \usebibmacro{byauthor}%
+ \newunit\newblock
+ \printfield{note}%
+ \setunit{\addspace}\newblock
+ \usebibmacro{in:}%
+ \usebibmacro{bybookauthor}%
\newunit\newblock
+ \usebibmacro{maintitle+booktitle}%
+ \newunit
+ \iffieldundef{maintitle}
+ {\printfield{volume}%
+ \printfield{part}}
+ {}%
+ \newunit\newblock
+ \usebibmacro{byeditor+others}%
+ \newunit\newblock
+ \printfield{volumes}%
+ \newunit\newblock
+ \usebibmacro{series+number+edition+publisher+location+date}%
+ \newunit\newblock
+ \usebibmacro{chapter+pages}%
+ \newunit\newblock
+ \iftoggle{bbx:isbn}
+ {\printfield{isbn}}
+ {}%
+ \newunit\newblock
+ \usebibmacro{doi+eprint+url}%
+ \newunit\newblock
+ \usebibmacro{addendum+pubstate}%
+ \setunit{\bibpagerefpunct}\newblock
+ \usebibmacro{pageref}%
+ \setunit{\relatedtypepunct}\newblock
+ \iftoggle{bbx:related}
+ {\usebibmacro{related:init}%
+ \usebibmacro{related}}
+ {}%
+ \usebibmacro{finentry}}
+\DeclareBibliographyDriver{bookinbook}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{author/translator+others}%
+ \setunit{\printdelim{nametitledelim}}\newblock
+ \usebibmacro{title}%
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
@@ -1341,7 +1477,7 @@ reference,mvreference,inreference]{volume}{%
\newunit\newblock
\printfield{note}%
\newunit\newblock
- \usebibmacro{series+number+publisher+location+date}%
+ \usebibmacro{series+number+edition+publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
@@ -1451,7 +1587,7 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
@@ -1487,6 +1623,52 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}
+\DeclareFieldFormat[suppcollection]{title}{%
+ \def\currentfield{title}%
+ \iffieldannotation{descriptor}{#1}{\mkbibemph{#1}}%
+ \undef\currentfield}
+\DeclareBibliographyDriver{suppcollection}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{author/translator+others}%
+ \setunit{\printdelim{nametitledelim}}\newblock
+ \usebibmacro{title}%
+ \setunit{\titlebyauthordelim}\newblock
+ \usebibmacro{byauthor}%
+ \newunit\newblock
+ \printfield{note}%
+ \setunit{\addspace}\newblock
+ \usebibmacro{in:}%
+ \usebibmacro{bookeditor}%
+ \newunit\newblock
+ \usebibmacro{maintitle+booktitle}%
+ \newunit
+ \iffieldundef{maintitle}
+ {\printfield{volume}%
+ \printfield{part}}
+ {}%
+ \newunit\newblock
+ \printfield{volumes}%
+ \newunit\newblock%
+ \usebibmacro{series+number+edition+publisher+location+date}%
+ \newunit\newblock
+ \usebibmacro{chapter+pages}%
+ \newunit\newblock
+ \iftoggle{bbx:isbn}
+ {\printfield{isbn}}
+ {}%
+ \newunit\newblock
+ \usebibmacro{doi+eprint+url}%
+ \newunit\newblock
+ \usebibmacro{addendum+pubstate}%
+ \setunit{\bibpagerefpunct}\newblock
+ \usebibmacro{pageref}%
+ \setunit{\relatedtypepunct}\newblock
+ \iftoggle{bbx:related}
+ {\usebibmacro{related:init}%
+ \usebibmacro{related}}
+ {}%
+ \usebibmacro{finentry}}
\DeclareBibliographyDriver{reference}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
@@ -1495,7 +1677,7 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{title}%
\newunit\newblock
\printfield{edition}%
- \newunit
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
@@ -1541,7 +1723,7 @@ reference,mvreference,inreference]{volume}{%
\printfield{part}}%
\newunit\newblock
\printfield{edition}%
- \newunit
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
@@ -1586,7 +1768,7 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\iffieldundef{editor}{}{%
@@ -1634,18 +1816,10 @@ reference,mvreference,inreference]{volume}{%
\printfield{eventtitle}%
\newunit
\printfield{eventtitleaddon}%
- \ifboolexpr{
- test {\iffieldundef{venue}}
- and
- test {\iffieldundef{eventyear}}
- }{}{%
- \iffieldundef{eventtitle}{%
- \setunit{\mkbibemph{\addcomma}\space}%
- }{%
- \newunit}%
- \printfield{venue}%
- \newunit%
- \printeventdate}%
+ \newunit
+ \printfield{venue}%
+ \newunit%
+ \printeventdate%
\newunit}
\DeclareBibliographyDriver{proceedings}{%
\usebibmacro{bibindex}%
@@ -1696,7 +1870,7 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
@@ -1791,9 +1965,28 @@ reference,mvreference,inreference]{volume}{%
\setunit*{\addcomma\space}%
\usebibmacro{date}}}}
\newtoggle{blx@ox@altthesis}
+\newtoggle{blx@ox@plainthesis}
+\DeclareFieldAlias{thesis:publication}{publication}
+\DeclareFieldFormat{plain}{#1}
\DeclareBibliographyOption[boolean]{altthesis}[true]{%
\settoggle{blx@ox@altthesis}{#1}
}
+\DeclareBibliographyOption[string]{thesis}[out]{%
+ \ifstrequal{#1}{plain}{%
+ \toggletrue{blx@ox@altthesis}%
+ \toggletrue{blx@ox@plainthesis}%
+ \DeclareFieldAlias{thesis:publication}{plain}%
+ }{%
+ \togglefalse{blx@ox@plainthesis}%
+ \DeclareFieldAlias{thesis:publication}{publication}%
+ \ifstrequal{#1}{in}{%
+ \toggletrue{blx@ox@altthesis}%
+ }{%
+ \togglefalse{blx@ox@altthesis}%
+ \ifstrequal{#1}{out}{}{%
+ \PackageError{oxref}
+ {Invalid option 'bookseries=#1'}
+ {Valid values are 'in', 'out', and 'plain'.}}}}}
\newbibmacro*{type+institution+location+date}{%
\iftoggle{blx@ox@altthesis}{%
\ifboolexpr{
@@ -1809,8 +2002,8 @@ reference,mvreference,inreference]{volume}{%
and
test {\iffieldundef{month}}
}{}{%
- \nopunct
- \printtext[publication]{%
+ \iftoggle{blx@ox@plainthesis}{}{\nopunct}%
+ \printtext[thesis:publication]{%
\printfield{type}%
\setunit*{\addcomma\space}%
\printlist{location}%
@@ -1880,7 +2073,7 @@ reference,mvreference,inreference]{volume}{%
{\printfield{volume}%
\printfield{part}}
{}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\printfield{version}%
@@ -1920,20 +2113,118 @@ reference,mvreference,inreference]{volume}{%
}{%
\usebibmacro{type+institution+location+date}%
}{}{}
-\DeclareBibliographyDriver{manual}{%
+\DeclareFieldFormat[booklet]{title}{%
+ \def\currentfield{title}%
+ \iffieldannotation{descriptor}{#1}{%
+ \mkbibquote{#1\isdot}}%
+ \undef\currentfield}
+\DeclareFieldFormat[patent]{title}{\mkbibemph{#1}}
+\DeclareFieldFormat[patent]{type}{\ifbibstring{#1}{\biblstring{#1}}{#1}}
+\DeclareNameAlias{byholder}{default}
+\renewbibmacro*{byholder}{%
+ \ifnameundef{holder}{}{%
+ \bibstring{byholder}%
+ \setunit{\addspace}%
+ \printnames[byholder]{holder}}}
+\newbibmacro*{location+dates}{%
+ \ifboolexpr{
+ test {\iffieldundef{location}}
+ and
+ test {\iffieldundef{origyear}}
+ and
+ test {\iffieldundef{origmonth}}
+ and
+ test {\iffieldundef{year}}
+ and
+ test {\iffieldundef{month}}
+ }{}{%
+ \nopunct
+ \printtext[publication]{%
+ \printlist[][-\value{listtotal}]{location}%
+ \setunit*{\addcomma\space}%
+ \ifboolexpr{
+ test {\iffieldundef{origyear}}
+ and
+ test {\iffieldundef{origmonth}}
+ }{}{%
+ \iffieldundef{origdatetype}{%
+ \bibstring{filed}
+ }{
+ \printfield{origdatetype}}%
+ \setunit*{\addspace}}%
+ \usebibmacro{origdate+time}%
+ \setunit*{\addcomma\space}%
+ \ifboolexpr{
+ test {\iffieldundef{year}}
+ and
+ test {\iffieldundef{month}}
+ }{}{%
+ \iffieldundef{datetype}{%
+ \bibstring{issued}%
+ }{
+ \printfield{datetype}}%
+ \setunit*{\addspace}}%
+ \usebibmacro{date}}}}
+\DeclareBibliographyDriver{patent}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
- \usebibmacro{author/editor}%
+ \usebibmacro{author}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \newunit
+ \printlist{language}%
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
- \usebibmacro{byeditor}%
+ \printfield{note}%
\newunit\newblock
\printfield{type}%
+ \setunit*{\addspace}%
+ \printfield{number}%
+ \newunit\newblock
+ \usebibmacro{byholder}%
+ \newunit\newblock
+ \usebibmacro{location+dates}%
+ \newunit\newblock
+ \usebibmacro{doi+eprint+url}%
+ \newunit\newblock
+ \usebibmacro{addendum+pubstate}%
+ \setunit{\bibpagerefpunct}\newblock
+ \usebibmacro{pageref}%
+ \setunit{\relatedtypepunct}\newblock
+ \iftoggle{bbx:related}
+ {\usebibmacro{related:init}%
+ \usebibmacro{related}}
+ {}%
+ \usebibmacro{finentry}}
+\DeclareBibliographyDriver{manual}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \ifboolexpr{
+ test {\ifentrytype{standard}}
+ and
+ ( test {\ifnameundef{author}}
+ or
+ not test \ifuseauthor )
+ and
+ not test {\iffieldundef{number}}
+ }{%
+ \printfield{number}\clearfield{number}%
+ \newunit\newblock
+ }{}%
+ \usebibmacro{author/editor}%
+ \setunit{\printdelim{nametitledelim}}\newblock
+ \ifentrytype{software}{%
+ \usebibmacro{title+version}%
+ }{%
+ \usebibmacro{title}}%
+ \setunit{\titlebyauthordelim}\newblock
+ \usebibmacro{byauthor}%
+ \newunit\newblock
+ \usebibmacro{byeditor}%
\newunit
- \printfield{version}%
+ \ifentrytype{software}{}{%
+ \newunit\printfield{version}}%
\newunit
\printfield{note}%
\newunit\newblock
@@ -1958,6 +2249,8 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}
+\DeclareBibliographyAlias{standard}{manual}
+\ExecuteBibliographyOptions[standard]{useeditor=false}
\newbibmacro*{publisher+type+series+number+date}{%
\iffieldundef{number}{}{%
\setunit{\addcomma\space}%
@@ -1982,11 +2275,11 @@ reference,mvreference,inreference]{volume}{%
and
test {\iffieldundef{month}}
and
- test {\iffieldundef{eventyear}}
+ test {\iffieldundef{origyear}}
and
- test {\iffieldundef{eventseason}}
+ test {\iffieldundef{origseason}}
and
- test {\iffieldundef{eventmonth}}
+ test {\iffieldundef{origmonth}}
and
test {\iffieldundef{hour}}
}{}{%
@@ -2044,7 +2337,7 @@ reference,mvreference,inreference]{volume}{%
}{}%
\setunit{\addspace}
\usebibmacro{onlinetype}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{pre-byeditor+others}%
@@ -2085,7 +2378,7 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{author}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
@@ -2195,10 +2488,83 @@ reference,mvreference,inreference]{volume}{%
\mkbibemph{#1}}}%
\undef\currentfield}
-\DeclareBibliographyAlias{image}{online}
-\DeclareFieldFormat[image]{title}{\mkbibquote{#1\isdot}}
+\DeclareBibliographyDriver{performance}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{author}%
+ \setunit{\printdelim{nametitledelim}}\newblock
+ \usebibmacro{title}%
+ \newunit
+ \usebibmacro{maintitle}%
+ \iffieldequalstr{relatedtype}{includes}{%
+ \iftoggle{bbx:related}{%
+ \newunit\newblock
+ \usebibmacro{related:init}%
+ \usebibmacro{related}%
+ \clearfield{related}%
+ }{}%
+ }{}%
+ \setunit{\addspace}
+ \usebibmacro{onlinetype}%
+ \setunit{\titlebyauthordelim}\newblock
+ \usebibmacro{byauthor}%
+ \newunit\newblock
+ \usebibmacro{pre-byeditor+others}%
+ \setunit{\addspace}%
+ \printfield{howpublished}%
+ \newunit\newblock
+ \printfield{type}%
+ \newunit\newblock
+ \printfield{note}%
+ \ifboolexpr{
+ test {\iffieldundef{origyear}}
+ and
+ test {\iffieldundef{origmonth}}
+ }{}{%
+ \setunit{\addspace}\newblock
+ \printtext[publication]{\usebibmacro{origdate+time}}}
+ \newunit\newblock
+ \usebibmacro{event+venue+location+date}%
+ \newunit\newblock
+ \usebibmacro{post-byeditor+others}%
+ \newunit\newblock
+ \printlist{organization}%
+ \newunit\newblock
+ \iftoggle{bbx:isbn}
+ {\printfield{isbn}}
+ {}%
+ \newunit\newblock
+ \usebibmacro{doi+eprint+url}%
+ \newunit\newblock
+ \usebibmacro{addendum+pubstate}%
+ \setunit{\bibpagerefpunct}\newblock
+ \usebibmacro{pageref}%
+ \setunit{\relatedtypepunct}\newblock
+ \iftoggle{bbx:related}
+ {\usebibmacro{related:init}%
+ \usebibmacro{related}}
+ {}%
+ \usebibmacro{finentry}}
+\DeclareBibliographyAlias{image}{performance}
+\DeclareBibliographyAlias{artwork}{performance}
+\renewbibmacro*{event+venue+location+date}{%
+ \printfield{eventtitle}%
+ \newunit
+ \printfield{eventtitleaddon}%
+ \newunit
+ \printlist{institution}%
+ \newunit
+ \printfield{venue}%
+ \newunit
+ \printlist{location}%
+ \newunit%
+ \ifboolexpr{
+ test {\iffieldundef{year}}
+ and
+ test {\iffieldundef{month}}
+ }{\printeventdate}{\usebibmacro{date+time}}}
-\DeclareFieldFormat[online]{title}{%
+\DeclareFieldFormat[online,image]{title}{%
\def\currentfield{title}%
\iffieldannotation{descriptor}{#1}{\mkbibquote{#1\isdot}}%
\undef\currentfield}
@@ -2222,7 +2588,7 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{maintitle}
\setunit{\addspace}%
\usebibmacro{onlinetype}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
@@ -2272,42 +2638,7 @@ reference,mvreference,inreference]{volume}{%
}
\DeclareFieldFormat[software]{version}{\mkbibparens{\bibstring{version}~#1}}
\DeclareFieldFormat[software]{urldate}{\bibstring{urldown}\space#1}
-\DeclareBibliographyDriver{software}{%
- \usebibmacro{bibindex}%
- \usebibmacro{begentry}%
- \usebibmacro{author/editor}%
- \setunit{\printdelim{nametitledelim}}\newblock
- \usebibmacro{title+version}%
- \newunit\newblock
- \usebibmacro{byauthor}%
- \newunit\newblock
- \usebibmacro{byeditor}%
- \newunit\newblock
- \printfield{type}%
- \newunit
- \printfield{note}%
- \newunit\newblock
- \usebibmacro{type+series+number+edition+organization+publisher+location+date}%
- \newunit\newblock
- \usebibmacro{chapter+pages}%
- \newunit
- \printfield{pagetotal}%
- \newunit\newblock
- \iftoggle{bbx:isbn}
- {\printfield{isbn}}
- {}%
- \newunit\newblock
- \usebibmacro{doi+eprint+url}%
- \newunit\newblock
- \usebibmacro{addendum+pubstate}%
- \setunit{\bibpagerefpunct}\newblock
- \usebibmacro{pageref}%
- \setunit{\relatedtypepunct}\newblock
- \iftoggle{bbx:related}
- {\usebibmacro{related:init}%
- \usebibmacro{related}}
- {}%
- \usebibmacro{finentry}}
+\DeclareBibliographyAlias{software}{manual}
\DeclareBibliographyAlias{dataset}{manual}
\newtoggle{bbx:scotstyle}
\DeclareEntryOption{scottish-style}[true]{%
@@ -3210,12 +3541,16 @@ reference,mvreference,inreference]{volume}{%
test {\ifnameundef{author}}
and
test {\iffieldundef{title}}
+ and
+ test {\iffieldundef{label}}
}{}{\usebibmacro{date}}}
\newbibmacro{dating}{%
\ifboolexpr{(
test {\ifnameundef{author}}
and
test {\iffieldundef{title}}
+ and
+ test {\iffieldundef{label}}
) or
test {\iffieldundef{year}}
}{%
@@ -3275,7 +3610,7 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{author}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\printfield{howpublished}%
@@ -3323,13 +3658,13 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{author}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
- \printfield{howpublished}%
- \newunit\newblock
\printfield{note}%
\newunit\newblock
+ \printfield{howpublished}%
+ \newunit\newblock
\iftoggle{blx@ox@ms}{%
\usebibmacro{manuscript:date}%
\newunit\newblock
@@ -3357,7 +3692,13 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}
-
+\DeclareBibliographyAlias{letter}{unpublished}
+\DeclareFieldFormat[letter]{title}{%
+ \def\currentfield{title}%
+ \iffieldannotation{descriptor}{#1}{\mkbibquote{#1\isdot}}%
+ \undef\currentfield}
+\DeclareFieldFormat[letter]{date}{%
+ \iffieldundef{url}{#1}{\mkbibparens{#1}}}
\xpatchbibdriver{booklet}{%
\newunit\newblock
\iftoggle{bbx:related}
@@ -3372,13 +3713,6 @@ reference,mvreference,inreference]{volume}{%
\setunit{\relatedtypepunct}\newblock
\iftoggle{bbx:related}
}{}{}
-\xpatchbibdriver{patent}{%
- \newunit\newblock
- \iftoggle{bbx:related}
-}{%
- \setunit{\relatedtypepunct}\newblock
- \iftoggle{bbx:related}
-}{}{}
\DeclareBibliographyOption{relationpunct}[semicolon]{%
\ifcsdef{add#1}{%
\ifstrequal{#1}{space}{%
@@ -3391,6 +3725,18 @@ reference,mvreference,inreference]{volume}{%
}{%
Valid values are 'dot', 'comma', 'semicolon', 'colon',\MessageBreak
'period', 'exclam', 'question', and 'space'.}}}
+\DeclareTypeOption{relationpunct}[semicolon]{%
+ \ifcsdef{add#1}{%
+ \ifstrequal{#1}{space}{%
+ \renewcommand*{\relatedtypepunct}{\addspace}%
+ }{%
+ \renewcommand*{\relatedtypepunct}{\csuse{add#1}\space}}%
+ }{%
+ \PackageError{biblatex-oxref}{%
+ Invalid option 'relationpunct=#1'%
+ }{%
+ Valid values are 'dot', 'comma', 'semicolon', 'colon',\MessageBreak
+ 'period', 'exclam', 'question', and 'space'.}}}
\newtoggle{blx@ox@relpunctset}
\DeclareEntryOption{relationpunct}[semicolon]{%
\ifcsdef{add#1}{%
@@ -3507,7 +3853,7 @@ reference,mvreference,inreference]{volume}{%
\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}\newblock
\usebibmacro{title}%
- \newunit\newblock
+ \setunit{\titlebyauthordelim}\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{bytranslator+others}%
@@ -3703,6 +4049,14 @@ reference,mvreference,inreference]{volume}{%
fieldvalue={=translator}]
}
\map[overwrite=false]{
+ \pertype{standard}
+ \step[notfield=author,
+ fieldsource=number,
+ final]
+ \step[fieldset=sortkey,
+ origfieldval]
+ }
+ \map[overwrite=false]{
\pertype{audio}
\pertype{music}
\pertype{movie}
@@ -3973,8 +4327,8 @@ reference,mvreference,inreference]{volume}{%
}
}
\ExecuteBibliographyOptions
- [proceedings,report,audio,music,movie,video,manuscript,unpublished,review]%
- {useeditor=false}
+ [proceedings,report,artwork,audio,image,music,movie,performance,video,%
+ manuscript,unpublished,review]{useeditor=false}
%%
%% Copyright (C) 2016–2018 Alex Ball
%%