2 Fragen zu Biblatex Thema ist als GELÖST markiert

Erstellung eines Literaturverzeichnisses mit BibTeX, Biber, BibLaTeX und Co.


heinzer

2 Fragen zu Biblatex

Beitrag von heinzer »

Hallo zusammen.
Ich hab die letzten Tage damit zugebracht mich ein wenig in Biblatex reinzufuchsen um einen hübschen Stil für das Literaturverzeichnis meiner Diplomarbeit hinzubekommen. Bin soweit auch schon ganz zufrieden. hab den authoryear style ein wenig abgewandelt. Nur eine Kleinigkeit stört mich noch und zwar, dass Werke vom gleichen Autor zusammengefasst werden und wie in einer Aufzählung untereinander stehen. Ich hätte es aber gerne, dass jedes Werk einen neuen Eintrag erhält.

Hier mein Minimalbeispiel:
Datei Minimalbeispiel.tex
\documentclass[12pt]{scrbook}
\usepackage[french,ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[style=authoryearHH]{biblatex}
\usepackage[babel,german=guillemets]{csquotes}
\bibliography{Minimalbeispiel}
\begin{document}
\nocite{*}
\setlength{\bibhang}{2em}
\defbibheading{Literaturverzeichnis}{\chapter*{Lit eraturverzeichnis}\addcontentsline{toc}{chapter}{L iteraturverzeichnis}}
\printbibliography[heading=Literaturverzeichnis]
\end{document}
und
Datei Minimalbeispiel.bib
@Article{fan+gijbels95,
author = "J. Fan and I. Gijbels",
title = "Data-Driven bandwidth selection in local polynomial fitting: variable bandwidth and spatial adaption",
journal = "J. Roy. Statist. Soc.",
series = "Ser. B",
year = "1995",
number = "570",
pages = "371-394"
}


@Book{fan+gijbels96,
author = "J. Fan and I. Gijbels",
title = "Local polynomial modelling and its applications",
publisher = "Chapman \& Hall, London",
year = "1996"
}
Als Ausgabe erhalte ich dann folgendes:

J. Fan und I. Gijbels (1995). Data-Driven bandwidth selection in local polynomial fitting: variable bandwidth and spatial adaption. J. Roy. Statist. Soc. Ser. B, 570, 371-394.

- (1996). Local polynomial modelling and its applications. Chapman & Hall, London.


Ich hätte es aber lieber, wenn ich bekäme:

J. Fan und I. Gijbels (1995). Data-Driven bandwidth selection in local polynomial fitting: variable bandwidth and spatial adaption. J. Roy. Statist. Soc. Ser. B, 570, 371-394.

J. Fan und I. Gijbels (1996). Local polynomial modelling and its applications. Chapman & Hall, London.


Kann mir da jemand helfen? Achja... eins noch: Ich hätte gerne, dass statt dem "und" zwischen den Autoren ein "&" stehen würde (nicht nur im bibliography sondern auch bei den citations). Wie geht das?
Vielen Dank soweit, gruß

Heinzer

Heinzer

Beitrag von Heinzer »

Problem gelöst!

1.
\renewbibmacro*{author}{%
\ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{autho r}}
{\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthas h}\AND <- LÖSCHEN!!!
\NOT\iffirstonpage} <- LÖSCHEN!!!
{\bibnamedash} <- LÖSCHEN!!!
{\savefield{fullhash}{\bbx@lasthash}% <- LÖSCHEN!!!
\printnames{author}%
\iffieldundef{authortype}
{\setunit{\addspace}}
{\setunit{\addcomma\space}}}%
\iffieldundef{authortype}
{}
{\usebibmacro{authorstrg}%
\setunit{\addspace}}}%
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}%
\setunit*{\addspace}}%
}
2.
\renewcommand*{\finalnamedelim}{%
\ifnum\value{liststop}>2 \finalandcomma\fi
\addspace\&\space}
Heinzer

Gast

Biblatex authoryears Wiederholung Autorname erzwingen

Beitrag von Gast »

Die Lösung im vorherigen Post hat bei mir leider nicht funktioniert. Deshalb hier meine Lösung:
\renewbibmacro*{author}{%
  \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}}
    {\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthash}\AND
                 \NOT\iffirstonpage}
       {\printnames{author}%
	\iffieldundef{authortype}
	  {\setunit{\addspace}}
	  {\setunit{\addcomma\space}}}
       {\savefield{fullhash}{\bbx@lasthash}%
        \printnames{author}%
	\iffieldundef{authortype}
	  {\setunit{\addspace}}
	  {\setunit{\addcomma\space}}}%
     \iffieldundef{authortype}
       {}
       {\usebibmacro{authorstrg}%
	\setunit{\addspace}}}%
    {\global\undef\bbx@lasthash
     \usebibmacro{labeltitle}%
     \setunit*{\addspace}}%
  \usebibmacro{year+labelyear}}

\renewbibmacro*{editor}{%
  \ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}}
    {\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthash}\AND
                 \NOT\iffirstonpage}
       {\printnames{editor}\addcomma\space}
       {\savefield{fullhash}{\bbx@lasthash}%
        \printnames{editor}\addcomma\space}%
     \usebibmacro{editorstrg}%
     \clearname{editor}%
     \setunit{\addspace}}%
    {\global\undef\bbx@lasthash
     \usebibmacro{labeltitle}%
     \setunit*{\addspace}}%
  \usebibmacro{year+labelyear}}

cliffhanger
Forum-Century
Forum-Century
Beiträge: 137
Registriert: Di 25. Aug 2009, 11:25
Wohnort: Regensburg

Re: Biblatex authoryears Wiederholung Autorname erzwingen

Beitrag von cliffhanger »

So, ich koche das Ganze mal wieder auf, nachdem ich das gleiche Problem habe.

Bei Einträgen, bei denen das author-Feld existiert, bringt
\renewbibmacro*{author}{%
\ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}}
{\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthash}\AND
\NOT\iffirstonpage}
{\printnames{author}%
\iffieldundef{authortype}
{\setunit{\addspace}}
{\setunit{\addcomma\space}}}
{\savefield{fullhash}{\bbx@lasthash}%
\printnames{author}%
\iffieldundef{authortype}
{\setunit{\addspace}}
{\setunit{\addcomma\space}}}%
\iffieldundef{authortype}
{}
{\usebibmacro{authorstrg}%
\setunit{\addspace}}}%
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}%
\setunit*{\addspace}}%
\usebibmacro{year+labelyear}} 
schon die erwünschte Lösung.

Allerdings habe ich einige Verweise, die keinen Autor, sondern nur einen Herausgeber haben (beispielsweise von Ministerien oder Ämtern herausgegebene Broschüren). Diese werden, wenn es mehrere vom Gleichen Herausgeber sind, wieder nur mit "-" angegeben.

Ich habe bereits versucht, im oben angegebenen Macro einfach überall "author" durch "editor" zu ersetzen, was jedoch keinen Erfolg gebracht hat.

Auch das von Gast angegebene Macro
\renewbibmacro*{editor}{%
  \ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}}
    {\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthash}\AND
                 \NOT\iffirstonpage}
       {\printnames{editor}\addcomma\space}
       {\savefield{fullhash}{\bbx@lasthash}%
        \printnames{editor}\addcomma\space}%
     \usebibmacro{editorstrg}%
     \clearname{editor}%
     \setunit{\addspace}}%
    {\global\undef\bbx@lasthash
     \usebibmacro{labeltitle}%
     \setunit*{\addspace}}%
  \usebibmacro{year+labelyear}}
ändert nichts daran.

Hat jemand noch nen Tip für mich, wie ich das für die Herausgeber auch noch hinbekommen kann?

Edit: Sorry, Code-Tags nachgetragen
Zuletzt geändert von cliffhanger am Di 25. Aug 2009, 21:38, insgesamt 1-mal geändert.

Benutzeravatar
TrigTeX
Forenhörnchen
Forenhörnchen
Beiträge: 50
Registriert: So 29. Jun 2008, 00:01
Wohnort: goLaTex.de
Kontaktdaten:

Beitrag von TrigTeX »

Hallo zusammen,
ich sehe hier gerade, dass wohl niemand den CodeButton verwendet. Daher nochmal die Aufforderung an alle die Forum-Richtlinien zu beachten und Code mit der entsprechenden Formatierung zu versehen.

Gruß
TrigTeX
Ich liebe Erdnüsse......

cliffhanger
Forum-Century
Forum-Century
Beiträge: 137
Registriert: Di 25. Aug 2009, 11:25
Wohnort: Regensburg

Beitrag von cliffhanger »

Mal nach oben schieben...

Verena Wuchenva

Spiegelstriche in Literaturverzeichnis bei gleichen Editoren

Beitrag von Verena Wuchenva »

Hallo zusammen,

ich habe genau das gleiche Problem.
Werden mehrere Herausgeber mit gleichem Namen im Literaturverzeichnis hintereinander ausgegeben, erfolgt anstelle der wiederholten Angabe der Namen ein Spiegelstrich.
Leider funktioniert auch bei mir der hier gepostete Code nicht:(
Und meine bisherigen Versuche bringen mich auch nicht weiter.

Hat jemand einen Lösungsvorschlag?

Dafür wäre ich sehr dankbar!

Viele Grüsse
Verena

Verena Wuchenva

Spiegelstriche in Literaturverzeichnis bei gleichen Editoren

Beitrag von Verena Wuchenva »

Hallo zusammen,

ich habe herausgefunden, warum der hier angegebene Code bei mir nicht funktioniert hat.
Vielleicht hilft es ja anderen auch...

Wenn ich den geposteten Code mit \makeatletter und \makeatother umschließe funktioniert alles bestens.

Viele Grüsse
Verena

Antworten