Für authoryear Label in Bibliographie erstellen (biblatex)

Erstellung eines Literaturverzeichnisses mit BibTeX, Biber, BibLaTeX und Co.


Tom
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Fr 8. Feb 2013, 22:10

Für authoryear Label in Bibliographie erstellen (biblatex)

Beitrag 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

EMRir

suche ich auch

Beitrag 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

Tom
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Fr 8. Feb 2013, 22:10

Beitrag 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

sudo
Forum-Guru
Forum-Guru
Beiträge: 459
Registriert: Mi 3. Okt 2012, 11:32

Beitrag von sudo »

Wäre natürlich am besten gewesen, gleich im ersten Post auf den Crosspost auf TeX.sx hinzuweisen.
Ein vollständiges Minimalbeispiel (VM) zu erzeugen, ist gar nicht schwer und hilft ganz oft, Fehler selber zu finden. Ohne bekommt man selten gute Antworten. Anleitungen findest du z.B. im golatex Wiki auf TeXWelt oder minimalbeipiel.de
Außerdem hilft das Lesen dieser Seite, Fragen richtig zu stellen.

Tom
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Fr 8. Feb 2013, 22:10

Beitrag von Tom »

Stimmt, mein Fehler! :wink:

Danke, dass du das nachgeholt hast!

Antworten