PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Literaturliste mit Zitatlabel als Überschrift



Speculi
17-07-2011, 01:16
Hallo, ich habe noch nicht so viel mit LaTeX gemacht, bin im allgemeinen aber sehr begeistert davon.

Nun zu meinem Problem:

Ich würde gerne ein paar, hoffentlich kleinere, anpassungen an meiner Literaturliste vornehmen. Ich verwende biblatex und den authoryear Stil.

Ich hätte nun gerne, dass bei jedem Literatureintrag das Label des Zitats als Überschrift des Eintrags steht.

Im Text habe ich nun Zitate in dieser Form:

"Hier ist eine Zitierte Stelle" (Stallman 1985)

Im Literaturteil soll nun folgendes stehen:


Stallman 1985
Stallman, Walter (1985). Eigentumsbegriff und Bodenordnung im histori-
schen Wandel. Linz: Institut für Kommunalwissenschaften.

Bis auf den fett geschriebenen Teil (soll auch in Tex fett sein) ist dies der authoryear Stil.

Kann mir dabei jemand helfen?

Hier noch mein Minimalbeispiel:



\documentclass[a4paper,12pt,titlepage]{article}

\usepackage{graphicx}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[ngerman,english]{babel}
\usepackage[ngerman]{translator}
\selectlanguage{ngerman}

\usepackage[style=authoryear]{biblatex}
\usepackage[babel,german=quotes]{csquotes}
\bibliography{literatur}

\usepackage[linkcolor=blue,urlcolor=blue,citecolor=blue,menuco lor=blue,colorlinks=true]{hyperref}

% ---- Content ----
\begin{document}

\section{Einleitung}
"`Hier ist eine Zitierte Stelle"' \parencite{stallman_1985}

% --- Bibliogrpahy ----
\cleardoublepage
\phantomsection
\addcontentsline{toc}{section}{Literatur}
\printbibliography

\end{document}


literatur.bib


@book{stallman_1985,
address = {Linz},
title = {Eigentumsbegriff und Bodenordnung im historischen Wandel},
publisher = {Institut für Kommunalwissenschaften},
author = {Stallman, Walter},
year = {1985}
}

mechanicus
17-07-2011, 10:11
Hi,


\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{stallman_1985,
address = {Linz},
title = {Eigentumsbegriff und Bodenordnung im historischen Wandel},
publisher = {Institut für Kommunalwissenschaften},
author = {Stallman, Walter},
year = {1985}
}
\end{filecontents}
\documentclass[a4paper,12pt,titlepage]{article}

\usepackage{graphicx}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[ngerman,english]{babel}
\usepackage[ngerman]{translator}
\selectlanguage{ngerman}

\usepackage{showframe}
\usepackage[style=authoryear]{biblatex}
\usepackage[babel,german=quotes]{csquotes}
\bibliography{\jobname}


\defbibenvironment{bibliography}
{\list%
{\printtext[]{\bfseries%
\printnames{labelname}\setunit{\addspace}%
\printfield{labelyear}%
}%
}%
{%
\setlength{\itemindent}{\leftmargin}%
\setlength{\leftmargin}{0pt}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}%
}%
}
{\endlist}
{\item\mbox{}\newline\noindent}


\usepackage[linkcolor=blue,urlcolor=blue,citecolor=blue,menuco lor=blue,colorlinks=true]{hyperref}

% ---- Content ----
\begin{document}

\section{Einleitung}
"`Hier ist eine Zitierte Stelle"' \parencite{stallman_1985}

% --- Bibliogrpahy ----
\cleardoublepage
%\phantomsection
%\addcontentsline{toc}{section}{Literatur} Das geht mittels biblatex
\printbibliography[heading=bibintoc]

\end{document}





Gruß
Marco

Speculi
17-07-2011, 15:32
Danke sehr, klappt wunderbar. Ich hätte nun noch zwei weitere Fragen:

Kann ich nach jedem Eintrag eine Leerzeile einfügen?


Stallman 1985
Stallman, Walter (1985). Eigentumsbegriff und Bodenordnung im histori-
schen Wandel. Linz: Institut für Kommunalwissenschaften.

Stallman 1985
Stallman, Walter (1985). Eigentumsbegriff und Bodenordnung im histori-
schen Wandel. Linz: Institut für Kommunalwissenschaften.

Momentan sitzen die beiden Einträge direkt bei einander.
Ich komme leider nicht darauf, wo ich ein \newline oder ähnliches einfügen müsste.

Ein weiteres "Problem" ist folgendes: Ich nutze hyperref um die Zitatstellen mit der Literaturliste zu verknüpfen, jedoch ist immer nur die Jahreszahl als Link angelegt, der Autorname gehört nicht zum Link. Kann man das ändern?

mechanicus
17-07-2011, 16:35
Kann ich nach jedem Eintrag eine Leerzeile einfügen?



\setlength{\bibitemsep}{1\baselineskip}



Ein weiteres "Problem" ist folgendes: Ich nutze hyperref um die Zitatstellen mit der Literaturliste zu verknüpfen, jedoch ist immer nur die Jahreszahl als Link angelegt, der Autorname gehört nicht zum Link. Kann man das ändern?

\renewbibmacro*{cite}{%
\iffieldundef{shorthand}
{\ifthenelse{\ifnameundef{labelname}\OR\iffieldund ef{labelyear}}
{\usebibmacro{cite:label}%
\setunit{\addspace}}
{\printtext[bibhyperref]{\printnames[]{labelname}}%
\setunit{\nameyeardelim}}%
\usebibmacro{cite:labelyear+extrayear}}
{\usebibmacro{cite:shorthand}}}

Führt zu:

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{stallman_1985,
address = {Linz},
title = {Eigentumsbegriff und Bodenordnung im historischen Wandel},
publisher = {Institut für Kommunalwissenschaften},
author = {Stallman, Walter},
year = {1985}
}
@book{test1999,
address = {Linz},
title = {Testeintrag für den Abstand},
publisher = {Institut für Kommunalwissenschaften},
author = {Vorname Nachname},
year = {1999}
}
\end{filecontents}
\documentclass[a4paper,12pt,titlepage]{article}

\usepackage{graphicx}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[ngerman,english]{babel}
\usepackage[ngerman]{translator}
\selectlanguage{ngerman}

\usepackage{showframe}
\usepackage[style=authoryear]{biblatex}
\usepackage[babel,german=quotes]{csquotes}
\bibliography{\jobname}


\defbibenvironment{bibliography}
{\list%
{\printtext[]{\bfseries%
\printnames{labelname}\setunit{\addspace}%
\printfield{labelyear}%
}%
}%
{%
\setlength{\itemindent}{\leftmargin}%
\setlength{\leftmargin}{0pt}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}%
}%
}
{\endlist}
{\item\mbox{}\newline\noindent}

\renewbibmacro*{cite}{%
\iffieldundef{shorthand}
{\ifthenelse{\ifnameundef{labelname}\OR\iffieldund ef{labelyear}}
{\usebibmacro{cite:label}%
\setunit{\addspace}}
{\printtext[bibhyperref]{\printnames[]{labelname}}%
\setunit{\nameyeardelim}}%
\usebibmacro{cite:labelyear+extrayear}}
{\usebibmacro{cite:shorthand}}}


\setlength{\bibitemsep}{1\baselineskip}
\usepackage[linkcolor=blue,urlcolor=blue,citecolor=blue,menuco lor=blue,colorlinks=true]{hyperref}

% ---- Content ----
\begin{document}

\section{Einleitung}
"`Hier ist eine Zitierte Stelle"' \parencite{stallman_1985}

\parencite{test1999}

% --- Bibliogrpahy ----
\cleardoublepage
%\phantomsection
%\addcontentsline{toc}{section}{Literatur} Das geht mittels biblatex
\printbibliography[heading=bibintoc]

\end{document}

Marco

Speculi
17-07-2011, 16:43
Danke sehr, das hat mir sehr geholfen! :)