Nach der Aktualisierung von LaTex und Biber laufen meine LaTex-Datein nicht mehr korrekt durch. Die Ursache dafür ist, dass es eine neue Syntax für DeclareNameFormat gibt (http://www.texdev.net/2016/03/13/biblatex-a-new-syntax-for-declarenameformat/). Bisher sah meine Syntaxdatei für den Zitationsstil wie folgt aus: Öffne in Overleaf
\RequirePackage{filecontents} \begin{filecontents*} @ONLINE{website, TITLE = {Titel der Website}, HOWPUBLISHED = {Website}, URL = {http://www.musterseite.de}, URLDATE = {2017-07-11}, } @book{a, title = {Bsp. Titel}, date = {2012}, author = {Mustermax, Hans}, location = {Berlin}, publisher = {Musterverlag}, } @article{b, title = {Musterarticle}, pages = {{116--121}}, number = {39}, journaltitle = {Musterjurnal}, author = {Musterautor, Hans and Peter, Lustig and Schulz, Mario and Maier, Marie}, date = {2012}, } \end{filecontents*} \documentclass [12pt,a4paper]{article} \usepackage{cmap} \usepackage[utf8]{inputenc} \usepackage[ngerman]{babel} %BIBLATEX \usepackage[style=authoryear-icomp,backend=biber,url=false,isbn=false,maxnames=2,maxbibnames=8,minbibnames=8]{biblatex} \DeclareFieldFormat{pages}{#1} \DeclareFieldFormat*{title}{\textit{#1}} \DeclareFieldFormat*{citetitle}{\textit{#1}} \DeclareFieldFormat*{journaltitle}{\textit{#1}} \DeclareFieldFormat*{booktitle}{\textit{#1}} \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{editor} \setunit{\addcolon\space} \usebibmacro{maintitle+booktitle} \newunit\newblock \printfield{edition} \newunit \iffieldundef{maintitle} {\printfield{volume} \printfield{part}} {} \newunit \printfield{volumes} \newunit\newblock \usebibmacro{series+number} \newunit\newblock \newunit\newblock \usebibmacro{chapter+pages} \newunit\newblock \usebibmacro{publisher+location+date} \newunit\newblock \newunit\newblock \usebibmacro{doi+eprint+url} \newunit\newblock \usebibmacro{addendum+pubstate} \setunit{\bibpagerefpunct}\newblock \usebibmacro{finentry} } \renewbibmacro*{editor}{ \ifnameundef{editor} {} {\printnames{editor} \usebibmacro{editorstrg} \clearname{editor}}} \renewbibmacro*{editorstrg}{ \iffieldundef{editortype} {\ifboolexpr{ test {\ifnumgreater{\value{editor}}{1}} or test {\ifandothers{editor}} } {\addspace\mkbibparens{\bibstring{editors}}} {\addspace\mkbibparens{\bibstring{editor}}}} {\ifboolexpr{ test {\ifnumgreater{\value{editor}}{1}} or test {\ifandothers{editor}} } {\addspace\mkbibparens{\bibstring{\thefield{editortype}s}}} {\addspace\mkbibparens{\bibstring{\thefield{editortype}}}}} } \DeclareFieldFormat{pagetotal}{ {} } \DeclareFieldFormat{volumes}{ {} } \DeclareNameFormat{default}{ \usebibmacro{name:last}{#1}{#3}{#5}{#7} \usebibmacro{name:andothers} } \DeclareNameFormat{labelname}{ \usebibmacro{name:last}{#1}{#3}{#5}{#7} \usebibmacro{name:andothers} } \DeclareNameFormat{sortname}{ \iffirstinits {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}} {\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}} \usebibmacro{name:andothers} } \let\oldmultinamedelim\multinamedelim \let\oldfinalnamedelim\finalnamedelim \renewcommand*{\multinamedelim}{,\space} \renewcommand*{\finalnamedelim}{~\&\space} \AtBeginBibliography{ \renewcommand*{\multinamedelim}{\oldmultinamedelim} \renewcommand*{\finalnamedelim}{\oldfinalnamedelim} } \usepackage{xpatch} \xpatchbibmacro{textcite}{ {\usebibmacro{cite:label} \setunit{ \global\booltrue{cbx:parens} \addspace\bibopenparen} \ifnumequal{\value{citecount}}{1} {\usebibmacro{prenote}} {} \ifthenelse{\ifciteibid\AND\NOT\iffirstonpage} {\usebibmacro{cite:ibid}} {\usebibmacro{cite:labelyear+extrayear}}} }{ {\usebibmacro{cite:label} \setunit{ \global\booltrue{cbx:parens} \addspace\bibopenparen} \ifnumequal{\value{citecount}}{1} {\usebibmacro{prenote}} {} \usebibmacro{cite:labelyear+extrayear}} }{}{} \xpatchbibmacro{textcite}{ {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage} {\usebibmacro{cite:ibid}} {\usebibmacro{cite:labelyear+extrayear}}} }{ {\usebibmacro{cite:labelyear+extrayear}} }{}{} %ENDE BIBLATEX \begin{document} Text. \cite{Website}. Ein weiteres Zitat \cite{a} oder auch \cite{b}. \printbibliography \end{document} Wie müsste die Syntax für die neueren Biblatex-Versionen aussehen um den selben Output für Zitate und für das Literaturverzeichnis zu erhalten? |
Die Frage wurde aus folgenden Grund "Duplikat einer anderen Frage" geschlossen saputello 06 Sep '17, 10:22
Wie bereits im ersten Kommentar zur Frage angegeben, liegt das Problem am Namensformat mit
um die dort angegebenen Änderungen dumm anwenden zu können: Öffne in Overleaf
\begin{filecontents*}{\jobname.bib} @ONLINE{website, TITLE = {Titel der Website}, HOWPUBLISHED = {Website}, URL = {http://www.musterseite.de}, URLDATE = {2017-07-11}, } @book{a, title = {Bsp. Titel}, date = {2012}, author = {Mustermax, Hans}, location = {Berlin}, publisher = {Musterverlag}, } @article{b, title = {Musterarticle}, pages = {{116--121}}, number = {39}, journaltitle = {Musterjurnal}, author = {Musterautor, Hans and Peter, Lustig and Schulz, Mario and Maier, Marie}, date = {2012}, } \end{filecontents*} \documentclass [12pt,a4paper]{article} \usepackage{cmap} \usepackage[utf8]{inputenc} \usepackage[ngerman]{babel} %BIBLATEX \usepackage[style=authoryear-icomp,backend=biber,url=false,isbn=false,maxnames=2,maxbibnames=8,minbibnames=8]{biblatex} \addbibresource{\jobname.bib}% Hinzugefügt \DeclareFieldFormat{pages}{#1} \DeclareFieldFormat*{title}{\textit{#1}} \DeclareFieldFormat*{citetitle}{\textit{#1}} \DeclareFieldFormat*{journaltitle}{\textit{#1}} \DeclareFieldFormat*{booktitle}{\textit{#1}} \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{editor} \setunit{\addcolon\space} \usebibmacro{maintitle+booktitle} \newunit\newblock \printfield{edition} \newunit \iffieldundef{maintitle} {\printfield{volume} \printfield{part}} {} \newunit \printfield{volumes} \newunit\newblock \usebibmacro{series+number} \newunit\newblock \newunit\newblock \usebibmacro{chapter+pages} \newunit\newblock \usebibmacro{publisher+location+date} \newunit\newblock \newunit\newblock \usebibmacro{doi+eprint+url} \newunit\newblock \usebibmacro{addendum+pubstate} \setunit{\bibpagerefpunct}\newblock \usebibmacro{finentry} } \renewbibmacro*{editor}{ \ifnameundef{editor} {} {\printnames{editor} \usebibmacro{editorstrg} \clearname{editor}}} \renewbibmacro*{editorstrg}{ \iffieldundef{editortype} {\ifboolexpr{ test {\ifnumgreater{\value{editor}}{1}} or test {\ifandothers{editor}} } {\addspace\mkbibparens{\bibstring{editors}}} {\addspace\mkbibparens{\bibstring{editor}}}} {\ifboolexpr{ test {\ifnumgreater{\value{editor}}{1}} or test {\ifandothers{editor}} } {\addspace\mkbibparens{\bibstring{\thefield{editortype}s}}} {\addspace\mkbibparens{\bibstring{\thefield{editortype}}}}} } \DeclareFieldFormat{pagetotal}{ {} } \DeclareFieldFormat{volumes}{ {} } \DeclareNameFormat{default}{ % siehe http://texwelt.de/wissen/fragen/16629 \nameparts{#1}% \usebibmacro{name:last} {\namepartfamily} {\namepartgiven} {\namepartprefix} {\namepartsuffix}% \usebibmacro{name:andothers}% } \DeclareNameFormat{labelname}{ % siehe http://texwelt.de/wissen/fragen/16629 \nameparts{#1}% \usebibmacro{name:last} {\namepartfamily} {\namepartgiven} {\namepartprefix} {\namepartsuffix}% \usebibmacro{name:andothers}% } \DeclareNameFormat{sortname}{ % siehe http://texwelt.de/wissen/fragen/16629 \nameparts{#1}% \iffirstinits {% \usebibmacro{name:last} {\namepartfamily} {\namepartgiveni} {\namepartprefix} {\namepartsuffix}% } {% \usebibmacro{name:last} {\namepartfamily} {\namepartgiven} {\namepartprefix} {\namepartsuffix}% }% \usebibmacro{name:andothers}% } \let\oldmultinamedelim\multinamedelim \let\oldfinalnamedelim\finalnamedelim \renewcommand*{\multinamedelim}{,\space} \renewcommand*{\finalnamedelim}{~\&\space} \AtBeginBibliography{ \renewcommand*{\multinamedelim}{\oldmultinamedelim} \renewcommand*{\finalnamedelim}{\oldfinalnamedelim} } \usepackage{xpatch} \xpatchbibmacro{textcite}{ {\usebibmacro{cite:label} \setunit{ \global\booltrue{cbx:parens} \addspace\bibopenparen} \ifnumequal{\value{citecount}}{1} {\usebibmacro{prenote}} {} \ifthenelse{\ifciteibid\AND\NOT\iffirstonpage} {\usebibmacro{cite:ibid}} {\usebibmacro{cite:labelyear+extrayear}}} }{ {\usebibmacro{cite:label} \setunit{ \global\booltrue{cbx:parens} \addspace\bibopenparen} \ifnumequal{\value{citecount}}{1} {\usebibmacro{prenote}} {} \usebibmacro{cite:labelyear+extrayear}} }{}{} \xpatchbibmacro{textcite}{ {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage} {\usebibmacro{cite:ibid}} {\usebibmacro{cite:labelyear+extrayear}}} }{ {\usebibmacro{cite:labelyear+extrayear}} }{}{} %ENDE BIBLATEX \begin{document} Text. \cite{Website}. Ein weiteres Zitat \cite{a} oder auch \cite{b}. \printbibliography \end{document} Die notwendigen Änderungen waren also exakt so wie unter der oben verlinkten Frage erklärt. Es sei zusätzlich noch darauf hingewiesen, dass das korrekte Format für beantwortet 06 Sep '17, 10:18 gast3 |
Könntest Du bitte ein Minimalbeispiel einfügen? Also ein möglichst kurzes, aber komplettes Dokument, von
\documentclass{...}
bis zu\end{document}
, was das Problem zeigt. Das vereinfacht die Bearbeitung erheblich und ist meist eine Garantie für eine Lösung.\DeclareNameFormat
kommt in Deinem Code übrigens gar nicht vor. Dennoch sei auf Namensformat mit biblatex 3.3 hingewiesen. Außerdem sei auf\mkbibname<namepart>
in derbiblatex
-Anleitung hingewiesen. Diese Änderungen ziehen sich durch ganzbiblatex
.Off-Topic: Es sei auch wieder einmal darauf hingewiesen, dass in der Themenliste zu einem Beitrag nur einzelne Wörter als Themen angegeben werden können. Jedes einzelne Wort stellt also für sich ein Thema dar. Aus „neue Syntax“ werden also die Themen „syntax“ und „neue“, was natürlich Unsinn ist. Daher bitte immer nur Wörter angeben, die einzeln für sich jeweils ein sinnvolles Thema ergeben!
Das ist keine Antwort auf Deine Frage. Bitte editiere die Frage selbst, um alle relevanten Informationen einzufügen! Bitte verzichte dabei auf alles, was nichts mit der Frage zu tun hat und für ein vollständiges Minimalbeispiel nicht benötigt wird, beispielsweise ausufernde
hyperref
- odergeometry
-Einstellungen und alle anderen Pakete, die für das Problem unerheblich sind. Wobei ich dringend empfehle, die Antwort aus der im Kommentar zur Frage bereits angegebene verwandten Frage bereits anzuwenden und ggf. lediglich Probleme damit zu zeigen.Was soll man davon halten, dass Dein Beispiel trotz ausdrücklichen Hinweises auf die VM-Anleitung nicht lauffähig ist? Bei der
filecontents
-Umgebung fehlt das obligatorische Argument und das Beispiel enthält auch kein\addbibresource
, lädt also gar keine Literaturdatenbank. Was soll man davon halten, dass trotz entsprechenden Hinweises gar nicht versucht wurde, die Änderung des Namensformats anzuwenden? So wie es die Frage ist, ist sie min. ein Duplikat.