PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bibtex Style



sepplmaster
10-06-2012, 11:22
Liebes Forum!
Ich bin sowohl neu hier als auch neu bei Latex. Ich habe schon verstanden wie Bibtex funktioniert und setze es auch mehr oder minder erfolgreich ein.
Mein Problem ist aber dass für meine Arbeit ein bestimmter Zitierstil vorgegeben ist, der so aussieht (Buch(Monographie)):


Nachname, Initiale(n) des Vornamesn., Erscheinungsjahr. Titel. Auflage(falls nicht die erste). Publikationsort: Verlag


Derzeit verwende ich natbib und als Style plainnat, das ist aber nicht ganz optimal. Wisst ihr, gibt es einen Style der zu meinem passt, oder kann ich einen so verändern dass es für micht passt?

Und eine Frage habe ich noch: Wenn ich mir Bibtex Einträge von Google Books herunterlade, steht im Feld autor zuerst der Nachname dann ein Beistrich und dann Initiale des Vornamens mit Punkt. Ist das für ein *.bib Layout so Standard?

Danke schon jetzt für eure Hilfe!
Bitte verzeiht mir Fehler,
sepplmaster

bobmalaria
10-06-2012, 12:02
hi,

die lösung dürfte, wie fast bei allen bib fragen das paket biblatex sein. damit kann man seine wünsche nach dem aussehen meinst relativ einfach erfüllen.
über die suchfunktion solltest du einiges zum thema finden.

den namen mit bindestrich zu verbindenist nicht standard. normal reicht es die namen nach dem schema: Nachname Vorname and Nachnam Vorname

in der bib einzutragen. das verkürzen auf initialen sollte dann der stil übernehmen.

gruss

sepplmaster
10-06-2012, 15:36
Danke für die Antwort!
Mittlerweile habe ich es geschafft, dank folgender Anleitung

http://tex.stackexchange.com/questions/12254/biblatex-how-to-remove-the-parentheses-around-the-year-in-authoryear-style

die Klammern beim Jahr wegzubekommen. Nun stehe ich vor einem weiteren Problem:
Meine Vorgabe ist es, nach der/n Initiale(n) des Vornamens., einen (hier rot markierten beistrich zu machen. Wie bekomme ich das hin?


Außerdem sollen mehrere Autoren im Quellenverzeichnis nicht durch ein und andere abgekürzt werden, sondern alle, durch Strichpunkt(; ) getrennt aufgelistet werden.

Bitte um weitere Hilfe.

sepplmaster
12-06-2012, 11:19
Habe ich was falsch gemacht beim Fragen, oder kann mir nur niemand helfen?
LG

rstuby
12-06-2012, 11:50
Erstens mal fehlt natürlich ein lauffähiges Minimalbeispiel.
Aber vielleicht können die Teilnehmer hier solche Fragen auch nur noch in biblatex lösen. Ich selber bin von Literaturverwaltung bisher verschont geblieben und kann dir deshalb leider nicht helfen...

Festus
12-06-2012, 14:23
Aber vielleicht können die Teilnehmer hier solche Fragen auch nur noch in biblatex lösen. Ich selber bin von Literaturverwaltung bisher verschont geblieben und kann dir deshalb leider nicht helfen...

Aber Moment, nach dem Link bist du doch jetzt auf BibLaTeX umgestiegen, oder?

Ich kann dir da auch nicht weiter helfen, aber ein Minimalbeispiel soweit du schon bist würde sicher helfen.

rstuby
12-06-2012, 14:43
Ach so, den Link hatte ich nicht gelesen, entschuldigung.

sepplmaster
13-06-2012, 11:46
Aber Moment, nach dem Link bist du doch jetzt auf BibLaTeX umgestiegen, oder?
Sorry, hab vergessen das zu erwähnen, ja ich bin umgestiegen.

Hier das Minimalbeispiel:

\documentclass[12pt]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[style=authoryear-comp]{biblatex}
\usepackage[babel,german=quotes]{csquotes}
\usepackage{xpatch}

\bibliography{test}
\listfiles
\begin{document}

...dies ist der Beispieltext meiner Hausarbeit, in dem ich nun an dieser Stelle (\cite[22]{Angehrn:Chaos}) einen Beleg einfügen will..
\xpatchbibmacro{date+extrayear}{%
\printtext[parens]%
}{%
\addperiod\space%
\printtext%
}{}{}

\printbibliography
\end{document}

hier noch das test.bib file


@Book{Angehrn:Chaos,
author = {Angehrn, Emil and Mustermann, Max and Musterfrau, Marta and Müller, Manfred},
title = {Die Überwindung des Chaos. Zur Philosophie des Mythos},
shorttitle = {Die Überwindung des Chaos},
publisher = {Suhrkamp},
year = {1996},
address = {Frankfurt am Main},
annote = {Mythos}
}

Sieht eigentlich ganz passabel aus, aber wie gesagt, mir fehlt ein Beistrich nach der/n Initiale(n) des Vornamens, und die Autoren sollen nicht durch u. a. abgekürzt werden, sondern alle durch einen Strichpunkt getrennt, wobei beim letzten statt dem Strichpunkt ein "und" stehen soll.
Balzert, H.; Schäfer, C.; Schröder, M. und Kern, U., 2008. Wissenschaftliches Arbeiten. Wissenschaft, Quellen, Artefakte, Organisation, Präsentation. Herdecke: W3L-Verlag

Eine andere Frage tut sich noch auf, wenn ich im Minimalbeispiel bei inputenc auf utf8 ändere, bekomme ich Fehler und im Literaturverzeichnis werden mir Umlaute nicht korrekt dargestellt. Ich habe aber gelesen dass biblatex mit utf8, wenn in inputenc definiert, umgehen kann. Liege ich da falsch?
Und was genau ist der Unterschied zu ansinew?
Bei ansinew bekomme ich übrigens eine Warnung
Package biblatex Warning: Data encoding is 'ansinew'.

Danke für euere Mühen!

rstuby
13-06-2012, 12:26
Die Codierung nachträglich bei einem vorhandenen Dokument ändern ist oft problematisch.
Wenn du ein neues Dokument anfängst, achte stets darauf, dass die Codierung bei inputenc mit der übereinstimmt, die in den Einstellungen deines Editors eingestellt ist.

Festus
13-06-2012, 12:45
Also am besten schaust du mal in die BibLaTeX Doku. Zum Separator nach den Initialen des Vornmanens hab ich \bibinitperiod gefunden, das man dann wohl umdefinieren müsste. Über den Separator zwischen den Namen hab ich nichts gefunden, aber den kann man sicher auch global einstellen.

sepplmaster
13-06-2012, 21:23
Zum Separator nach den Initialen des Vornmanens hab ich \bibinitperiod gefunden, das man dann wohl umdefinieren müsste. Über den Separator zwischen den Namen hab ich nichts gefunden, aber den kann man sicher auch global einstellen.

Danke für die Anregung, habe daraufhin die deutsche Version gefunden, und mich mal den Tag damit beschäftigt.

Das Problem ist, dass
\bibinitperiod alle Initialen betrifft, nicht nur die des Letzten Autors vor dem Jahr. In meinem aktualisierten Musterbeispiel habe ich den Vorschlag eingebunden, aber wieder auskommentiert, da er mir sonst die
\multinamedelim Einstellung über den Haufen wirft, die für die Strichpunkte zwischen den Namen verantwortlich ist.


Die Codierung nachträglich bei einem vorhandenen Dokument ändern ist oft problematisch.
Wenn du ein neues Dokument anfängst, achte stets darauf, dass die Codierung bei inputenc mit der übereinstimmt, die in den Einstellungen deines Editors eingestellt ist.

Danke für den Tipp, hat super funktioniert.

Erwähnenswert ist noch dass ich auf
bieber als Backend für
biblatex umgestiegen bin.

Hier mein Minimalbeispiel.


\documentclass[naustrian]{article}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@BOOK{Angehrn:Chaos,
title = {Die Überwindung des Chaos. Zur Philosophie des Mythos},
publisher = {Suhrkamp},
year = {1996},
author = {Angehrn, Emil and Mustermann, Max and Musterfrau, Marta and Müller,
Manfred},
address = {Frankfurt am Main},
annote = {Mythos},
keywords = {primary},
shorttitle = {Die Überwindung des Chaos}
}

\end{filecontents}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
\usepackage[naustrian]{babel}
\usepackage[
backend=biber,
style=authoryear,
bibstyle=authoryear,
firstinits=true, %damit nur initialen aufgelistet werden
maxbibnames=7, %damit alle autoren aufgelistet werden
minbibnames=1
]{biblatex}
\usepackage[babel,german=quotes]{csquotes}

\bibliography{\jobname}

\DefineBibliographyStrings{naustrian}{
andothers = {{et\,al\adddot}} } % 'et al.' anstatt 'u.a.'

%der erwähnte befehl
%\renewcommand{\bibinitperiod}{\adddot\addcomma\ad dspace}

%sorgt dafür, dass bei Zitaten mit mehreren Autoren ein ";" im Literatutverzeichnis steht
\AtBeginBibliography{%
\renewcommand*{\multinamedelim}{\addsemicolon\spac e}
}

%sorgt dafür dass die Namen immer gleich gelistet werden (Nachname, Initiale.)
\DeclareNameAlias{sortname}{last-first}

%löscht die Klammern beim Jahr
\renewbibmacro*{date+extrayear}{%
\iffieldundef{year}
{}
{\printtext{\printdateextra}}}

\begin{document}
Dies ist nur ein kleines Testdokument.
\parencite{Angehrn:Chaos}


\printbibliography
\end{document}

Funktioniert eigentlich perfekt, mir fehlt nur der Beistrich nach Müller, M.
Ich hab die Dokumentation drei mal abgesucht, aber nichts in der Richtung gefunden. Es kann aber auch sein dass ich es überlesen habe.
Falls mir da noch wer helfen kann wäre ich sehr dankbar.

Festus
14-06-2012, 14:20
Es gibt in BibLaTeX IMHO counter wie listcounter (aktuelles Element einer Liste) und liststop (letztes Element einer Liste).

Mann müsste also vermutlich eine ifthenelse Abfrage machen, die etwas tut wie


solange listcounter < liststop

\renewcommand{\bibinitperiod}{\adddot\addsemicolon (?)\addspace}

sonst

\renewcommand{\bibinitperiod}{\adddot\addcomma\add space}

Wie ganau die Syntax lauten muss musst du mal selber schauen, dafür programmiere ich in LaTeX viel zu wenig.