summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex-contrib/uni-wtal-lin/uni-wtal-lin.bbx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/biblatex-contrib/uni-wtal-lin/uni-wtal-lin.bbx
Initial commit
Diffstat (limited to 'macros/latex/contrib/biblatex-contrib/uni-wtal-lin/uni-wtal-lin.bbx')
-rw-r--r--macros/latex/contrib/biblatex-contrib/uni-wtal-lin/uni-wtal-lin.bbx429
1 files changed, 429 insertions, 0 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/uni-wtal-lin/uni-wtal-lin.bbx b/macros/latex/contrib/biblatex-contrib/uni-wtal-lin/uni-wtal-lin.bbx
new file mode 100644
index 0000000000..12646601d2
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/uni-wtal-lin/uni-wtal-lin.bbx
@@ -0,0 +1,429 @@
+% uni-wtal-lin.bbx, v 0.2 2013-08-09, Carsten A. Dahlmann (Ace@Dahlmann.net)
+% based on authoryear
+
+%% requires authoryear
+\RequireBibliographyStyle{authoryear}
+
+%% Book
+\DeclareBibliographyDriver{book}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{author/editor+others/translator+others}%
+ \setunit{\labelnamepunct}\newblock
+ \usebibmacro{maintitle+title}%
+ \newunit
+ \iffieldundef{maintitle}
+ {\printfield{volume}%
+ \printfield{part}}
+ {}%
+ \newunit
+ \newunit\newblock
+ \usebibmacro{byeditor+others}%
+ \newunit\newblock
+ \printfield{note}%
+ \newunit\newblock
+ \usebibmacro{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{\bibpagespunct}\newblock
+ \newunit\newblock
+ \iffieldundef{series}
+ {}%
+ {\usebibmacro{series+number}}%
+ \usebibmacro{finentry}}
+
+%% InBook
+\DeclareBibliographyDriver{inbook}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{author/translator+others}%
+ \setunit{\labelnamepunct}\newblock
+ \usebibmacro{title}%
+ \newunit
+ \printlist{language}%
+ \newunit\newblock
+ \usebibmacro{byauthor}%
+ \newunit\newblock
+ \usebibmacro{in:}%
+ \usebibmacro{bybookauthor}%
+ \setunit{\titleaddonpunct}\newblock
+ \usebibmacro{maintitle+booktitle}%
+ \newunit\newblock
+ \iffieldundef{maintitle}
+ {\printfield{volume}%
+ \printfield{part}}
+ {}%
+ \newunit\newblock
+ \usebibmacro{byeditor+others}%
+ \newunit\newblock
+ \printfield{note}%
+ \newunit\newblock
+ \usebibmacro{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{\bibpagespunct}
+ \newunit\newblock
+ \iffieldundef{series}
+ {}%
+ {\usebibmacro{series+number}}%
+ \usebibmacro{finentry}}
+
+%% Collection
+\DeclareBibliographyDriver{collection}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{editor+others}%
+ \setunit{\labelnamepunct}\newblock
+ \usebibmacro{maintitle+title}%
+ \newunit
+ \printlist{language}%
+ \newunit\newblock
+ \usebibmacro{byeditor+others}%
+ \newunit\newblock
+ \iffieldundef{maintitle}
+ {\printfield{volume}%
+ \printfield{part}}
+ {}%
+ \newunit\newblock
+ \printfield{note}%
+ \newunit\newblock
+ \usebibmacro{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{\bibpagespunct}\newblock
+ \newunit\newblock
+ \iffieldundef{series}
+ {}%
+ {\usebibmacro{series+number}}%
+ \usebibmacro{finentry}}
+
+%% InCollection
+\DeclareBibliographyDriver{incollection}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{author/translator+others}%
+ \setunit{\labelnamepunct}\newblock
+ \usebibmacro{title}%
+ \newunit
+ \printlist{language}%
+ \newunit\newblock
+ \usebibmacro{byauthor}%
+ \newunit\newblock
+ \usebibmacro{in:}%
+ \usebibmacro{byeditor+others}
+ \setunit{\titleaddonpunct}\newblock
+ \usebibmacro{maintitle+booktitle}%
+ \newunit
+ \iffieldundef{maintitle}
+ {\printfield{volume}%
+ \printfield{part}}
+ {}%
+ \newunit\newblock
+ \printfield{note}%
+ \newunit\newblock
+ \usebibmacro{publisher+location+date}%
+ \newunit\newblock
+ \usebibmacro{chapter+pages}%
+ \newunit\newblock
+ \usebibmacro{doi+eprint+url}%
+ \newunit\newblock
+ \usebibmacro{addendum+pubstate}%
+ \setunit{\bibpagerefpunct}\newblock
+ \usebibmacro{pageref}%
+ \setunit{\bibpagespunct}
+ \newunit\newblock
+ \iffieldundef{series}
+ {}%
+ {\usebibmacro{series+number}}
+ \usebibmacro{finentry}}
+
+%% Article
+\DeclareBibliographyDriver{article}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{author/translator+others}%
+ \setunit{\labelnamepunct}\newblock
+ \usebibmacro{title}%
+ \newunit
+ \printlist{language}%
+ \newunit\newblock
+ \usebibmacro{byauthor}%
+ \newunit\newblock
+ \usebibmacro{bytranslator+others}%
+ \newunit\newblock
+ \printfield{version}%
+ \newunit\newblock
+ \usebibmacro{journal+issuetitle}%
+ \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}%
+ \usebibmacro{finentry}}
+
+%% Unpublished
+\DeclareBibliographyDriver{unpublished}{%
+ \usebibmacro{bibindex}%
+ \usebibmacro{begentry}%
+ \usebibmacro{author}%
+ \setunit{\labelnamepunct}\newblock
+ \usebibmacro{title}%
+ \newunit
+ \printlist{language}%
+ \newunit\newblock
+ \usebibmacro{byauthor}%
+ \newunit\newblock
+ \printfield{howpublished}%
+ \newunit\newblock
+ \printfield{note}%
+ \newunit\newblock
+ \iftoggle{bbx:url}
+ {\usebibmacro{url+urldate}}
+ {}%
+ \newunit\newblock
+ \usebibmacro{addendum+pubstate}%
+ \setunit{\bibpagespunct}%
+ \usebibmacro{location+date}%
+ \setunit{\bibpagerefpunct}\newblock
+ \usebibmacro{pageref}%
+ \newunit\newblock
+ \usebibmacro{finentry}}
+
+
+%% use option edsuper for turning superscripted edition on/off
+
+\newbool{bbx:editionstring}
+\newbool{bbx:edsuper}
+
+\DeclareBibliographyOption{editionstring}[true]{%
+ \csuse{bool#1}{bbx:editionstring}}
+\DeclareBibliographyOption{edsuper}[true]{%
+ \csuse{bool#1}{bbx:edsuper}}
+
+%% DeclareFieldFormat edition
+\DeclareFieldFormat{edition}{%
+ \ifinteger{#1}
+ {\mkbibordedition{#1}~\bibstring{edition}}
+ {\ifbool{bbx:editionstring}
+ {#1\addspace\bibstring{edition}\isdot}
+ {#1\isdot}}}
+
+%% DeclareFieldFormat edition:super
+\DeclareFieldFormat{edition:super}{%
+ \ifinteger{#1}
+ {\mkbibsuperscript{#1}}
+ {\blxdw@warning@noline{%
+ The 'edition' field of entry\MessageBreak
+ '\abx@field@entrykey' is not an integer.\MessageBreak
+ The edition will not be printed as\MessageBreak
+ superscript. Instead, the 'edition'\MessageBreak
+ field is printed completely}}}
+
+%% Test, if field is integer
+\newcommand{\bbx@iffieldinteger}[1]{%
+ \iffieldundef{#1}
+ {\@secondoftwo}
+ {\edef\@tempa{\strfield{#1}}%
+ \expandafter\ifinteger\expandafter{\@tempa}}}
+
+%% for position of edition at the end:
+%% if option edsuper true and
+%%%% if field integer, do nothing
+%%%% else print edition
+%% else print edition
+%%
+\renewbibmacro*{publisher+location+date}{%
+ \printlist{location}%
+ \iflistundef{publisher}
+ {\setunit*{\addcomma\space}}
+ {\setunit*{\addcolon\space}}%
+ \printlist{publisher}%
+ \setunit*{\addcomma\space}%
+ \usebibmacro{date}%
+ \ifbool{bbx:edsuper}
+ {\bbx@iffieldinteger{edition}
+ {}%
+ {\printfield{edition}%
+ \newunit}}%
+ {\printfield{edition}%
+ \newunit}}
+
+%% for position of edition (superscripted) at the beginning:
+%% if option edsuper true and
+%%%% if field integer, print edition superscripted
+%%%% else do nothing
+%% else do nothing
+%%
+\renewbibmacro*{date+extrayear}{%
+ \iffieldundef{year}
+ {}%
+ {\printtext[parens]{%
+ \printfield{issue}%
+ \setunit*{\addspace}%
+ {\printdateextra}%
+ {\ifbool{bbx:edsuper}%
+ {\bbx@iffieldinteger{edition}%
+ {\printfield[edition:super]{edition}}%
+ {}}%
+ {}}%
+ }}}%
+
+
+%% put series and number into parenthesis
+\renewbibmacro*{series+number}{%
+ \printtext[parens]{=\addhpthinspace\printfield{series}%
+ \setunit*{\addspace}%
+ \printfield{number}\nopunct%
+ }\setunit*{\addspace}\nopunct}
+
+
+%% no comma before (eds.)
+\renewbibmacro*{bbx:editor}[1]{%
+ \ifboolexpr{
+ test \ifuseeditor
+ and
+ not test {\ifnameundef{editor}}
+ }
+ {\usebibmacro{bbx:dashcheck}
+ {\bibnamedash}
+ {\printnames{editor}%
+ \setunit{\addspace}%
+ \usebibmacro{bbx:savehash}}%
+ \usebibmacro{#1}%
+ \clearname{editor}%
+ \setunit{\addspace}}%
+ {\global\undef\bbx@lasthash
+ \usebibmacro{labeltitle}%
+ \setunit*{\addspace}}%
+ \usebibmacro{date+extrayear}}%
+% \usebibmacro{year}}%
+
+
+%% byeditor: first-last (eds.)
+\renewbibmacro*{byeditor+others}{%
+ \ifnameundef{editor}
+ {}
+ {\printnames[byeditor]{editor}%
+ \setunit{\addspace}%
+ \usebibmacro{editorstrg}%
+ \clearname{editor}%
+ \newunit}%
+ \usebibmacro{byeditorx}%
+ \usebibmacro{bytranslator+others}}
+
+
+%% deactivate series for journal
+\renewbibmacro*{journal+issuetitle}{%
+ \usebibmacro{journal}%
+ \setunit*{\addspace}%
+ \usebibmacro{volume+number+eid}%
+ \setunit{\addspace}%
+ \usebibmacro{issue+date}%
+ \setunit{\addcolon\space}%
+ \usebibmacro{issue}%
+ \newunit}
+
+
+%% renew volume+number: colon as delimiter
+\newbibmacro*{volume+number+eid}{%
+ \printfield{volume}%
+ \setunit*{\addcolon\space}%
+ \printfield{number}%
+ \setunit{\addcomma\space}%
+ \printfield{eid}}
+
+
+%% listing of names: name/name/final name
+\renewcommand{\multinamedelim}[0]{\addslash}%
+\renewcommand*{\finalnamedelim}[0]{\addslash}%
+
+
+%% change of german abbreviations
+\DefineBibliographyStrings{german}{%
+ and={\&},
+ editor={\addspace\mkbibparens {Hg\adddot}},
+ editors={\addspace\mkbibparens {Hgg\adddot}},
+ byeditor={Hg\addcolon\thinspace},
+ andothers={et\addabbrvspace al\adddot},
+ }
+
+%% change of english abbreviations
+\DefineBibliographyStrings{english}{%
+ and={\&},
+ editor={\addspace\mkbibparens {ed\adddot}},
+ editors={\addspace\mkbibparens {eds\adddot}},
+ byeditor={ed\addcolon\thinspace},
+ andothers={et\addabbrvspace al\adddot},
+ }
+
+
+%% no quotation marks for article, inbook, ...
+\DeclareFieldFormat
+ [article,inbook,incollection,inproceedings,patent,thesis,unpublished]
+ {title}{#1\isdot}
+
+%% colon after the word "in"
+\renewbibmacro*{in:}{%
+ \printtext{%
+ \bibstring{in}\addcolon\space}}
+
+%% colon for "editor:" after "in:"
+\newcommand*{\titleaddonpunct}{\addcolon\space}
+
+%% no "visited:" before urldate
+\DeclareFieldFormat{urldate}{\mkbibparens{#1}}
+
+%% vertical spacing between entrys
+\setlength{\bibitemsep}{0.8\baselineskip}
+
+
+%% load style defaults
+\ExecuteBibliographyOptions{%
+maxnames=2,
+maxbibnames=99,
+dashed=false,
+edsuper=true,
+}%
+
+\endinput