summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/biblatex-sbl/sbl.cbx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex-sbl/sbl.cbx')
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-sbl/sbl.cbx559
1 files changed, 424 insertions, 135 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-sbl/sbl.cbx b/Master/texmf-dist/tex/latex/biblatex-sbl/sbl.cbx
index 5520ab65e0a..786d77030bd 100644
--- a/Master/texmf-dist/tex/latex/biblatex-sbl/sbl.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-sbl/sbl.cbx
@@ -8,11 +8,15 @@
\newtoggle{cbx:loccit}
\newtoggle{usingibid}
\newtoggle{relatedseen}
+\newtoggle{inentrytype}
+\newtoggle{cbx:involcite}
\newbibmacro*{cite}{%
\boolfalse{suppresspostnote}%
\boolfalse{usevolpostnotedelim}%
\global\togglefalse{usingibid}%
+ \global\togglefalse{inentrytype}%
+ \global\toggletrue{blx@testpostnotedelim}%
\ifciteseen
{\global\toggletrue{relatedseen}}
{\global\togglefalse{relatedseen}}%
@@ -24,11 +28,15 @@
\ifboolexpr{%
test {\ifciteibid}
and
- not test {\iffirstonpage}}
+ not test {\iffirstonpage}
+ }
{\usebibmacro{cite:ibid}}
- {\usebibmacro{ifuseshorthand}
+ {\usebibmacro{ifciteuseshorthand}
{\usebibmacro{cite:shorthand}}
- {\usedriver{}{cite:\thefield{entrytype}}}}}}
+ {\usedriver{}{cite:\thefield{entrytype}}%
+ \ifcsstring{blx@shorthand}{intro}
+ {\usebibmacro{shorthandintro}}
+ {}}}}}
% redefine default loccit tracker so that citations with no postnote also match
\def\blx@loccit@tracker#1{%
@@ -53,12 +61,6 @@
{\global\booltrue{suppresspostnote}}
{}}
-\newbibmacro{shorthand}{%
- \iffieldsequal{shorthand}{shorttitle}
- {\printtext{\mkbibemph{\printtext{%
- \bibhyperlink{\strfield{shorthand}}{\thefield{shorthand}}}}}}
- {\printtext{\bibhyperlink{\strfield{shorthand}}{\thefield{shorthand}}}}}
-
\newbibmacro*{cite:shorthand}{%
\togglefalse{blx@citeindex}%
\global\toggletrue{relatedseen}%
@@ -79,7 +81,10 @@
\usebibmacro{related:init}%
\usebibmacro{related}%
\usebibmacro{volume+part+postnote}}}
- {}}
+ {\ifciteseen
+ {}
+ {\newunit
+ \printfield{pages}}}}
\newbibmacro*{bibentrycite}{%
\citereset
@@ -109,12 +114,28 @@
\hskip 6em \setunit{}\usedriver{}{abbreviations}\par
}
+\renewrobustcmd*{\volcitecmd}{%
+ \AtNextCite{%
+ \toggletrue{cbx:involcite}%
+ \DeclareFieldAlias{postnote}{volcitenote}}%
+ \begingroup\let\blx@citeargs\blx@volciteargs}
+
+\renewrobustcmd*{\multivolcitecmd}{%
+ \AtNextCite{%
+ \toggletrue{cbx:involcite}%
+ \DeclareFieldAlias{postnote}{volcitenote}}%
+ \def\blx@hook@mcite@before{%
+ \global\undef\blx@hook@mcite@before
+ \let\blx@citeargs\blx@volmciteargs}}
+
\newbibmacro*{cite:postnote}{%
\iffieldundef{shorthand}
{}
{\iftoggle{usingibid}
{}
- {\usebibmacro{setpostnotedelim}}}%
+ {\usebibmacro{ifneedsetpostnotedelim}
+ {\usebibmacro{setpostnotedelim}}
+ {}}}%
\ifbool{suppresspostnote}{}{%
\ifboolexpr{%
not test {\iffieldundef{postnote}}
@@ -126,13 +147,17 @@
{\setunit{\postnotedelim}}%
\usebibmacro{postnote}}
{}}%
- \iftoggle{relatedseen}
+ \ifboolexpr{
+ togl {relatedseen}
+ or
+ not togl {bbx:related}
+ or
+ test {\iffieldundef{related}}
+ }
{}
- {\iffieldundef{related}
- {}
- {\setunit{\addsemicolon\space}%
- \usebibmacro{related:init}%
- \usebibmacro{related}}}}
+ {\setunit{\addsemicolon\space}%
+ \usebibmacro{related:init}%
+ \usebibmacro{related}}}
\DeclareCiteCommand{\smartcite}[\iffootnote\mkbibparens\mkbibfootnote]
{\usebibmacro{prenote}}
@@ -176,6 +201,22 @@
{\multicitedelim}
{\usebibmacro{cite:postnote}}
+\DeclareCiteCommand{\fullcite}
+ {\usebibmacro{prenote}}
+ {\def\blx@shorthand{false}%
+ \let\ifciteseen\@secondoftwo
+ \usebibmacro{cite}}
+ {\multicitedelim}
+ {\usebibmacro{cite:postnote}}
+
+\DeclareCiteCommand{\footfullcite}[\mkbibfootnote]
+ {\usebibmacro{prenote}}
+ {\def\blx@shorthand{false}%
+ \let\ifciteseen\@secondoftwo
+ \usebibmacro{cite}}
+ {\multicitedelim}
+ {\usebibmacro{cite:postnote}}
+
\DeclareCiteCommand{\citeseries}
{}
{\usebibmacro{shortseries}}
@@ -194,26 +235,107 @@
{}
{}
+\newbibmacro*{textcite}{%
+ \ifnameundef{labelname}
+ {\printfield[citetitle]{labeltitle}}
+ {\printnames{labelname}}}
+
+\newbibmacro*{textcite:init}{%
+ \citetrackerfalse%
+ \pagetrackerfalse%
+ \iffirstcitekey
+ {\global\undef\cbx@lasthash}
+ {}}
+
+\newbibmacro*{textcite:count}{%
+ \stepcounter{textcitetotal}%
+ \ifnumgreater{\value{uniquelist}}{\value{maxnames}}
+ {\ifnumgreater{\value{uniquelist}}{\value{textcitemaxnames}}
+ {\setcounter{textcitemaxnames}{\value{uniquelist}}}
+ {}}
+ {\ifnumless{\value{labelname}}{\value{maxnames}}
+ {\ifnumgreater{\value{labelname}}{\value{textcitemaxnames}}
+ {\setcounter{textcitemaxnames}{\value{labelname}}}
+ {}}
+ {\ifnumgreater{\value{maxnames}}{\value{textcitemaxnames}}
+ {\setcounter{textcitemaxnames}{\value{maxnames}}}
+ {}}}}
+
+\DeclareCiteCommand{\cbx@textcite}
+ {\usebibmacro{textcite:init}}
+ {\iffieldequals{namehash}{\cbx@lasthash}
+ {}
+ {\iffirstcitekey
+ {}
+ {\textcitedelim}%
+ \stepcounter{textcitecount}%
+ \usebibmacro{textcite}%
+ \savefield{namehash}{\cbx@lasthash}}}
+ {}
+ {}
+
+\DeclareCiteCommand{\textcite}[\cbx@textcite@init\cbx@textcite\footcite]
+ {\usebibmacro{textcite:init}%
+ \gdef\cbx@savedkeys{}%
+ \DeferNextCitekeyHook}
+ {\ifthenelse{\iffirstcitekey\AND\value{multicitetotal}>0}
+ {\protected@xappto\cbx@footcite@args{%
+ (\thefield{multiprenote})(\thefield{multipostnote})}}
+ {}%
+ \xappto\cbx@savedkeys{\thefield{entrykey},}%
+ \iffieldequals{namehash}{\cbx@lasthash}
+ {}
+ {\usebibmacro{textcite:count}%
+ \savefield{namehash}{\cbx@lasthash}}%
+ \ifnumequal{\value{citecount}}{\value{citetotal}}
+ {\protected@xappto\cbx@textcite@args{{\cbx@savedkeys}}%
+ \protected@xappto\cbx@footcite@args{%
+ [\thefield{prenote}][\thefield{postnote}]{\cbx@savedkeys}}%
+ \iflastcitekey
+ {\protected@xappto\cbx@textcite@args{\thefield{postpunct}}%
+ \protected@xappto\cbx@footcite@args{\nopunct}}
+ {}}
+ {}}
+ {}
+ {}
+
+% textcite has nested \DeclareCiteCommand definitions for textcite and we want to use
+% the normal textcite context
+\DeclareDelimcontextAlias{cbx@textcite}{textcite}
+
+\newrobustcmd{\cbx@textcite@init}[3]{%
+ \setcounter{textcitetotal}{0}%
+ \setcounter{textcitecount}{0}%
+ \setcounter{textcitemaxnames}{0}%
+ \def\cbx@textcite@args{#1}\def\cbx@footcite@args{#2}#3%
+ \cbx@textcite@args\empty\cbx@footcite@args\empty}
+
+\DeclareMultiCiteCommand{\cbx@textcites}{\cbx@textcite}{}
+\DeclareMultiCiteCommand{\textcites}
+ [\cbx@textcites@init\cbx@textcites\footcites]{\textcite}{}
+
+\let\cbx@textcites@init\cbx@textcite@init
+\pretocmd{\cbx@textcites@init}{%
+ \UseNextMultiCiteHook%
+ \AtNextMultiCite{%
+ \renewbibmacro{multiprenote}{}%
+ \renewbibmacro{multipostnote}{}}}{}{}
% ------------------------------------------------------------------
% CITE DRIVERS
% ------------------------------------------------------------------
\DeclareBibliographyDriver{cite:set}{%
+ \booltrue{bbx@inset}%
\ifciteseen
- {%
- \printnames{labelname}%
- \newunit%
- \printtext[bibhyperlink]{%
- \iffieldundef{shorttitle}
- {\printfield[citetitle]{title}}
- {\printfield[citetitle]{shorttitle}}}}
- {\booltrue{bbx@inset}%
- \entryset{}{}%
- \newunit\newblock
- \usebibmacro{setpageref}%
- \finentry
- \global\boolfalse{suppresspostnote}}}
+ {\let\abx@field@setkey\abx@field@entrykey
+ \let\ifciteseen\@firstoftwo}
+ {}%
+ \entryset{}{}%
+ \newunit\newblock
+ \printfield{postnote}%
+ \finentry
+ \global\booltrue{suppresspostnote}}
\DeclareBibliographyDriver{cite:ancienttext}{%
\usebibmacro{citeindex}%
@@ -227,7 +349,7 @@
\newunit
\ifciteseen
{}
- {\usebibmacro{byeditor+others}}%
+ {\usebibmacro{byauthor/byeditor+others/bytranslator+others}}%
\ifboolexpr{
test {\iffieldequalstr{entrysubtype}{ANRW}}
or
@@ -283,15 +405,31 @@
\usebibmacro{title}%
\ifciteseen
{}
- {\usebibmacro{shortjournal+issuetitle}%
+ {\newunit
+ \usebibmacro{byauthor}%
+ \newunit
+ \usebibmacro{bytranslator+others}%
+ \newunit
+ \usebibmacro{inissuetitle}%
+ \newunit
+ \printfield{version}%
+ \newunit
+ \printlist{organization}%
+ \newunit
+ \printfield{note}%
+ \newunit
+ \usebibmacro{shortjournal+issue}%
\usebibmacro{pages}%
\newunit
- \usebibmacro{releasedate}%
+ \printfield{addendum}%
+ \newunit
+ \usebibmacro{issn}%
\newunit
\usebibmacro{doi+eprint+url}}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{cite:book}{%
+ \clearfield{booktitle}%
\usebibmacro{citeindex}%
\usebibmacro{begentry}%
\iftoggle{blx@usefullcite}
@@ -301,24 +439,50 @@
\newunit
\usebibmacro{title}%
\ifciteseen
- {}
{\newunit
- \usebibmacro{byauthor}%
+ \usebibmacro{volume+part}}
+ {\usebibmacro{byauthor/byeditor+others/bytranslator+others}%
\newunit
- \usebibmacro{volumeof}%
+ \usebibmacro{chapter+pagesin}%
+ \usebibmacro{volume+partof}%
\usebibmacro{maintitle}%
\newunit
- \usebibmacro{bymaineditor+others}%
+ \usebibmacro{event+venue+date}%
\newunit
- \printfield{volumes}%
+ \usebibmacro{bymainauthor/bymaineditor+others/bymaintranslator+others}%
\newunit
\printfield{edition}%
\newunit
- \usebibmacro{shortseries+number}%
- \usebibmacro{parens+publisher+location+date}%
+ \printfield{volumes}%
+ \newunit
+ \ifentrytype{report}
+ {\printfield{type}%
+ \clearfield{type}%
+ \setunit*{\addspace}%
+ \printfield{number}}
+ {\usebibmacro{shortseries+number}}%
+ \newunit
+ \printfield{type}%
+ \newunit
+ \printfield{version}%
+ \newunit
+ \printfield{note}%
+ \iflistundef{institution}
+ {\usebibmacro{parens+publisher+location+date}}
+ {\setunit{\addspace}%
+ \printtext[parens]{\usebibmacro{institution+location+date}}}%
+ \newunit
+ \usebibmacro{ebook}%
+ \newunit
+ \printfield{addendum}%
+ \newunit
+ \usebibmacro{volume+part+pages}%
+ \newunit
+ \usebibmacro{isbn}%
+ \newunit
+ \usebibmacro{isrn}%
\newunit
\usebibmacro{doi+eprint+url}}%
- \usebibmacro{volume+part+nomaintitle}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{cite:suppbook}{%
@@ -330,30 +494,45 @@
\usebibmacro{author/editor+others/translator+others}%
\newunit
\ifciteseen
- {\printfield{type}}
- {\printfield{type}%
- \setunit{\addspace}%
- \usebibmacro{to}%
+ {\iffieldundef{type}
+ {\usebibmacro{title}}
+ {\printfield{type}}}
+ {\iffieldundef{type}
+ {\toggletrue{inentrytype}%
+ \usebibmacro{title}%
+ \setunit{\addspace}%
+ \usebibmacro{in}}
+ {\printfield{type}%
+ \usebibmacro{language}%
+ \setunit{\addspace}%
+ \usebibmacro{to}}%
\usebibmacro{booktitle}%
- \setunit*{\newunitpunct}%
- \usebibmacro{bybookauthor}%
- \setunit*{\newunitpunct}%
- \usebibmacro{bybookeditor+others}%
- \setunit*{\newunitpunct}%
- \usebibmacro{volumeof}%
- \usebibmacro{maintitle}%
+ \usebibmacro{bybookauthor/bybookeditor+others/bybooktranslator+others}%
+ \clearfield{booktitle}%
\newunit
- \usebibmacro{bymaineditor+others}%
+ \usebibmacro{chapterin}%
+ \usebibmacro{volume+partof}%
+ \usebibmacro{maintitle}%
\newunit
- \printfield{volumes}%
+ \usebibmacro{bymainauthor/bymaineditor+others/bymaintranslator+others}%
\newunit
\printfield{edition}%
\newunit
+ \printfield{volumes}%
+ \newunit
\usebibmacro{shortseries+number}%
+ \newunit
+ \printfield{note}%
\usebibmacro{parens+publisher+location+date}%
\newunit
+ \usebibmacro{ebook}%
+ \newunit
+ \printfield{addendum}%
+ \newunit
\usebibmacro{pages}%
\newunit
+ \usebibmacro{isbn}%
+ \newunit
\usebibmacro{doi+eprint+url}}%
\usebibmacro{finentry}}
@@ -368,37 +547,62 @@
\usebibmacro{title}%
\ifciteseen
{}
- {\printfield{volumes}%
+ {\usebibmacro{byauthor/byeditor+others/bytranslator+others}%
\newunit
\printfield{edition}%
\newunit
+ \printfield{volumes}%
+ \newunit
\usebibmacro{shortseries+number}%
+ \newunit
+ \printfield{note}%
\usebibmacro{parens+publisher+location+date}%
\newunit
+ \usebibmacro{ebook}%
+ \newunit
+ \printfield{addendum}%
+ \newunit
+ \usebibmacro{pages}%
+ \newunit
+ \usebibmacro{isbn}%
+ \newunit
\usebibmacro{doi+eprint+url}}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{cite:incommentary}{%
- \usebibmacro{citeindex}%
- \usebibmacro{begentry}%
- \iftoggle{blx@usefullcite}
- {}
- {\let\ifciteseen\@firstoftwo}%
\iffieldundef{volume}
{\usedriver{}{cite:incollection}}
- {\iffieldundef{xref}{}{\addskipentry{\thefield{xref}}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{begentry}%
+ \iftoggle{blx@usefullcite}
+ {}
+ {\let\ifciteseen\@firstoftwo}%
+ \iffieldundef{xref}{}{\addskipentry{\thefield{xref}}}%
\cbx@opt@citepages@omit
- \global\booltrue{suppresspostnote}%
\usebibmacro{author/translator+others}%
\newunit
- \usebibmacro{xrefshortmaintitle}%
- \newunit
- \usebibmacro{volume+pages}%
- \newunit
- \usebibmacro{doi+eprint+url}%
+ \ifciteseen
+ {\usebibmacro{xrefshortmaintitle}%
+ \iffieldundef{volume}
+ {}
+ {\setunit{\addspace}%
+ \printfield{volume}%
+ \setunit*{\addperiod}%
+ \printfield{part}%
+ \global\booltrue{usevolpostnotedelim}}}
+ {\printfield{note}%
+ \newunit
+ \usebibmacro{xrefshortmaintitle}%
+ \newunit
+ \usebibmacro{volume+pages}%
+ \newunit
+ \printfield{addendum}}%
\usebibmacro{finentry}}}
\DeclareBibliographyDriver{cite:incollection}{%
+ \ifentrytype{seminarpaper}
+ {}
+ {\toggletrue{inentrytype}}%
\usebibmacro{citeindex}%
\usebibmacro{begentry}%
\iftoggle{blx@usefullcite}
@@ -409,31 +613,43 @@
\usebibmacro{title}%
\ifciteseen
{}
- {\ifentrytype{bookinbook}
- {\newunit
- \usebibmacro{byeditor+others}}
- {}%
- \usebibmacro{in}%
- \usebibmacro{booktitle}%
- \setunit*{\newunitpunct}%
- \usebibmacro{bybookauthor}%
- \setunit*{\newunitpunct}%
- \usebibmacro{bybookeditor+others}%
- \setunit*{\newunitpunct}%
- \usebibmacro{volumeof}%
- \usebibmacro{maintitle}%
- \newunit
- \usebibmacro{bymaineditor+others}%
+ {\usebibmacro{byauthor/byeditor+others/bytranslator+others}%
\newunit
- \printfield{volumes}%
+ \usebibmacro{chapter+pagesin}%
+ \iffieldundef{booktitle}
+ {}
+ {\usebibmacro{booktitle}%
+ \newunit
+ \usebibmacro{event+venue+date}%
+ \newunit
+ \usebibmacro{bybookauthor/bybookeditor+others/bybooktranslator+others}%
+ \newunit}%
+ \usebibmacro{volume+partof}%
+ \iffieldundef{maintitle}
+ {}
+ {\usebibmacro{maintitle}%
+ \newunit
+ \usebibmacro{event+venue+date}%
+ \newunit
+ \usebibmacro{bymainauthor/bymaineditor+others/bymaintranslator+others}}%
\newunit
\printfield{edition}%
\newunit
+ \printfield{volumes}%
+ \newunit
\usebibmacro{shortseries+number}%
+ \newunit
+ \printfield{note}%
\usebibmacro{parens+publisher+location+date}%
\newunit
+ \usebibmacro{ebook}%
+ \newunit
+ \printfield{addendum}%
+ \newunit
\usebibmacro{volume+part+pages}%
\newunit
+ \usebibmacro{isbn}%
+ \newunit
\usebibmacro{doi+eprint+url}}%
\usebibmacro{finentry}}
@@ -446,14 +662,23 @@
\usebibmacro{author/translator+others}%
\newunit
\ifciteseen
- {\usebibmacro{xrefshortbooktitle+xrefshortmaintitle}%
- \usebibmacro{volume}}
+ {\usebibmacro{xrefshortmaintitle+xrefshortbooktitle}%
+ \iffieldundef{volume}
+ {}
+ {\setunit{\addspace}%
+ \printfield{volume}%
+ \setunit*{\addperiod}%
+ \printfield{part}%
+ \global\booltrue{usevolpostnotedelim}}}
{\usebibmacro{title}%
- \usebibmacro{xrefshortbooktitle+xrefshortmaintitle}%
+ \newunit
+ \printfield{note}%
+ \newunit
+ \usebibmacro{xrefshortmaintitle+xrefshortbooktitle}%
\newunit
\usebibmacro{volume+pages}%
\newunit
- \usebibmacro{doi+eprint+url}}%
+ \printfield{addendum}}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{cite:inreference}{%
@@ -472,12 +697,17 @@
{}
{\newunit
\global\booltrue{usevolpostnotedelim}%
- \printfield{volume}}}
- {\usebibmacro{xrefshortbooktitle+xrefshortmaintitle}%
+ \printfield{volume}%
+ \setunit*{\addperiod}%
+ \printfield{part}}}
+ {\newunit
+ \printfield{note}%
+ \newunit
+ \usebibmacro{xrefshortmaintitle+xrefshortbooktitle}%
\newunit
\usebibmacro{volume+pages}%
\newunit
- \usebibmacro{doi+eprint+url}}%
+ \printfield{addendum}}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{cite:review}{%
@@ -488,8 +718,16 @@
{\let\ifciteseen\@firstoftwo}%
\usebibmacro{author/translator+others}%
\newunit
- \usebibmacro{title}%
- \newunit
+ \iffieldundef{title}
+ {}
+ {\usebibmacro{title}%
+ \newunit
+ \ifciteseen
+ {}
+ {\usebibmacro{byauthor}%
+ \newunit
+ \usebibmacro{bytranslator+others}%
+ \newunit}}%
\usebibmacro{revdtitle}%
\newunit
\ifciteseen
@@ -497,40 +735,20 @@
\printtext[parens]{\usebibmacro{revdauthor/revdeditor}}}
{\usebibmacro{revdauthor/revdeditor}%
\newunit
- \usebibmacro{shortjournal+issuetitle}%
- \usebibmacro{pages}%
- \renewcommand*{\newunitpunct}{\addperiod\space}%
- \usebibmacro{doi+eprint+url}}%
- \usebibmacro{finentry}}
-
-\DeclareBibliographyDriver{cite:seminarpaper}{%
- \usebibmacro{citeindex}%
- \usebibmacro{begentry}%
- \iftoggle{blx@usefullcite}
- {}
- {\let\ifciteseen\@firstoftwo}%
- \usebibmacro{author/editor+others/translator+others}%
- \newunit
- \usebibmacro{title}%
- \ifciteseen
- {}
- {\usebibmacro{booktitle}%
- \newunit
- \usebibmacro{bybookeditor+others}%
+ \usebibmacro{inissuetitle}%
\newunit
- \usebibmacro{volumeof}%
- \usebibmacro{maintitle}%
+ \printfield{version}%
\newunit
- \usebibmacro{bymaineditor+others}%
+ \printlist{organization}%
\newunit
- \printfield{volumes}%
+ \printfield{note}%
\newunit
- \printfield{edition}%
+ \usebibmacro{shortjournal+issue}%
+ \usebibmacro{pages}%
\newunit
- \usebibmacro{shortseries+number}%
- \usebibmacro{parens+publisher+location+date}%
+ \printfield{addendum}%
\newunit
- \usebibmacro{volume+part+pages}%
+ \usebibmacro{issn}%
\newunit
\usebibmacro{doi+eprint+url}}%
\usebibmacro{finentry}}
@@ -546,13 +764,25 @@
\usebibmacro{title}%
\ifciteseen
{}
- {\setunit{\addspace}%
+ {\newunit
+ \printfield{chapter}%
+ \newunit
+ \printfield{note}%
+ \setunit{\addspace}%
\printtext[parens]{%
\renewcommand*{\newunitpunct}{\addsemicolon\space}%
\printfield{type}%
\setunit{\addcomma\addspace}%
\usebibmacro{institution+location+date}}%
\newunit
+ \usebibmacro{ebook}%
+ \newunit
+ \printfield{addendum}%
+ \newunit
+ \usebibmacro{pages}%
+ \newunit
+ \printfield{isbn}%
+ \newunit
\usebibmacro{doi+eprint+url}}%
\usebibmacro{finentry}}
@@ -567,22 +797,22 @@
\usebibmacro{title}%
\ifciteseen
{}
- {\printfield{note}%
+ {\usebibmacro{byauthor/byeditor+others/bytranslator+others}%
\newunit
- \usebibmacro{byauthor}%
+ \printfield{type}%
+ \newunit
+ \printfield{version}%
\newunit
- \usebibmacro{byeditor+others}%
+ \printfield{note}%
+ \setunit{\addspace}%
+ \printtext[parens]{%
+ \usebibmacro{publisher+location+date}}%
\newunit
- \printfield{howpublished}%
+ \usebibmacro{ebook}%
\newunit
- \usebibmacro{shortseries+number}%
+ \printfield{addendum}%
\newunit
- \iffieldundef{journaltitle}
- {\setunit{\addspace}%
- \printtext[parens]{%
- \usebibmacro{publisher+location+date}}}
- {\usebibmacro{shortjournal+issuetitle}%
- \usebibmacro{pages}}%
+ \usebibmacro{pages}%
\newunit
\usebibmacro{doi+eprint+url}}%
\usebibmacro{finentry}}
@@ -598,16 +828,75 @@
\usebibmacro{title}%
\ifciteseen
{}
- {\setunit{\addspace}%
+ {\newunit
+ \printfield{note}%
+ \setunit{\addspace}%
\printtext[parens]{%
\usebibmacro{eventtitle}%
\newunit
- \printfield{note}%
- \newunit
\printfield{organization}%
\newunit
\usebibmacro{venue+eventdate}}%
\newunit
+ \printfield{addendum}%
+ \newunit
+ \usebibmacro{doi+eprint+url}}%
+ \usebibmacro{finentry}}
+
+\DeclareBibliographyDriver{cite:periodical}{%
+ \usebibmacro{citeindex}%
+ \usebibmacro{begentry}%
+ \iftoggle{blx@usefullcite}
+ {}
+ {\let\ifciteseen\@firtoftwo}%
+ \usebibmacro{editor+others}%
+ \newunit
+ \ifciteseen
+ {\usebibmacro{shorttitle}}
+ {\usebibmacro{issuetitle}%
+ \usebibmacro{language}%
+ \newunit
+ \printfield{note}%
+ \newunit
+ \usebibmacro{shortjournal+issue}%
+ \usebibmacro{pages}%
+ \newunit
+ \printfield{addendum}%
+ \newunit
+ \usebibmacro{issn}%
+ \newunit
+ \usebibmacro{doi+eprint+url}}%
+ \usebibmacro{finentry}}
+
+\DeclareBibliographyDriver{cite:patent}{%
+ \usebibmacro{citeindex}%
+ \usebibmacro{begentry}%
+ \iftoggle{blx@usefullcite}
+ {}
+ {\let\ifciteseen\@firtoftwo}%
+ \usebibmacro{author+holder}%
+ \newunit
+ \usebibmacro{title}%
+ \ifciteseen
+ {}
+ {\newunit
+ \printfield{note}%
+ \setunit{\addspace}%
+ \printtext[parens]{%
+ \printfield{type}%
+ \setunit*{\addspace}%
+ \printfield{number}%
+ \iflistundef{location}
+ {}
+ {\setunit*{\addspace}%
+ \printtext[parens]{\printlist{location}}}%
+ \newunit
+ \printfield{version}%
+ \newunit
+ \usebibmacro{patentdate}%
+ \newunit
+ \printfield{addendum}}%
+ \newunit
\usebibmacro{doi+eprint+url}}%
\usebibmacro{finentry}}