PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Namen im Literaturverzeichnis



Richmand
21-01-2012, 02:03
Hi.

Ich habe folgendes Problem und zwar möchte ich demnächst anfangen meine Abschlussarbeit zu dokumentieren und habe mich nach einiger Einarbeitungszeit dazu entschieden dies mit Latex zu tun. Leider habe ich noch nicht den vollen Durchblick und komme nun an folgender Stelle nicht weiter. Ich möchte das Literaturverzeichnis in folgender Weise formatieren:

http://matheplanet.com/matheplanet/nuke/html/uploads/8/23909_beispiel-lit.png

Die Referenz im Text soll dann abhängig von der Anzahl der Autoren durch "Name + Jahr", "Name und Name + Jahr" oder "Name et al + Jahr" sein. Ich habe dazu auch folgenden Code gefunden, der auch weitestgehend alle Anforderungen erfüllt, AUßER, dass er eben auch im Literaturverzeichnis die "et al" Formatierung verwendet (wo eigentlich alle Namen aufgezählt werden sollten).
Könnte mir bitte jemand helfen den Code dementsprechend anzupassen, da ich leider selber nicht so ganz verstehe, was da eigentlich passiert. Ich habe zwar das Gefühl, es hängt mit den rot markierten Zeilen zusammen, kann mir aber nicht erklären, warum es nicht funktioniert.




\RequirePackage{filecontents}
\begin{filecontents*}{\jobname.bib}

@book{Logistiknetzwerke,
address = {Wiesbaden},
author = {Mattfeld, D. C. and Vahrenkamp, R. },
edition = {1. Auflage},
howpublished = {Broschiert},
publisher = {Gabler},
title = {Logistiknetzwerke: Modelle f\"{u}r Standortwahl und Tourenplanung},
year = {2007}
}

@book{Gamma04,
author = {Gamma, E. and R. Helm and Johnson, R.},
howpublished = {Hardcover},
address = {M\"{u}nchen u.\,a.},
month = {Juli},
publisher = {Addison-Wesley Verlag},
title = {{Entwurfsmuster: Elemente wiederverwendbarer objektorientierter Software (Deutsche \"{U}bersetzung von D. Riehle)}},
year = {2004}
}

@book{test,
author = {Vorname Nachname},
title = {Eintrag zum testen},
year = {2004}
}
\end{filecontents*}
\documentclass{article}

\usepackage{mathptmx}
\usepackage[scaled]{helvet}

% Literaturverzeichnis
\usepackage[style=authoryear,maxnames=2]{biblatex}%
\bibliography{\jobname}

\DeclareNameFormat{sortname}{%
\ifnum\value{listcount}=1\relax
\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}%
\else
\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}%
\fi
\usebibmacro{name:andothers}}

\DeclareNameFormat{initsonly}{%
\usebibmacro{name:first-last}{#2}{#4}{#6}{#8}%
\usebibmacro{name:andothers}}

\DeclareNameAlias{sortname}{last-first/first-last}

\nocite{*}
\begin{document}

textcite:
\\
\textcite{Logistiknetzwerke}
\\
\textcite{Gamma04}

cite:
\\
\cite{Gamma04}
\\
\cite{Logistiknetzwerke}


\setlength{\bibitemsep}{12pt}
\printbibliography[title=Literaturverzeichnis,maxnames=5]

\end{document}


Vielleicht sollte ich als Hilfe noch die generierten Warnungen erwähnen:

1. LaTeX Warning: Overwriting file ./Test.bib'.
2. Package biblatex Warning: BibTeX reported the following issues with 'Gamma04': - Invalid format of field 'month'. (?????)
3. Package biblatex Warning: Deprecated option. Ignoring 'maxnames' on input line 73. (die zweite rot markierte Zeile - hier liegt meiner Meinung nach das Problem, weiß aber nicht warum er den Parameter nicht akzeptiert?!)



Vielen Dank,
Richmand

rais
21-01-2012, 09:43
Moin moin,


1. LaTeX Warning: Overwriting file ./Test.bib'.

das ist bei Verwendung des filecontents-Pakets ab dem zweiten (pdf)LaTeX-Lauf normal.


2. Package biblatex Warning: BibTeX reported the following issues with 'Gamma04': - Invalid format of field 'month'. (?????)

Bei `month' erwartet biblatex einen Integerwert, also bei Gamma04:


month = {7},



3. Package biblatex Warning: Deprecated option. Ignoring 'maxnames' on input line 73. (die zweite rot markierte Zeile - hier liegt meiner Meinung nach das Problem, weiß aber nicht warum er den Parameter nicht akzeptiert?!)

Weil's dafür inzwischen eine andere Option gibt:


\usepackage[style=authoryear,maxcitenames=2,maxbibnames=5]{biblatex}%

siehe auch texdoc biblatex.

MfG

Richmand
24-01-2012, 22:01
Sorry, hat ein bisschen länger gedauert, aber trotzdem VIELEN VIELEN DANK! Jetzt habe ich nur noch ein Problem und zwar möchte ich gerne, dass im Text bei mehreren Autoren (>2) "et al." ausgegeben wird. Prinzipiell funktioniert das auch, allerdings verwende ich in meinem Hauptdokument das Paket "babel" und das Sprachpaket "ngerman" und ich jetzt steht bei den Referenzen jedesmal "u.a.". Ich habe schon ein wenig recherchiert und gesehen, dass man mit \selectlanguage mehrere Sprachen wählen kann (z.B. ngerman & english), aber bedeutet das, dass ich jetzt vor jeder Referent die Sprache wechseln muss, oder gibt es da möglicherweise eine einfachere Lösung wie ich von u.a. auf et al umstellen kann??

Gruß,
Richmand

Richmand
24-01-2012, 23:00
Hab's! Einfach beim Einbinden des Pakets "biblatex" auf Englisch einstellen!


\usepackage[... ,language=english, ...]{biblatex}

Gruß,
Richmand