diff options
Diffstat (limited to 'tex/src/preamble-biblatex.tex')
-rw-r--r-- | tex/src/preamble-biblatex.tex | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/tex/src/preamble-biblatex.tex b/tex/src/preamble-biblatex.tex new file mode 100644 index 0000000..bd99502 --- /dev/null +++ b/tex/src/preamble-biblatex.tex @@ -0,0 +1,116 @@ +%% Biblatex settings. +%% +%% Settings necessary to make the bibliography with Biblatex. Keeping all +%% BibLaTeX settings in a separate preamble was done in the spirit of +%% modularity to 1) easily managable, 2) If a similar BibLaTeX +%% configuration is necessary in another LaTeX compilation, this file can +%% just be copied there and used. +%% +%% USAGE: +%% - `tex/src/references.tex': the file containing Bibtex source of each +%% reference. The file suffix doesn't have to be `.bib'. This naming +%% helps in clearly identifying the files and avoiding places that +%% complain about `.bib' files. + + + + + +%% To break up highlighted text (for example texttt when some it is on the +%% line break) and also to no underline emphasized words (like journal +%% titles in the references). +\usepackage[normalem]{ulem} + + + + + +% Basic BibLaTeX settings +\usepackage[ + doi=false, + url=false, + dashed=false, + eprint=false, + maxbibnames=4, + minbibnames=1, + hyperref=true, + maxcitenames=2, + mincitenames=1, + style=authoryear, + uniquelist=false, + backend=biber,natbib]{biblatex} +\DeclareFieldFormat[article]{pages}{#1} +\DeclareFieldFormat{pages}{\mkfirstpage[{\mkpageprefix[bookpagination]}]{#1}} +\addbibresource{tex/src/references.tex} +\renewbibmacro{in:}{} +\renewcommand*{\bibfont}{\footnotesize} +\DefineBibliographyStrings{english}{references = {References}} + +%% Include the adsurl field key into those that are recognized: +\DeclareSourcemap{ + \maps[datatype=bibtex]{ + \map{ + \step[fieldsource=adsurl,fieldtarget=iswc] + \step[fieldsource=gbkurl,fieldtarget=iswc] + } + } +} + +%% Set the color of the doi link to mymg (magenta) and the ads links +%% to mypurp (or purple): +\definecolor{mypurp}{cmyk}{0.75,1,0,0} +\newcommand{\doihref}[2]{\href{#1}{\color{magenta}{#2}}} +\newcommand{\adshref}[2]{\href{#1}{\color{mypurp}{#2}}} +\newcommand{\blackhref}[2]{\href{#1}{\color{black}{#2}}} + +%% Define a format for the printtext commands in +%% DeclareBibliographyDriver to make links for the doi, ads link and +%% arxiv link: +\DeclareFieldFormat{doilink}{ + \iffieldundef{doi}{#1}{\doihref{http://dx.doi.org/\thefield{doi}}{#1}}} +\DeclareFieldFormat{adslink}{ + \iffieldundef{iswc}{#1}{\adshref{\thefield{iswc}}{#1}}} +\DeclareFieldFormat{arxivlink}{ + \iffieldundef{eprint}{#1}{\href{http://arxiv.org/abs/\thefield{eprint}}{#1}}} + +\DeclareListFormat{doiforbook}{ + \iffieldundef{doi}{#1}{\doihref{http://dx.doi.org/\thefield{doi}}{#1}}} +\DeclareFieldFormat{googlebookslink}{ + \iffieldundef{iswc}{#1}{\adshref{\thefield{iswc}}{#1}}} + +%% Set the formatting to make the last three values into the +%% appropriate link. Note that the % signs are necessary. Without +%% them, the items will be indented. +\DeclareBibliographyDriver{article}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \newunit% + \ifdefined\makethesis\printtext{\usebibmacro{title}}\fi% + \newunit% + \printtext[doilink]{\usebibmacro{journal}}% + \addcomma% + \printtext[adslink]{\printfield{volume}}% + \addcomma% + \printtext[arxivlink]{\printfield{pages}}% + \addperiod% +} + +\DeclareBibliographyDriver{book}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \newunit% + \printtext{\usebibmacro{title}}% + \addperiod% + \addspace% + \printlist[doiforbook]{publisher}% + \addcomma% + \addspace% + \printfield[googlebookslink]{edition}% + \printtext{ ed.}% + \addperiod% +} + +%% In order to have et al. instead of et al.,: +\renewcommand*{\nameyeardelim}{\addspace} |