PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zu Biblatex



heinzer
05-03-2009, 18:10
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



Kann mir keiner helfen?!

heinzer
08-03-2009, 16:20
Hat keiner eine Idee?!

Waldschrat
08-03-2009, 17:31
Ich kann mich täuschen, aber wahrscheinlich nutzen die meisten den klassischen Weg, also über ein BibTeX-style file und nicht biblatex. Ich kann mich damit auch nicht so recht anfreunden.

mechanicus
09-03-2009, 08:17
Hallo,

hast du dir diese Artikel schon einmal angeschaut:
http://biblatex.dominik-wassenhoven.de/dtk.shtml

Gruß
Marco

heinzer
09-03-2009, 17:20
hast du dir diese Artikel schon einmal angeschaut:
http://biblatex.dominik-wassenhoven.de/dtk.shtml


Ja den Artikel kenn ich. Mittlerweile hab ich das kleinere Problem auch gelöst. Um das "und" durch "&" zu ersetzen muss man einfach den "finalnamedelim" ändern:

\renewcommand*{\finalnamedelim}{%
\ifnum\value{liststop}>2 \finalandcomma\fi
\addspace\&\space}

Ich bin aber immer noch jederzeit dankbar für Hinweise für mein eigentliches Problem. Gruß

Heinzer

heinzer
09-03-2009, 17:59
Ok, habs endlich hinbekommen. Hier die Lösung:

\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}}%
}

Man nimmt einfach die Abfrage raus, ob es schon ein Werk vom selben Autor gab und schon ist das Problem gelöst :)

koiboy
07-07-2009, 18:32
Hab genau das selbe Problem und habe die Abfrage ebenfalls gelöscht (ich nehme mal an, die authoryear.bbx ist gemeint) ... leider passiert bei mir gar nix ...

Warum?

Bilbo
13-07-2009, 00:43
Ok, habs endlich hinbekommen. Hier die Lösung:

\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}}%
}

Man nimmt einfach die Abfrage raus, ob es schon ein Werk vom selben Autor gab und schon ist das Problem gelöst :)

Der Code funktioniert bei mir nicht:confused:

joikem
19-10-2009, 19:51
Bei mir funktioniert er auch nicht. An einer Lösung bin ich stark interessiert und forsche auch selbst weiter...

bobmalaria
19-10-2009, 20:00
hi,

ihr solltet nicht in den originalen dateien herumspielen. was passiert wenn ihr das in euer dokument einfügt?

gruss

joikem
19-10-2009, 20:04
Dasselbe :(

Ich spiele auch nur in meinen eigenen Stilen rum und nicht im original, man will ja nix kaputtmachen.

Danke trotzdem,
johannes

mechanicus
19-10-2009, 20:17
Hallo,

probiere mal:

\documentclass[12pt]{scrbook}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[style=authoryear]{biblatex}
\usepackage[babel,german=guillemets]{csquotes}
\bibliography{Minimalbeispiel}
\usepackage{filecontents}
\begin{filecontents*}{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"
}
\end{filecontents*}
\makeatletter
\renewbibmacro*{author}{%
\ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{autho r}}
{
\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}}
\makeatother

\begin{document}
\nocite{*}
\printbibliography
\end{document}
Ich habe das Problem, dass der Titel nicht einheitlich ist. :confused::confused:

Gruß
Marco