von Gast » So 7. Apr 2019, 14:32
Leider unterstützt iso-authoryear die mergedate-Option nicht, das müssen wir also selbst basteln. Außerdem sind einige relevante Makros in der veralteten biblatex-Version von Overleaf noch nicht erhältlich, die Kopie dieser Makros ist im Code markiert und sollte bei neueren Systemen unbedingt weggelassen werden.
\documentclass[ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=iso-authoryear, date=edtf, labeldate=year, maxbibnames=3, shortnumeration]{biblatex}
\DeclareNameAlias{default}{given-family}
\DeclareNameAlias{sortname}{family-given/given-family}
\DeclareNameAlias{author}{sortname}
\DeclareNameAlias{editor}{sortname}
\DeclareNameAlias{translator}{sortname}
\DeclareDelimFormat{multinamedelim}{\addcomma\space}
\DeclareDelimFormat{finalnamedelim}{%
\ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
\addspace\bibstring{and}\space}
\DeclareNameAlias[incollection]{editor}{default}
\makeatletter
\renewbibmacro*{bbx:editor}[1]{%
\ifboolexpr{
test \ifuseeditor
and
not test {\ifnameundef{editor}}
}
{\usebibmacro{bbx:savehash}%
\printnames{editor}%
\setunit{\addcomma\space}%
\usebibmacro{#1}%
\clearname{editor}}
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}}}%
\makeatother
%%% EMULATION RELEVANTER BEFEHLE
%%% NUR FÜR VERALTETE SYSTEME WIE BEI Overleaf
%%% BEI NEUEREN SYSTEMEN IST DIESER BLOCK ZU ENTFERNEN
\makeatletter
\def\blx@imc@iflabeldateisdate{%
\ifboolexpr{%
togl {blx@labeldateparts}
and not test {\iffieldundef{labeldatesource}}
and
(test {\iffieldequalstr{labeldatesource}{}}
or test {\iffieldequalstr{labeldatesource}{year}})}}
\def\blx@imc@ifdatehasyearonlyprecision#1{%
\ifboolexpr{not test {\iffieldundef{#1year}}
and (test {\ifcsstring{blx@dateformat@#1date}{year}}
or (test {\iffieldundef{#1month}}
and test {\iffieldundef{#1season}}))}}
\def\blx@imc@ifdatehastime#1{%
\ifboolexpr{togl {blx@#1dateusetime}
and not test {\iffieldundef{#1hour}}}}
\def\blx@imc@ifdateshavedifferentprecision#1#2{%
\ifboolexpr{ (test {\ifdatehasyearonlyprecision{#1}}
and not test {\ifdatehasyearonlyprecision{#2}})
or (not test {\ifdatehasyearonlyprecision{#1}}
and test {\ifdatehasyearonlyprecision{#2}})
or (test {\ifdatehastime{#1}}
and not test {\ifdatehastime{#2}})
or (not test {\ifdatehastime{#1}}
and test {\ifdatehastime{#2}})}}
\def\blx@imc@ifdateyearsequal#1#2{%
\ifboolexpr{ test {\iffieldsequal{#1year}{#2year}}
and test {\iffieldsequal{#1dateera}{#2dateera}}}}
\blx@regimcs{%
\iflabeldateisdate \ifdatehasyearonlyprecision \ifdatehastime
\ifdateshavedifferentprecision
\ifdateyearsequal}
\makeatother
%%% EMULATION ENDE
\renewbibmacro*{date}{%
\ifboolexpr{
test {\iflabeldateisdate}
and
not test {\ifdateshavedifferentprecision{label}{}}
}%
{}
{\printdate}}
\DefineBibliographyStrings{german}{%
andothers = {und andere},
urlseen = {Zugriff am:},
urlfrom = {Verfügbar unter:},
}
\DeclareFieldFormat*{pages}{\mkmlpageprefix[bookpagination]{#1}}
\renewcommand{\finentrypunct}{}
\urlstyle{same}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{bigdata,
author = {Schaffry, Andreas},
date = {2013-10-10},
title = {Wohin gehören Big-Data-Produkte?},
journal = {CIO},
url = {http://www.cio.de/knowledgecenter/bi/2932511/index.html},
urldate = {2013-10-11},
}
@electronic{steffen2014grundlagen,
title = {Grundlagen der höheren Informatik},
author = {Steffen, Bernhard and Rüthing, Oliver and Isberner, Malte},
year = {2014},
publisher = {Springer},
location = {Berlin},
urldate = {2015-05-02},
doi = {10.1007/978-3-642-40146-6},
isbn = {978-3-8085-1726-0},
}
@article{optimizing,
author = {Zohaib, Seyed and Aloul, Fadi and Sagahyroon, Assim
and El-Hajj, Wassim},
year = {2013},
title = {Optimizing complex cluster formation in MANETs
using SAT/ILP techniques},
journal = {IEEE Sensors Journal},
number = {6},
pages = {2400-2412},
%note = {An optional note},
volume = {13},
ISSN = {1530-4374},
doi = {10.1109/JSEN.2013.2254234},
urldate = {2014-11-04},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\cite{bigdata,steffen2014grundlagen,optimizing}
\printbibliography
\end{document}
Leider unterstützt [tt]iso-authoryear[/tt] die [tt]mergedate[/tt]-Option nicht, das müssen wir also selbst basteln. Außerdem sind einige relevante Makros in der veralteten [tt]biblatex[/tt]-Version von Overleaf noch nicht erhältlich, die Kopie dieser Makros ist im Code markiert und sollte bei neueren Systemen unbedingt weggelassen werden.
[code]\documentclass[ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=iso-authoryear, date=edtf, labeldate=year, maxbibnames=3, shortnumeration]{biblatex}
\DeclareNameAlias{default}{given-family}
\DeclareNameAlias{sortname}{family-given/given-family}
\DeclareNameAlias{author}{sortname}
\DeclareNameAlias{editor}{sortname}
\DeclareNameAlias{translator}{sortname}
\DeclareDelimFormat{multinamedelim}{\addcomma\space}
\DeclareDelimFormat{finalnamedelim}{%
\ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
\addspace\bibstring{and}\space}
\DeclareNameAlias[incollection]{editor}{default}
\makeatletter
\renewbibmacro*{bbx:editor}[1]{%
\ifboolexpr{
test \ifuseeditor
and
not test {\ifnameundef{editor}}
}
{\usebibmacro{bbx:savehash}%
\printnames{editor}%
\setunit{\addcomma\space}%
\usebibmacro{#1}%
\clearname{editor}}
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}}}%
\makeatother
%%% EMULATION RELEVANTER BEFEHLE
%%% NUR FÜR VERALTETE SYSTEME WIE BEI Overleaf
%%% BEI NEUEREN SYSTEMEN IST DIESER BLOCK ZU ENTFERNEN
\makeatletter
\def\blx@imc@iflabeldateisdate{%
\ifboolexpr{%
togl {blx@labeldateparts}
and not test {\iffieldundef{labeldatesource}}
and
(test {\iffieldequalstr{labeldatesource}{}}
or test {\iffieldequalstr{labeldatesource}{year}})}}
\def\blx@imc@ifdatehasyearonlyprecision#1{%
\ifboolexpr{not test {\iffieldundef{#1year}}
and (test {\ifcsstring{blx@dateformat@#1date}{year}}
or (test {\iffieldundef{#1month}}
and test {\iffieldundef{#1season}}))}}
\def\blx@imc@ifdatehastime#1{%
\ifboolexpr{togl {blx@#1dateusetime}
and not test {\iffieldundef{#1hour}}}}
\def\blx@imc@ifdateshavedifferentprecision#1#2{%
\ifboolexpr{ (test {\ifdatehasyearonlyprecision{#1}}
and not test {\ifdatehasyearonlyprecision{#2}})
or (not test {\ifdatehasyearonlyprecision{#1}}
and test {\ifdatehasyearonlyprecision{#2}})
or (test {\ifdatehastime{#1}}
and not test {\ifdatehastime{#2}})
or (not test {\ifdatehastime{#1}}
and test {\ifdatehastime{#2}})}}
\def\blx@imc@ifdateyearsequal#1#2{%
\ifboolexpr{ test {\iffieldsequal{#1year}{#2year}}
and test {\iffieldsequal{#1dateera}{#2dateera}}}}
\blx@regimcs{%
\iflabeldateisdate \ifdatehasyearonlyprecision \ifdatehastime
\ifdateshavedifferentprecision
\ifdateyearsequal}
\makeatother
%%% EMULATION ENDE
\renewbibmacro*{date}{%
\ifboolexpr{
test {\iflabeldateisdate}
and
not test {\ifdateshavedifferentprecision{label}{}}
}%
{}
{\printdate}}
\DefineBibliographyStrings{german}{%
andothers = {und andere},
urlseen = {Zugriff am:},
urlfrom = {Verfügbar unter:},
}
\DeclareFieldFormat*{pages}{\mkmlpageprefix[bookpagination]{#1}}
\renewcommand{\finentrypunct}{}
\urlstyle{same}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{bigdata,
author = {Schaffry, Andreas},
date = {2013-10-10},
title = {Wohin gehören Big-Data-Produkte?},
journal = {CIO},
url = {http://www.cio.de/knowledgecenter/bi/2932511/index.html},
urldate = {2013-10-11},
}
@electronic{steffen2014grundlagen,
title = {Grundlagen der höheren Informatik},
author = {Steffen, Bernhard and Rüthing, Oliver and Isberner, Malte},
year = {2014},
publisher = {Springer},
location = {Berlin},
urldate = {2015-05-02},
doi = {10.1007/978-3-642-40146-6},
isbn = {978-3-8085-1726-0},
}
@article{optimizing,
author = {Zohaib, Seyed and Aloul, Fadi and Sagahyroon, Assim
and El-Hajj, Wassim},
year = {2013},
title = {Optimizing complex cluster formation in MANETs
using SAT/ILP techniques},
journal = {IEEE Sensors Journal},
number = {6},
pages = {2400-2412},
%note = {An optional note},
volume = {13},
ISSN = {1530-4374},
doi = {10.1109/JSEN.2013.2254234},
urldate = {2014-11-04},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\cite{bigdata,steffen2014grundlagen,optimizing}
\printbibliography
\end{document}[/code]