PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Biblatex - Zitierweise ändern



Fite
30-10-2015, 10:36
Hallo zusammen,

ich bin seit Stunden daran, verschiedene biblatex-Probleme gleichzeitig in den Griff zu bekommen und scheitere gnadenlos. Ich benötige ganz dringend Hilfe für folgende Problemstellung (Minimalbeispiel siehe unten):

- Im Literaturverzeichnis müssen mehrere Autoren durch das &-Zeichen getrennt werden: Adler, Alfred & Metzger, Wolfgang 122006.

- Im Fließtext muss es aber heissen (ohne hochgestellt Zahl): Alfred Adler und Wolfgang Metzger (2006)

Kann mir hier irgendjmd helfen?

Viele Grüße
Fite



% Dokumentklasse
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}


\usepackage{csquotes}
\usepackage[style=authoryear,backend=biber]{biblatex}
\addbibresource{Lit.bib}

\begin{document}
\cite{Adler}
\printbibliography
\end{document}


Code für Lit.bib


@BOOK{Adler,
AUTHOR = "{Adler, Alfred and Metzger, Wolfgang} ",
TITLE = "Praxis und Theorie der Individualpsychologie",
PUBLISHER = "Fischer",
YEAR = {$^{12}$2006},
ADDRESS = "Frankfurt",
NOTE = "{}"
}


PS.: ich kann im .bbl-file manuell das and gegen ein /& austauschen, aber das kann es ja auch nicht sein, oder?

Johannes_B
30-10-2015, 20:21
Kleiner Tipp: Bei goLaTeX treibt sich gerade so ein biblatex-Geist rum. Der kann dir bestimmt auch bei deiner Frage helfen.

nixversteh
30-10-2015, 20:23
Hallo Fite,

studierst du etwa Psychologie oder eine artverwandte Studienrichtung? Dann nimm doch gleich bilatex-apa.

Hier ein Beispiel:

% Dokumentklasse
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[style=apa,
apabackref=true,
backend=biber,
hyperref=true,
maxbibnames=99,
sorting=debug,
natbib=true,
language=ngerman
]{biblatex}
\DeclareLanguageMapping{ngerman}{ngerman-apa}
%\DefineBibliographyStrings{ngerman}{andothers={et \ al\adddot}}
\addbibresource{Lit.bib}

\begin{document}
\cite{Adler}
\printbibliography
\end{document}

deine bidaten laufen bei mir nicht, habe sie verändert:

@BOOK{Adler,
AUTHOR = {Adler, Alfred and Metzger, Wolfgang} ,
TITLE = {Praxis und Theorie der Individualpsychologie},
PUBLISHER = {Fischer},
YEAR = {2006},
ADDRESS = {Frankfurt}
}

Gruß

Martin

Fite
30-10-2015, 22:45
Hi, vielen Dank für die Hilfe!
Schönen Abend noch! :)

nixversteh
30-10-2015, 23:26
TITLE = {{Praxis und Theorie der Individualpsychologie}},... so ist es besser

Gruß

Martin

Fite
31-10-2015, 09:14
Hallo Martin,

vielen Dank erstmal :)
Mir sind noch ein paar Dinge gekommen, die ich ändern müsste.
Allerdings habe ich kein .bst-file, wo ich diese ändern könnte und ich weiß nicht, wie ich das am besten bewerkstellige:

- Vornamen der Autoren dürfen nicht abgekürzt werden
- Die Jahreszahl im Literaturverzeichnis darf nicht in Klammern stehen
- Vor der kursiven Titelangabe muss manchmal noch ein weiterer Text stehen

Vielleicht hast du hier noch eine Idee.

Viele Grüße
Fite

nixversteh
31-10-2015, 09:35
Hallo Fite,

dann brauchst du kein Biblatex-apa, denn die apa-Richtlinien sind sehr streng. Schreibt dir die Uni das vor? Teste mal einen anderen biblatex-Stil. Ich selbst fummel nicht so gerne an bestehenden Stilen herum.

Gruß

Martin

Fite
31-10-2015, 09:39
Hallo Martin,

also der authoryear-style ist ziemlich gut. Hier fehlt mir nur noch das ominöse Textfeld VOR dem Title.
Ich könnte mir vorstellen, die Reihenfolge irgendwie zu ändern und z.B. den NOTE-Befehl vor den Title
zu ziehen. Aber da weiß ich jetzt nicht, wie man die Reihenfolge der biblatex-Einträge verändern kann... :)

Viele Grüße
Fite

rais
01-11-2015, 15:31
etwa so vllt:


% Dokumentklasse
\documentclass[12pt,a4paper]{article}
\begin{filecontents}{Lit.bib}
@BOOK{Adler,
editor = {Adler, Alfred and Metzger, Wolfgang},
TITLE = {Praxis und Theorie der Individualpsychologie},
PUBLISHER = {Fischer},
YEAR = {2006},
edition= 12,
ADDRESS = {Frankfurt},
NOTE = {Ein ominöser Text}
}
\end{filecontents}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[style=authoryear,backend=biber]{biblatex}
\addbibresource{Lit.bib}

% neues Format für editor (aus authoryear.bbx):
\renewbibmacro*{bbx:editor}[1]{%
\ifboolexpr{
test \ifuseeditor
and
not test {\ifnameundef{editor}}
}
{\usebibmacro{bbx:dashcheck}
{\bibnamedash}
{\printnames{editor}%
% \setunit{\addcomma\space}%
\setunit{\addspace}%
\usebibmacro{bbx:savehash}}%
% \usebibmacro{#1}%
\printtext[parens]{Hg}%
\clearname{editor}%
\setunit{\addspace}}%
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}%
\setunit*{\addspace}}%
\usebibmacro{date+extrayear}}

% & zwischen Namen:
\renewcommand*\multinamedelim{\addspace\&\addspace}
\renewcommand*\finalnamedelim{\addspace\&\addspace}

% keine Klammern ums Jahr (aus authoryear.bbx):
\renewbibmacro*{date+extrayear}{%
\iffieldundef{\thefield{datelabelsource}year}
{}
{\printtext{% <-- [parens] im Original
\printfield{issue}%
\setunit*{\addspace}%
% hochgestellte Auflage:
{}\textsuperscript{\printfield[default]{edition}}%
\iffieldsequal{year}{\thefield{datelabelsource}yea r}
{\printdateextralabel}%
{\printfield{labelyear}%
\printfield{extrayear}}}}}%

% und bisherige Ausgabe der Auflage unterdrücken (aus standard.bbx):
\DeclareBibliographyDriver{book}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\printfield{note}% <-- vorgezogen
\newunit\newblock
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
% \printfield{edition}% <-- hier nun keine Auflage mehr
% \newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
% \printfield{note}% <-- steht inzwischen weiter oben
% \newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}

\begin{document}
\cite{Adler}
\printbibliography
\end{document}

VG

Fite
01-11-2015, 17:06
Hi rais,

vielen Dank schonmal! :)
Was mir noch auffällt ist,

-dass die Angabe (Hg.) nur optional bei bestimmten Herausgebern stehen soll, also:

Adler, Alfred & Metzger, Wolfgang (Hg.) 2006....
Albertz, Rainer & Amann, Ulrike 2010...


Viele Grüße :)
Fite

rais
01-11-2015, 21:22
-dass ich noch ein ominöses Textfeld NACH dem Titel bräuchte. Ist es auch "erlaubt" einfach in NUMBER reinzuschreiben?

ich hab das mal auf die Felder usera (Text vorm) und userb (Text nach dem Titel) umgebaut.


-dass die Angabe (Hg.) nur optional sein soll

Bei Verwendung von author statt editor in der .bib wird ja auch kein (Hg) ausgegeben.



% Dokumentklasse
\documentclass[12pt,a4paper]{article}
\begin{filecontents}{Lit.bib}
@BOOK{Adler,
author = {Adler, Alfred and Metzger, Wolfgang},
TITLE = {Praxis und Theorie der Individualpsychologie},
PUBLISHER = {Fischer},
YEAR = {2006},
edition= 12,
ADDRESS = {Frankfurt},
usera= {Ein ominöser Text},
userb= {Noch ein ominöser Text}

}
\end{filecontents}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[style=authoryear,backend=biber]{biblatex}
\addbibresource{Lit.bib}

% generell Nachname, Vorname:
\DeclareNameAlias{editor}{last-first}
\DeclareNameAlias{author}{last-first}
% neues Format für editor (aus authoryear.bbx):
\renewbibmacro*{bbx:editor}[1]{%
\ifboolexpr{
test \ifuseeditor
and
not test {\ifnameundef{editor}}
}
{\usebibmacro{bbx:dashcheck}
{\bibnamedash}
{\printnames{editor}%
% \setunit{\addcomma\space}%
\setunit{\addspace}%
\usebibmacro{bbx:savehash}}%
% \usebibmacro{#1}%
\printtext[parens]{Hg}%
\clearname{editor}%
\setunit{\addspace}}%
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}%
\setunit*{\addspace}}%
\usebibmacro{date+extrayear}}

% & zwischen Namen:
\renewcommand*\multinamedelim{\addspace\&\addspace}
\renewcommand*\finalnamedelim{\addspace\&\addspace}

% keine Klammern ums Jahr (aus authoryear.bbx):
\renewbibmacro*{date+extrayear}{%
\iffieldundef{\thefield{datelabelsource}year}
{}
{\printtext{% <-- [parens] im Original
\printfield{issue}%
\setunit*{\addspace}%
% hochgestellte Auflage:
{}\textsuperscript{\printfield[default]{edition}}%
\iffieldsequal{year}{\thefield{datelabelsource}yea r}
{\printdateextralabel}%
{\printfield{labelyear}%
\printfield{extrayear}}}}}%

% und bisherige Ausgabe der Auflage unterdrücken (aus standard.bbx):
\DeclareBibliographyDriver{book}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\printfield{usera}% <-- umgetauft
\newunit\newblock
\usebibmacro{maintitle+title}%
\newunit\newblock
\printfield{userb}% <-- ergänzt
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
% \printfield{edition}% <-- hier nun keine Auflage mehr
% \newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}

% Klammern ums Jahr beim \cite (aus authoryear.cbx):
\renewbibmacro*{cite:labelyear+extrayear}{%
\iffieldundef{labelyear}
{}
{\printtext[parens]{% <--
\bibhyperref{% <--
\printfield{labelyear}%
\printfield{extrayear}}}}}

\begin{document}
\cite{Adler}
\printbibliography
\end{document}

VG

Fite
01-11-2015, 21:46
Größten Dank :) Läuft!