PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : biblatex stil anpassen



Ephi
29-12-2009, 17:03
Hallo,

Ich bin grad malwieder dabei eine etwas umfangreichere Facharbeit mit LaTeX zu verfassen. Ich bin kein kompletter neuling, und hab LaTeX schon des öfteren verwendet, jedoch benötige ich jetzt zum ersten mal ein Literaturverzeichnis. Erst habe ich mit bibtex und dem cite packet gearbeitet, habe jetzt aber auf biblatex umgestellt. Soweit funktioniert auch alles ganz gut und im großen und ganzen entspricht der numeric Stil meinen bedürfnissen. Jetzt habe ich aber einige Vorgaben für das Literaturverzeichnis. Dies betrifft insbesondere den Autor:

NACHNAME AUTOR, Vorname: Titel des Buches; Verlag, Jahr.

bei mehreren Autoren dann entsprechend auflisten (z.B.: MUSTERMANN, Max, PETER, Hans und ERHARD, Heinz)

Ich hab schon versucht einen Stil auf numeric aufzubauen, und einen eigenen Treiber für book zu schreiben, komme aber hinten und vorne nicht klar. Kann mir da jemand auf die Sprünge helfen?

//Edit: Ich weis, so toll sieht das nicht aus, aber das sind nunmal meine Vorgaben...

mechanicus
29-12-2009, 17:47
Kann mir da jemand auf die Sprünge helfen?
wenn du ein Minimalbeispiel bringst, dann bestimmt

Gruß
Marco

Ephi
29-12-2009, 18:03
\documentclass[pdftex,12pt,a4paper,titlepage,bibtotocnumbered,toc left]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[babel,german=quotes]{csquotes}
\usepackage[sorting=none]{biblatex}
\bibliography{quellen}

\title{bla}
\subtitle{blablabla}
\author{Ephraim Hahn}
\date{\today}

\begin{document}

\maketitle

\tableofcontents

\chapter{Kapitel}

Zitierter Text \cite[S. 86–197]{weltkriege}.


\appendix

\printbibliography

\end{document}


Der Eintrag in der .bib Datei:


@book{weltkriege,
Author = {Karl-Volker Neugebauer and Ernst W. Hansen and Gerhard P. Gro{\ss}},
Date-Modified = {2009-12-29 17:12:15 +0100},
Price = {EUR 19,80},
Publisher = {Oldenburg},
Timestamp = {2009.12.28},
Title = {Grundkurs deutsche Milit{\"a}rgeschichte 2. Das Zeitalter der Weltkriege 1914 und 1945: V{\"o}lker in Waffen: Bd. 2},
Totalpages = {464},
Year = {2007},
Bdsk-Url-1 = {http://amazon.de/o/ASIN/348658099X/}}


Daraus wird momentan im Literaturverzeichnis:
[1] Karl-Volker Neugebauer, Ernst W. Hansen und Gerhard P. Groß. Grundkurs deut- sche Militärgeschichte 2. Das Zeitalter der Weltkriege 1914 und 1945: Völker in Waffen: Bd. 2. Oldenburg, 2007.

Ich hätte aber gerne
[1] NEUGEBAUER, Karl-Volker, HANSEN, Ernst W. und GROß Gerhard P.: Grundkurs deut- sche Militärgeschichte 2. Das Zeitalter der Weltkriege 1914 und 1945: Völker in Waffen: Bd. 2.; Oldenburg, 2007.

mechanicus
29-12-2009, 18:23
Hi,

so ist es doch viel besser :D


\documentclass[12pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[babel,german=quotes]{csquotes}
\usepackage[style=numeric,sorting=none]{biblatex}
\bibliography{quellen}
\usepackage{filecontents}
\begin{filecontents*}{quellen.bib}
@book{weltkriege,
Author = {Karl-Volker Neugebauer and Ernst W. Hansen and Gerhard P. Gro{\ss}},
Date-Modified = {2009-12-29 17:12:15 +0100},
Price = {EUR 19,80},
Publisher = {Oldenburg},
Timestamp = {2009.12.28},
Title = {Grundkurs deutsche Milit{\"a}rgeschichte 2. Das Zeitalter der Weltkriege 1914 und 1945: V{\"o}lker in Waffen},
volume ={2},
Totalpages = {464},
Year = {2007},
Bdsk-Url-1 = {http://amazon.de/o/ASIN/348658099X/}
}
\end{filecontents*}
\DeclareNameFormat{default}{%
\iffirstinits
{\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
{\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
\usebibmacro{name:andothers}}
\DeclareFieldFormat{volume}{\bibstring{volume}~#1; }% volume of a book
\begin{document}
Zitierter Text \cite[S. 86–197]{weltkriege}.

\printbibliography

\end{document}

Gruß
Marco

lockstep
29-12-2009, 18:48
Und als Ergänzung in die Präambel:



% AutorInnen-Nachname im Literaturverzeichnis in Großbuchstaben
\AtBeginBibliography{\renewcommand\mkbibnamelast[1]{\MakeUppercase{#1}}}


bzw.



% AutorInnen-Nachname im Literaturverzeichnis in Kapitälchen
\AtBeginBibliography{\renewcommand\mkbibnamelast[1]{\textsc{#1}}}


Ich hoffe, es dürfen auch Kapitälchen sein.

lockstep

Ephi
29-12-2009, 19:13
super leute! vielen vielen Dank für die schnelle Lösung.

Wenn es jetzt noch eine Lösung gäbe, nach den Autoren einen Doppelpunkt und nach dem Wert ein Semikolon, statt normaler Punkte zu setzen, wäre ich total glücklich!

Gruß

mechanicus
29-12-2009, 19:21
Hi,


nach den Autoren einen Doppelpunkt



\renewcommand*{\labelnamepunct}{\addcolon\space}


nach dem Wert ein Semikolon

Welcher Wert?


Gruß
Marco

EDIT: Falls du Bd meinst, achte mal darauf, wie ich deinen bib-Eintrag geändert habe.

Ephi
29-12-2009, 20:05
sorry, das war ein Tippfehler, ich meinte Werk, also nach den Titel des Buches allgemein.
nach dem Band macht er das jetzt auch, aber bei "normalen" einbändigen büchern kommt mach dem Titel immer ein punkt, da hätte ich gern noch ein semikolon.

Noch zwei kleine Wünsche:
1. Wie kann ich die Überschrift von "Literatur" in "Literaturverzeichnis" ändern?
2. Wie kann ich das Datumsformat von urldate von (besucht am 2009. Dez. 28) in (besucht am 28. Dez 2009) ändern? (ich benutze urldate=long)

mechanicus
29-12-2009, 21:26
Hallo,

probiere mal folgendes:

\documentclass[12pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[babel,german=quotes]{csquotes}
\usepackage[style=numeric,sorting=none,urldate=long,date=long, abbreviate=true]{biblatex}
\bibliography{quellen}
\usepackage{filecontents}
\begin{filecontents*}{quellen.bib}
@book{weltkriege,
Author = {Karl-Volker Neugebauer and Ernst W. Hansen and Gerhard P. Gro{\ss}},
Date-Modified = {2009-12-29 17:12:15 +0100},
Price = {EUR 19,80},
Publisher = {Oldenburg},
Timestamp = {2009.12.28},
volume ={2},
Title = {Grundkurs deutsche Milit{\"a}rgeschichte 2. Das Zeitalter der Weltkriege 1914 und 1945: V{\"o}lker in Waffen},
Totalpages = {464},
Year = {2007},
Bdsk-Url-1 = {http://amazon.de/o/ASIN/348658099X/},
urldate={2009-12-29}
}
\end{filecontents*}

\DeclareNameFormat{default}{%
\iffirstinits
{\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
{\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
\usebibmacro{name:andothers}}
\renewcommand*{\labelnamepunct}{\addcolon\space}
\renewcommand\mkbibnamelast[1]{\textsc{#1}}
\renewcommand*{\newunitpunct}{\addsemicolon\space}
\DefineBibliographyStrings{ngerman}{%
bibliography={Literaturverzeichnis}%
}


\begin{document}
Zitierter Text \cite[S. 86–197]{weltkriege}.

\printbibliography

\end{document}

Bzgl. des Datums:
Die Eingabe in der Bib muss wie folgt erfolgen:
Möglichkeit 1:

urldate={yyyy-mm-dd}
Möglichkeit 2:

urlyear={yyyy},
urlmonth={mm},
urlday={dd}

Der Monat ist damit aber nicht ausgeschrieben. Man kann das mittels der Option abbreviate=false erreichen. Der Nachteil ist aber, dass sich das auch auf die Namen auswirkt. Willst du es nur für die Monatsangabe haben, so musst du noch folgendes einfügen:

\DefineBibliographyStrings{ngerman}{%
january = {Januar},
february = {Februar},
...............
december = {Dezember},
}


Gruß
Marco

Ephi
30-12-2009, 00:59
Genial!

Das mit dem Datum lag wirklich nur am verkehrten Eintrag in der db.

Tausen Dank, jetzt entspricht mein Literaturverzeichnis allen vorgaben.

Ephi
30-12-2009, 20:37
Ich hab noch ne Frage:

Außerdem habe ich die Vorgabe, eine Kopie von Onlinequellen nach dem Literaturverzeichnis anzufügen. Dazu wollte ich einfach gerne die Jeweilige referenznummer [x] wie im Literaturverzeichnis links in einer Spalte haben und dann rechts daneben den Inhalt der Quelle.

Wie kann ich solche eine Formatierung wie im Literaturverzeichnis erstellen?

mechanicus
30-12-2009, 21:05
Hi,


\documentclass[12pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[babel,german=quotes]{csquotes}
\usepackage[style=numeric,sorting=none,urldate=long,date=long, abbreviate=true,defernums=true]{biblatex}
\bibliography{quellen}
\usepackage{filecontents}
\begin{filecontents*}{quellen.bib}
@book{weltkriege,
Author = {Karl-Volker Neugebauer and Ernst W. Hansen and Gerhard P. Gro{\ss}},
Date-Modified = {2009-12-29 17:12:15 +0100},
Price = {EUR 19,80},
Publisher = {Oldenburg},
Timestamp = {2009.12.28},
volume ={2},
Title = {Grundkurs deutsche Milit{\"a}rgeschichte 2. Das Zeitalter der Weltkriege 1914 und 1945: V{\"o}lker in Waffen},
Totalpages = {464},
Year = {2007},
Bdsk-Url-1 = {http://amazon.de/o/ASIN/348658099X/},
urldate={2009-12-29}
}
@article{onlinequelle,
Author = {Christian Faulhammer},
Title = {Was ist ein Minimalbeispiel?},
date = {2009-08-18},
url = {http://www.minimalbeispiel.de/mini.html},
urldate={2009-12-30},
keywords={online},
}
\end{filecontents*}
\nocite{*}
\DeclareNameFormat{default}{%
\iffirstinits
{\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
{\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
\usebibmacro{name:andothers}}
\renewcommand*{\labelnamepunct}{\addcolon\space}
\renewcommand\mkbibnamelast[1]{\textsc{#1}}
\renewcommand*{\newunitpunct}{\addsemicolon\space}
\DefineBibliographyStrings{ngerman}{%
bibliography={Literaturverzeichnis}%
}
\defbibheading{online}{\addchap{Onlinequellen}}

\begin{document}
Zitierter Text \cite[S. 86–197]{weltkriege}.

\printbibliography[notkeyword=online]

\printbibliography[heading=online,keyword=online]

\end{document}

Gruß
Marco

Ephi
30-12-2009, 22:17
Ich glaube du hast mich etwas falsch verstanden.
Ich brauche keine zwei getrennten verzeichnisse für Bücher und Online,
sondern EIN verzeichnis für beie (so wie ich das bis jetzt auch wunderbar habe).
Jetzt brauch ich nochmal ein Kapitel in welchem ich den Seiteninhalt der Onlinequellen einfügen muss. Dazu wollte ich einfach so wie im Vezeichnis die Nummer der jeweiligen Onlinequelle und rechts dann den Inhalt. Das hat denke ich nichts mehr mit biblatex zutun, nur weis ich nicht sorecht wie ich so ein Layout hinbekomme, wie im Literaturverzeichnis.

Ich hoffe mich halbwegs verständlich ausgedrückt zu haben,

Gruß

mechanicus
31-12-2009, 09:46
Jetzt brauch ich nochmal ein Kapitel in welchem ich den Seiteninhalt der Onlinequellen einfügen muss.
Das verstehe ich gar nicht. Mache bitte mal ein Minimalbeispiel, so dass man auch weiß, was damit gemeint ist.

Gruß
Marco