Richmand
21-01-2012, 03: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
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