Eigener Zitierstil hat Kommafehler

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Eigener Zitierstil hat Kommafehler

von Gast » Sa 20. Jun 2015, 16:45

Für das Semikolon zwischen den Zitaten ist \multicitedelim zuständig.

Soweit ich sehen kann, ändert Dein Code den Standard
\newcommand*{\multicitedelim}{\addsemicolon\space}
nicht, Du kannst es natürlich trotzdem mit
\renewcommand*{\multicitedelim}{\addsemicolon\space}
versuchen, um den Standard wiederherzustellen, sollte er geändert worden sein.

Besonders am Anfang deines Codes geschehen aber einige Dinge, über deren Sinn und Zweck ich mir nicht ganz im klaren bin und obwohl da eigentlich nichts mit \multicitedelim passieren sollte, kann ich nicht ausschließen, dass dort oder sonstwo die Funktion von \multicitedelim ausgehebelt wird.

von Johannes_B » Sa 20. Jun 2015, 12:50

Lies dir am besten mal durch, wie man das richtig macht, und erstelle dann eien ordentlichen Stil. Bei diesen ganzen Schnipseln kann doch kein Mensch mehr durchblicken. Das würde auch euren Nutzern dieArbeit mehr als erleichtern.

Modifizieren eines biblatex-Stils

von kla4dj » Sa 20. Jun 2015, 11:49

Die Lösung mit der Codezeile hat das erwünschte Ergebnis gebracht. Vielen Dank dafür!

Nur erzeugt mir das jetzt aber das Problem, wenn ich zwei Autoren mit Seitenangabe zitiere, dass kein Semikolon mehr gesetzt wird. :lol:


\cites[S. 5]{A_01}{B_01} führt zu HANSMANN 2001, S. 5 YOOMEL 2002

von Gast » Sa 20. Jun 2015, 11:15

Nach kurzer weiterer Betrachtung fällt mir auf, dass das Problem bei der natbib-Option liegt, wird natbib=true als Option übergeben, so lädt biblatex blx-natbib.def und die ändert den \nameyeardelim zu \addcomma\space.

Wenn Du die natbib-Option nicht brauchst, kannst Du sie ausschalten, oder einfach
\renewcommand*{\nameyeardelim}{\addspace}
nutzen.

PS: Sorry, dass mir die Idee erst kam, nachdem ich oben schon etwas geschrieben hatte ...

von Gast » Sa 20. Jun 2015, 11:11

Bei mir tritt mit dem von Dir oben gezeigten Code-Schnipseln das Problem nicht auf, gibt es noch mehr Code, der biblatex beeinflussen könnte?

Du solltest dabei besonders auf \nameyeardelim achten, vielleicht hilft auch einfach
\renewcommand*{\nameyeardelim}{\addspace}
weiter (wenn Dein Stil nicht zu viele Veränderungen vorgenommen hat, ist das der relevante Befehl).

...

von nixversteh » Sa 20. Jun 2015, 09:49

Hallo kla4dj,

liefre bitte ein lauffähiges Beispiel, Mini wird das wohl eher nicht sein ;-)

Gruß

Martin

Eigener Zitierstil hat Kommafehler

von kla4dj » Sa 20. Jun 2015, 08:53

Hallo,

ich habe einen veralteten Zitierstil von meinem Lehrstuhl vorgegeben bekommen, der mir jedoch fälschlicherweise statt (ROTH 2005, S. 7) alle indirekten Zitate mit (ROTH, 2005, S. 7) ausgibt. Leider finde ich auch nach mehrmaligen drüberschauen nicht den Fehler. Vielleicht hängt das auch damit zusammen, dass ich ein absoluter TeX-Noob bin. Könnte mir da vielleicht jemand bitte den entscheidenen Tipp geben ;-)

Hier mal meine Zitations.tex

Autorstil.tex
\usepackage%
[%
	style = authoryear-comp,		% authoryear-comp oder 
	backend = biber,
	natbib = true,
	hyperref = true,
	maxnames = 2,
	isbn = true,
	doi = true, 			% DOIs im LitVZ
	language = german,
	texencoding=utf8,
%	bibencoding=utf8,
	firstinits = true,		% Vornamen abkürzen
	uniquename = init,
	%backref = true,		% Seitenzahlen der Verweise im LitVZ
	dashed = false, 		% Falls mehrere gleiche Autoren auftauchen, werden die Einträge mit 
							% einem Strich abgekürzt. S.a. http://projekte.dante.de/DanteFAQ/BiblatexStile --> autoryear
]{biblatex}


\setcounter{secnumdepth}{3}							%	Kapitelnummerierung mit fünf Ebenen ermöglichen
\setcounter{tocdepth}{3}								%	Eintrag ins Inhaltsverzeichnis bis Ebene 4

% Nachnames-Formatierung (im Text) anpassen
\renewcommand*{\mkbibnamelast}[1]{\textsc{#1}}

% Im Literaturverzeichnis immer nach "Nachname, Vorname" formatieren. Siehe auch
% http://projekte.dante.de/DanteFAQ/BiblatexReihenfolgeAutoren
% \DeclareNameAlias{sortname}{last-first}	% Einfache Variante, formatiert allerdings nicht den Herausgeber!
\DeclareNameFormat{default}{%
\iffirstinits
{\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}			% Wenn Vorname nur mit Initialien, dann dieses Makro ansonsten
{\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%		% dieses (mit Initialien). s.a. Link oben.
\usebibmacro{name:andothers}}

\input{01_Header/Zitate_und_Literaturverzeichnis/biblatex_Jahreszahl_Anpassungen.tex}
\input{01_Header/Zitate_und_Literaturverzeichnis/biblatex_article_Anpassungen.tex}
\input{01_Header/Zitate_und_Literaturverzeichnis/biblatex_patent_Anpassungen.tex}
% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % %
\AtEveryBibitem{%
\renewcommand*{\mkbibnamelast}[1]{\textsc{#1}}
% Ursprüngliche Formatierung von Zitaten verwenden (lokal für Kopf der Einträge)
\let\multinamedelim\myOriginalMultiNameDelim
\let\finalnamedelim\myOriginalFinalNameDelim

\cite{\thefield{entrykey}}\\
\renewcommand*{\mkbibnamelast}[1]{#1}
% Die neue Formatierung wieder aktivieren -> siehe Hook "\AtBeginBibliography{"
  \let\multinamedelim\myBibMultiNameDelim				% \let heißt renewcommand (multiNameDelim) --> (eignenen Stil)
  \let\finalnamedelim\myBibFinalNameDelim
}%

\AtBeginBibliography{%
\setcounter{maxnames}{99}
\renewcommand*{\mkbibnamelast}[1]{#1}
}

% Zwischen zwei Autoren als Begrenzung einen Semikolon anstatt Komma:
\newcommand*{\myBibMultiNameDelim}{\addsemicolon\space} % Eigenen Stil definieren und weiter unten zuweisen
\newcommand*{\myBibFinalNameDelim}{\addsemicolon\space} %
\renewcommand*{\labelnamepunct}{\addcolon\space} %

\AtBeginBibliography{%
% In neuen Befehl speichern bevor überschrieben
\let\myOriginalMultiNameDelim\multinamedelim
% In neuen Befehl speichern bevor überschrieben
\let\myOriginalFinalNameDelim\finalnamedelim
% Neuen Befehl zuordnen - wurde mit newcommand etwas weiter oben definiert
  \let\multinamedelim\myBibMultiNameDelim				% \let heißt renewcommand (multiNameDelim) --> (eignenen Stil)
  \let\finalnamedelim\myBibFinalNameDelim
}
% % % % % % % % % % % % % % % % % % % % % % % % % % % % % %

biblatex_Jahreszahl_Anpassungen.tex
% Quick Solution: Wir hängen die Jahreszahl vor die Ausgabe der Notizen / Seitenzahlen.
\renewbibmacro*{note+pages}{%
  \printfield{year}%
  \newunit
  \printfield{note}%
  \setunit{\bibpagespunct}%
  \printfield{pages}%
  \newunit}

\renewbibmacro*{chapter+pages}{%
  \printfield{year}%
  \newunit
  \printfield{chapter}%
  \setunit{\bibpagespunct}%
  \printfield{pages}%
  \newunit}
  
biblatex_article_Anpassungen.tex
\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{in:}%
  \usebibmacro{journal+issuetitle-mod}%
  \newunit
  \usebibmacro{byeditor+others}%
  \newunit
  \usebibmacro{note+pages-mod}%
  \newunit\newblock
  \iftoggle{bbx:isbn}
    {\printfield{issn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}}

\renewbibmacro*{author}{%
  \ifboolexpr{
    test \ifuseauthor
    and
    not test {\ifnameundef{author}}
  }
    {\usebibmacro{bbx:dashcheck}
       {\bibnamedash}
       {\usebibmacro{bbx:savehash}%
        \printnames{author}%
	\iffieldundef{authortype}
	  {\setunit{\addspace}}
	  {\setunit{\addcomma\space}}}%
     \iffieldundef{authortype}
       {}
       {\usebibmacro{authorstrg}%
	\setunit{\addspace}}}%
    {\global\undef\bbx@lasthash
     \usebibmacro{labeltitle}%
     \setunit*{\addspace}}%
  %\usebibmacro{date+extrayear}%
  }
    
    
\newbibmacro*{journal+issuetitle-mod}{%
  \usebibmacro{journal}%
  \setunit*{\addspace}%
  \iffieldundef{series}
    {}
    {\newunit
     \printfield{series}%
     \setunit{\addspace}}%
  \usebibmacro{volume+number+eid-mod}%
  \setunit{\addspace}%
  \usebibmacro{issue+date}%
  \setunit{\addcolon\space}%
  \usebibmacro{issue}%
  \newunit}
  
\newbibmacro*{volume+number+eid-mod}{%
  \printfield{volume}%
  %\setunit*{\adddot}%
  %\printfield{number}%
  \addspace
  \printtext{(}%
   	\printfield{year}%
  \printtext{)}%
  \addspace
  \printfield{number}%
  \setunit{\addcomma\space}%
  \printfield{eid}}
  
% Jahreszahl wurde schon ausgegeben, muss nicht nochmal passieren.  
\newbibmacro*{note+pages-mod}{%
  \printfield{note}%
  \setunit{\bibpagespunct}%
  \printfield{pages}%
  \newunit}


biblatex_patent_Anpassungen.tex
%MA

\DeclareBibliographyDriver{patent}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  Schutzrecht:\addspace%
  \printfield{number}\addspace%
  \printfield{type}\addspace%
  \printtext[parens]{%
  	\printfield{note}% veroffentlichungsdatum
}%
  \newunit\newblock
  \usebibmacro{byholder}%
  \newunit\newblock
  \printfield{year}% anmeldedatum
  \newunit\newblock
  \usebibmacro{author}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{title}%
  \newunit
  \printlist{language}%
  \newunit\newblock
  \usebibmacro{byauthor}%
  \newunit\newblock
  \setunit*{\addspace}%
  \iflistundef{location}
    {}
    {\setunit*{\addspace}%
     %\printtext[parens]{%
       \printlist[][-\value{listtotal}]{location}}%
	 %  }%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}}


Nach oben