Seite 1 von 1

Für authoryear Label in Bibliographie erstellen (biblatex)

Verfasst: Do 10. Okt 2013, 21:24
von Tom
Hallo liebe Latex-Freunde,

ich habe ein Problem bei meinem Literaturverzeichnis. Ich arbeite mit biblatex und verwende den authoryear-Stil. Ich habe diesen bereits weitestgehend auf meine Bedürfnisse angepasst, es gibt nur noch ein Problem: Ich hätte gerne, dass auch im Literaturverzeichnis die Labels (bestehend aus Nachname(n) + Jahr) angezeigt werden, ähnlich wie im Fließtext beim zitieren. Im Literaturverzeichnis sollen sie allerdings dann auch fett erscheinen. Hier ein Beispiel wie es sein soll:

Im Fließtext: Das wurde so gesagt (Bögelsack et al. 1985).

Im Literaturverzeichnis:

Bögelsack et al. 1985

Bögelsack, G.; Kallenbach, E.; Linnemann, G. (1985): Roboter in der Gerätetechnik.
Heidelberg: A. Hüthig. isbn: 3778510428.

Hier ist mal mein Minimalbeispiel (ich hoffe, dass es eins ist):

Tex-Datei:
\documentclass{scrreprt}

% Deutsch nach neuer Rechtschreibung
\usepackage[ngerman]{babel}

% Einstellungen für Literaturverzeichnis
\usepackage[babel, german=quotes]{csquotes}
\usepackage[style=authoryear, maxcitenames=2, firstinits=true, uniquename=init, backend=biber]{biblatex} % Latex, Biber (Ausgabe -> Bibtex), Latex, Latex

% Anpassen des Literaturverzeichnisses
\AtBeginBibliography{%
	\renewcommand*{\multinamedelim}{\addsemicolon\space}% mehrere Namen durch Semikolon plus Leerzeichen trennen
  \renewcommand*{\finalnamedelim}{\addsemicolon\space}% vor letzten Namen Semikolon plus Leerzeichen
	\renewcommand{\labelnamepunct}{\addcolon\space} % Doppelpunkt nach Label
	\DeclareFieldFormat{title}{#1\isdot} % Titel in Normalschrift, nicht kursiv
	\DeclareNameFormat{sortname}{% Sortieren der Namen auf das Format Nachname, Vorname
  \iffirstinits
  {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
  {\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
  \usebibmacro{name:andothers}}
}

\DefineBibliographyStrings{ngerman}{andothers={et\ al\adddot}} % u.a. wird zu et al.
	
\addbibresource{Label.bib}

\begin{document}

\cite{Bogelsack.1985}

\printbibliography

\end{document}
Bib-Datei (Label.bib):
@book{Bogelsack.1985,
 author = {B{\"o}gelsack, G. and Kallenbach, Eberhard and Linnemann, Gerhard},
 year = {1985},
 title = {Roboter in der Ger{\"a}tetechnik},
 address = {Heidelberg},
 publisher = {A. H{\"u}thig},
 isbn = {3778510428}
}
Man müsste Latex also sagen, dass es für das Literaturverzeichnis auch die Labels ausgibt (wie im Fließtext). Hab jetzt schon viele Stunden mit googeln usw. verbracht, aber nichts dazu gefunden...:( Hat da jemand vielleicht eine Idee?

Vielen Dank schon mal im Voraus!

Viele Grüße,
Tom

suche ich auch

Verfasst: Do 23. Jan 2014, 09:44
von EMRir
genau das suche ich auch. gefunden habe ich nur die Erstellung eines Labels nach alphabetic, aber wenn mehrere Autoren vorhanden sind soll nur der Erste mit vollem Nachnahmen dort stehen
% Anpassen des Literaturverzeichnisses 
\DeclareLabelalphaTemplate{
  \labelelement{
    \field[final]{shortauthor}
    \field{label}
    \field[strside=left,ifnames=1]{labelname}
    \field[strwidth=2,strside=left]{labelname}
    \field[final,strwidth=10]{citekey}
  }
 \labelelement{
    \literal{\,}
  }
  \labelelement{
    \field[strwidth=4,strside=right]{year}    
  }
}

% Add labels to bibliography - taken from alphabetic.bbx
\DeclareFieldFormat{labelalphawidth}{\mkbibbrackets{#1}}
\defbibenvironment{bibliography}
  {\list
     {\printtext[labelalphawidth]{%
        \printfield{prefixnumber}%
        \printfield{labelalpha}%
        \printfield{extraalpha}}}
     {\setlength{\labelwidth}{\labelalphawidth}%
      \setlength{\leftmargin}{\labelwidth}%
      \setlength{\labelsep}{\biblabelsep}%
      \addtolength{\leftmargin}{\labelsep}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}%
      \renewcommand*{\makelabel}[1]{##1\hss}}
  {\endlist}
  {\item}
% Zitat ende

Verfasst: Do 23. Jan 2014, 16:53
von Tom
Hi EMRir,

versuchs mal damit, hat zumindest bei mir funktioniert:
\AtBeginBibliography{%
	\renewbibmacro{begentry}{%
   \textbf{\printnames[biblabel]{labelname}~%
					\printfield{labelyear}%
					\printfield{extrayear}}\\
					}
}
Vielleicht hilft dir das ja.

Gruß
Tom

Verfasst: Fr 24. Jan 2014, 11:03
von sudo
Wäre natürlich am besten gewesen, gleich im ersten Post auf den Crosspost auf TeX.sx hinzuweisen.

Verfasst: Fr 24. Jan 2014, 11:52
von Tom
Stimmt, mein Fehler! :wink:

Danke, dass du das nachgeholt hast!