PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Biblatex Bücherzitate



Gast2013
27-06-2013, 17:01
Hallo,

Ich verwende biblatex und habe ein Problem mit dem zitieren von Büchern. Bei meinen Zitaten sollen bei mehreren Autoren nur der erste Autor et al. zitiert werden, wenn es nur zwei Autoren sind, sollen beide zitiert werden. Wenn ich einen Artikel zitiere funktioniert dies auch, nur bei Büchern nicht. Dort werden die ersten beiden Autoren et al. zitiert.
Ich habe folgendes in meiner Präambel stehen:

\usepackage[backend=biber,style=authoryear,natbib=true]{biblatex}
\addbibresource{./Literatur.bib}
\ExecuteBibliographyOptions{
bibencoding=utf8,
bibwarn=true,
firstinits=true,
uniquename=init,
doi=false,
isbn=false,
url=false,
eprint=false,
maxcitenames=2,
maxbibnames=99
}

\DeclareNameAlias{sortname}{last-first}
\renewbibmacro{in:}{% remove "in:" from articles.
\ifentrytype{article}{}{%
\printtext{\bibstring{in}\intitlepunct}}
}
\setlength\bibitemsep{0.5ex} % increase vertical space between bibliography items.
\setlength\bibnamesep{1.2ex} % increase vertical space between bibliography items.
\DefineBibliographyStrings{ngerman}{andothers={et\ al\adddot}}

\DeclareFieldFormat[article]{citetitle}{#1\midsentence}
%\DeclareFieldFormat{year}{\bfseries{#1}}
\DeclareFieldFormat[article]{title}{#1\midsentence}


\renewbibmacro*{cite}{% Adapted from cite macro in authoryear.cbx
\printtext[bibhyperref]{% Enclose cite macro output in hyperlink
\DeclareFieldAlias{bibhyperref}{default}% Prevent nested hyperlinks
\iffieldundef{shorthand}
{\ifthenelse{\ifnameundef{labelname}\OR\iffieldund ef{labelyear}}
{\usebibmacro{cite:label}%
\setunit{\addspace}}
{\printnames{labelname}%
\setunit{\nameyeardelim}}%
\usebibmacro{cite:labelyear+extrayear}}
{\usebibmacro{cite:shorthand}}}}

\DeclareCiteCommand{\textcite}% Adapted from \textcite command in authoryear.cbx
{\boolfalse{cbx:parens}}
{\usebibmacro{citeindex}%
\printtext[bibhyperref]{% Enclose textcite macro output in hyperlink
\DeclareFieldAlias{bibhyperref}{default}% Prevent nested hyperlinks
\DeclareFieldAlias{bibhyperref}{default}% Prevent nested hyperlinks
\usebibmacro{textcite}%
\iffieldundef{postnote}% Include closing parenthesis if no postnote
{\ifbool{cbx:parens}
{\bibcloseparen\global\boolfalse{cbx:parens}}
{}}
{}}}
{\ifbool{cbx:parens}
{\bibcloseparen\global\boolfalse{cbx:parens}}
{}%
\multicitedelim}
{\iffieldundef{postnote}
{}
{\usebibmacro{textcite:postnote}}}

\renewcommand{\baselinestretch}{1.25}
\addbibresource{biblatex-examples.bib}

% link color
\usepackage[pdftex,natural,dvipsnames]{xcolor}
\xdefinecolor{dblue}{rgb}{0,.1,.5}



Hat jemand eine Idee, wie ich dieses Problem beheben kann? Vielen Dank

bobmalaria
27-06-2013, 17:10
hi,

bitte poste code immer in der code-umgebung. ansosnten kann man ihn im forum schlecht lesen und auch schlecht herauskopieren. die code-umgebung ist der #-button im forum-editor. am besten aenderst du deinen post noch entsprechend.

ferner sind komplette beispiele am besten. zu dem was du gepostet hast muesste man sich erstmal einiges dazubasteln um es lauffaehig zu machen.

du verwendest maxcitenames=2, damit sollten eigentlich immer 2 autoren ausgegeben werden, bzw natuerlich nur einer wenn es einen gibt. hat dein buch 3 oder mehr autoren dann wir natuerlich ein et al angehaengt.

oder habe ich dich da falsch verstanden?

wie gesagt, am besten machst du ein lauffaehiges beispiel inklusive 2-3 testeintraegen der bib datei. eine bib datei kann man in der filecontents umgebung aus dem dokument heraus generieren lassen. so machst du es potentiellen helfern einfacher.

Moadin
27-06-2013, 20:51
Ich habe für meine Master Thesis dieses in meinem Stylefile verwendet und bei zwei Autoren kamen zwei, bei mehr als zwei kam et al.


\usepackage{url}
\usepackage[style=authoryear,language=ngerman,backend=bibtex8]{biblatex}
\usepackage[german=quotes]{csquotes}
\NewBibliographyString{url}
\urlstyle{same}
\setlength{\bibhang}{1.5em}
\setlength{\bibitemsep}{0.5em}
\DefineBibliographyStrings{german}{andothers = {{et\,al\adddot}},editor = {(Hrsg.)},editors = {(Hrsg.)}}
\DefineBibliographyStrings{ngerman}{urlseen={Zugri ff:}}
\DeclareFieldFormat{urldate}{[\bibstring{urlseen}\space#1]}
\DeclareFieldFormat{year}{\bibstring{year}}

\bibliography{literatur}


In der Bibliothek (bei mir heisst das File "literatur") habe ich folgendes eingetragen:


@book{loderer,
author={Claudio Loderer and Petra Jörg and Karl Pichler and Lukas Roth and Pius Zgraggen},
year={2005},
title={Handbuch der Bewertung},
edition={3},
address={Zürich},
puplisher={Verlag Neue Zürcher Zeitung},
language={deutsch},
}

@article{gantenbein,
author={Pascal Gantenbein and Marco Gehrig},
year={2007},
title={Moderne {U}nternehmensbewertung},
publisher={Treuhand-Kammer},
address={Zürich},
journal={Der Treuhänder},
volume={9},
pages={602--612},
}

So hat es wunderbar funktioniert. Bei der ersten Quelle gibt er im Text Loderer et al. und bei der zweiten Quelle kommen beide Namen (Gantenbein und Gehrig).

Weiterhin viel Spass!

Gast2013
28-06-2013, 10:42
Hallo,

Ich möchte wie folgt ziteiren: ab zwei Autoren et al. und bei nur zwei Autoren beide zitieren.

Hier noch mal meine Präambel:


\usepackage[backend=biber,style=authoryear,natbib=true]{biblatex}
\addbibresource{./Literatur.bib}
\ExecuteBibliographyOptions{%
bibencoding=utf8,
bibwarn=true, % Warnung bei fehlerhafter bib-Datei
firstinits=true, % Initialen
uniquename=init,
doi=false, % Keine DOI
isbn=false, % Keine ISBN
url=false, % Keine URL
eprint=false, % Keine ePrint
maxcitenames=2,
maxbibnames=99
% Ab vier Autoren wird et al. benutzt
}

\DeclareNameAlias{sortname}{last-first} % Sortierung der Namen als Nachname, Vorname
\renewbibmacro{in:}{% remove "in:" from articles.
\ifentrytype{article}{}{%
\printtext{\bibstring{in}\intitlepunct}}
}

\setlength\bibitemsep{0.5ex} % increase vertical space between bibliography items.
\setlength\bibnamesep{1.2ex} % increase vertical space between bibliography items.
\DefineBibliographyStrings{ngerman}{andothers={et\ al\adddot}}

\DeclareFieldFormat[article]{citetitle}{#1\midsentence}
%\DeclareFieldFormat{year}{\bfseries{#1}}
\DeclareFieldFormat[article]{title}{#1\midsentence}



Manchmal funktioniert dies, manchmal nicht. Ich finde jedoch das Problem nicht.
Hier ein Beispiel, bei dem es nicht funktioniert:



@article{Joeckel2010,
author = {J\"{o}ckel, P. and Kerkweg, A. and Pozzer, A. and Sander, R. and Tost, H. and Riede, H. and Baumgaertner, A. and Gromov, S. and Kern, B.},
journal = {Geoscientific Model Development},
pages = {717--752},
title = {Development cycle 2 of the Modular Earth Submodel System (MESSy2)},
volume = {3},
year = {2010}
}


Ich verwende das Paket natbib. Wenn ich dieses Paper mit \citep{Joeckel2010} zitiere erhalte ich (Jöckel, Kerkweg et al., 2010). Ich möchte jedoch (Jöckel et al., 2010)

Nun ein Beispiel, bei dem es funktioniert:



@article{Adler2003,
author = {Adler, R. F. and Huffman, G. J. and Chang, A. and Ferraro, R. and Xie, P.-P. and Janowiak, J. and Rudolf, B. and Schneider, U. and Curtis, S. and Bolvin, D. and Gruber, A. and Susskind, J. and Arkin, P. and Nelkin, E.},
journal = {Journal of Hydrometeorology},
pages = {1147--1167},
title = {The Version-2 Global Precipitation Climatology Project (GPCP) Monthly Precipitation Analysis (1979–Present)},
volume = {4},
year = {2003}
}


Bei zwei Autoren funktioniert es immer, dass dann auch beide zitiert werden.
Hat jemand eine Idee?
Danke.

Sepp99
29-06-2013, 06:21
Ich verwende das Paket natbib.

Tust du nicht, du verwendest das Paket biblatex mit der Option natbib. Das Problem ist nicht nachvollziehbar, als vollständiges Beispiel

\listfiles
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß}
}
\usepackage[ngerman]{babel}
\usepackage{filecontents}
\begin{filecontents}{Literatur1.bib}
@article{Joeckel2010,
author = {J\"{o}ckel, P. and Kerkweg, A. and Pozzer, A. and Sander, R. and Tost, H. and Riede, H. and Baumgaertner, A. and Gromov, S. and Kern, B.},
journal = {Geoscientific Model Development},
pages = {717--752},
title = {Development cycle 2 of the Modular Earth Submodel System (MESSy2)},
volume = {3},
year = {2010}
}
@article{Adler2003,
author = {Adler, R. F. and Huffman, G. J. and Chang, A. and Ferraro, R. and Xie, P.-P. and Janowiak, J. and Rudolf, B. and Schneider, U. and Curtis, S. and Bolvin, D. and Gruber, A. and Susskind, J. and Arkin, P. and Nelkin, E.},
journal = {Journal of Hydrometeorology},
pages = {1147--1167},
title = {The Version-2 Global Precipitation Climatology Project (GPCP) Monthly Precipitation Analysis (1979–Present)},
volume = {4},
year = {2003}
}
\end{filecontents}

\usepackage{csquotes}
\usepackage[backend=biber,style=authoryear,natbib=true]{biblatex}
\addbibresource{Literatur1.bib}
\ExecuteBibliographyOptions{%
bibencoding=utf8,
bibwarn=true, % Warnung bei fehlerhafter bib-Datei
firstinits=true, % Initialen
uniquename=init,
doi=false, % Keine DOI
isbn=false, % Keine ISBN
url=false, % Keine URL
eprint=false, % Keine ePrint
maxcitenames=2,
maxbibnames=99
% Ab vier Autoren wird et al. benutzt
}

\DeclareNameAlias{sortname}{last-first} % Sortierung der Namen als Nachname, Vorname
\renewbibmacro{in:}{% remove "in:" from articles.
\ifentrytype{article}{}{%
\printtext{\bibstring{in}\intitlepunct}}
}

\setlength\bibitemsep{0.5ex} % increase vertical space between bibliography items.
\setlength\bibnamesep{1.2ex} % increase vertical space between bibliography items.
\DefineBibliographyStrings{ngerman}{andothers={et\ al\adddot}}

\DeclareFieldFormat[article]{citetitle}{#1\midsentence}
%\DeclareFieldFormat{year}{\bfseries{#1}}
\DeclareFieldFormat[article]{title}{#1\midsentence}

\begin{document}
\cite{Joeckel2010} \cite{Adler2003}

\citep{Joeckel2010} \citep{Adler2003}

\citet{Joeckel2010} \citet{Adler2003}

\printbibliography

\end{document}
erhalte ich das Gewünschte, siehe Anhang.

Gruß, Sepp