BibLaTex: Probleme beim Literaturverzeichnisstyle Thema ist als GELÖST markiert

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


S4gast

BibLaTex: Probleme beim Literaturverzeichnisstyle

Beitrag von S4gast »

Hallo zusammen,

nach dem ich das ganze Wocheende mit Biblatex verbracht habe und etliche Internetseiten über Biblatex und die Struktur hinter Biblatex gelesen habe, komme ich an einen Punkt mehr weiter:

So wie ich das bisher verstanden habe sorgt die .bbx-Datei für das aussehen des Literaturverzeichnisses. Die .cbx für die Zitate an sich. Beide sind aber auch im gewissen Grad abhängig voneinander.

Für meine Bericht meiner DHBW wollte ich LaTex nutzen, da ich schon mehrere Dinge damit relisiert habe und es bisher wesentlich einfach als Word und Co für mich war. Das änderte sich nun bei der Umsetuzung der Vorgaben für das Literaturverzeichnis:

Bücher. [@BOOK]:
- Zitate werden im Text selbst mit [1] [2] usw. gekennzeichnet.
- Literaturverzeichnis ist von [1] - [XY] aufsteigend geordnet.
- Herausgeber mit "Hrsg.:" in Klammern
- Nummer des Bandes nur bei mehrbändigen Werken
- Nummer der Auflage nur, wenn nicht erste Auflage
- kein Komma zwischen Erscheinungsort und -jahr
- (am besten "Dreispalten" Layout)
- Nur Initialien des Vornamens

Bsp.:
[1]    Nachname, Vorname (Erscheinungsjahr):    Titel, ggf Untertitel, ggf. Schriftreihe, (Hrsg.:), Band, Auflage, Erscheinungsort Erscheinungsjahr
[2]    Nachname, Vorname (Erscheinungsjahr):    Titel, ggf Untertitel, ggf. Schriftreihe, (Hrsg.:), Band, Auflage, Erscheinungsort Erscheinungsjahr
usw....

Soweit so gut:
Ich habe mir also den Style "numeric" ausgesucht, weil ich dabei nur in der .bbx etwas bearbeiten müsste und ich eigtl. dachte die Reihenfolge zu ändern wäre nicht so schwer...

Ist:
[1] Ortmann, A. (2010): Johann Wolfgang Goethe, Iphigenie auf Tauris - Inhalt, Hin-
     tergrund, Interpretation ; mit Info-Klappe. 4. Auflage. Musterstadt: Verlag (siehe
      S. 1).
Soll:
[1]   Ortmann, A. (2010):   Johann Wolfgang Goethe, Iphigenie auf Tauris - Inhalt, Hin-
                              tergrund, Interpretation ; mit Info-Klappe[color=red], (Hrsg.: Verlag), 4. Auflage, Musterstadt 2010[/color] (siehe S. 1).
Vorgaben Beispiel:
[1]     Bodem, H. u.a. (1984):      Kommunikationstechnik und Wirtschaftlichkeit, Forschungsprojekt Bürokummunikation, Band 5, München 1984
Es geht also hautsächlich um den letzten Teil des Belegs.

Nun zum Quellcode:

minimal.tex
\documentclass[titlepage=on,12pt,numbers=noendperiod,bibliography=totoc]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english,ngerman]{babel}
\usepackage{csquotes}

\usepackage[
	backend=bibtex,		
	bibwarn=true,
	bibencoding=ascii,	
	sortlocale=de_DE,
	isbn=false,
	style=numericmystyle,
	sorting=none
]{biblatex}

\bibliography{bibliographie}

\begin{document}
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam. 
\cite{Ortmann2010}

\cleardoublepage
\printbibliography
\end{document}


bibliographie.bib
@BOOK{Ortmann2010,
	AUTHOR = {Ortmann, Angelika},
	YEAR = {2010},
	TITLE = {Johann Wolfgang Goethe, Iphigenie auf Tauris - Inhalt, Hintergrund, Interpretation ; mit Info-Klappe},
	EDITION = {4. Auflage.},
	ISBN = {978-3-580-65361-3},
	PUBLISHER = {Verlag},
    ADDRESS = {Musterstadt},
}


numericmysytle.bbx (.cbx gibts auch ist aber gleich der numeric.cbx)
\ProvidesFile{numericmystyle.bbx}
[\abx@bbxid]

%Zusätze-----
\RequireBibliographyStyle{standard}
\RequireBibliographyStyle{authoryear}
\ExecuteBibliographyOptions{labelnumber}

\DeclareNameFormat{mynameshort}{%
\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}%
\usebibmacro{name:andothers}}

\DefineBibliographyStrings{german}{%
andothers = {{et\,al\adddot}}, 
editor = {(Hrsg.)},
editors = {(Hrsg.)}}

\DeclareNameAlias{author}{mynameshort}
\DeclareNameAlias{editor}{mynameshort}
\DeclareNameAlias{translator}{mynameshort}
\renewcommand*{\labelnamepunct}{\addcolon\addspace}

\ExecuteBibliographyOptions{%
maxbibnames=99,
backref=true
}%
%Ende------

\providebool{bbx:subentry}

\DeclareBibliographyOption{subentry}[true]{%
  \setbool{bbx:subentry}{#1}}

\DeclareFieldFormat{bibentrysetcount}{\mkbibparens{\mknumalph{#1}}}
\DeclareFieldFormat{labelnumberwidth}{\mkbibbrackets{#1}}
\DeclareFieldFormat{shorthandwidth}{\mkbibbrackets{#1}}

\defbibenvironment{bibliography}
  {\list
     {\printtext[labelnumberwidth]{%
	\printfield{prefixnumber}%
	\printfield{labelnumber}}}
     {\setlength{\labelwidth}{\labelnumberwidth}%
      \setlength{\leftmargin}{\labelwidth}%
      \setlength{\labelsep}{\biblabelsep}%
      \addtolength{\leftmargin}{\labelsep}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}%
      \renewcommand*{\makelabel}[1]{\hss##1}}
  {\endlist}
  {\item}

\defbibenvironment{shorthand}
  {\list
     {\printfield[shorthandwidth]{shorthand}}
     {\setlength{\labelwidth}{\shorthandwidth}%
      \setlength{\leftmargin}{\labelwidth}%
      \setlength{\labelsep}{\biblabelsep}%
      \addtolength{\leftmargin}{\labelsep}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}%
      \renewcommand*{\makelabel}[1]{\hss##1}}}
  {\endlist}
  {\item}

\DeclareBibliographyDriver{set}{%
  \entryset
    {\ifbool{bbx:subentry}
       {\printfield[bibentrysetcount]{entrysetcount}%
	\printunit*{\addnbspace}}
       {}}
    {}%
  \newunit\newblock
  \usebibmacro{setpageref}%
  \finentry}
 
\setlength{\bibitemsep}{10pt} %Zusatz
\endinput


Nun ist meine Frage: Wie bekomme ich mein Literaturverzeichnis entsprechend den Vorgaben?

(evtl. Quellen zum nachlesen für mich oder jemand von euch gibt mir ein Beispiel dazu vor... (muss das ganz dann auch noch für Internetquellen, Zeitungsartikeln etc. anfertigen... Bücher wären aber für den Anfang am wichtigsten...))

Bin ich mit BibLatex überhaupt auf dem richtigen Weg?
Ist diese Vorgabe überhaupt mit LaTex zu realisieren? (Benötige die Vorlage dann für ca 6 weitere Dokumente mit 90-120 Seiten Umfang)


Ich hoffe ihr könnte mir behilflich sein :)
Da es mein erster Post ist hoffe ich, dass alle so in etwa den Vorgaben entspricht ;)

Viele Grüße S4cro

S4gast

Beitrag von S4gast »

Hat niemand eine Idee, Tipp oder Link der mir evtl. noch weiterhelfen könnte?


Gruß S4cro

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4300
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Mein Tipp wäre: Stelle konkretere Frage.

"Wie bekomme ich mein Literaturverzeichnis entsprechend den Vorgaben?" verlangt nämlich eine ganze Menge Analyse und damit schon einen ziemlichen Zeitaufwand, nur um rauszufinden, was dein Problem ist.

Und falls sich dann herausstellt, dass du eigentlich ganz viele Fragen hast: Splitte sie auf mehrere Postings. biblatex-Fragen, die so aussehen, als könne man sie relativ schnell beantworten, bekommen eher Antworten.
Bin ich mit BibLatex überhaupt auf dem richtigen Weg?
Ist diese Vorgabe überhaupt mit LaTex zu realisieren?
Höchstwahrscheinlich. Mit biblatex geht so ziemlich alles, wenn auch einiges aufwändig werden kann.

S4gast

Beitrag von S4gast »

Ok Vielen Dank für die Antwort ;) So weiß ich wenigsten was Sache ist!


Habe nochmals mich weiter eingelesen BibliographyDriver entdeckt, der für die Anordnung der Elemente sorgt und einiges schon in Richtung meiner Vorgaben ändern können...

Ausgabe zurzeit:
[1] Ortmann, A./Johnsen, M. (2010): Johann Wolfgang Goethe, Iphigenie auf Tauris -
      Inhalt, Hintergrund, Interpretation ; mit Info-Klappe. Verlag. 4. Auflage. Muster-
      stadt/Musterort. 2010
.bbx
\ProvidesFile{numericmystyletwo.bbx}
[\abx@bbxid]


\RequireBibliographyStyle{standard}
\RequireBibliographyStyle{authoryear}

\ExecuteBibliographyOptions{labelnumber}

\DeclareNameFormat{mynameshort}{%
\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}%
\usebibmacro{name:andothers}}

\DeclareNameAlias{author}{mynameshort}
\DeclareNameAlias{editor}{mynameshort}
\DeclareNameAlias{translator}{mynameshort}
\renewcommand*{\labelnamepunct}{\addcolon\addspace}

\ExecuteBibliographyOptions{%
maxbibnames=99,
backref=false
}%

\renewcommand*{\multinamedelim}{\addslash}
\renewcommand*{\finalnamedelim}{\addslash}
\renewcommand*{\multilistdelim}{\addslash}
\renewcommand*{\finallistdelim}{\addslash}

\renewcommand{\finentrypunct}{}

\DeclareBibliographyDriver{book}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/editor+others/translator+others}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{maintitle+title}%
  \newunit
  \printlist{language}%
  \newunit\newblock
  \usebibmacro{byauthor}%
  \newunit\newblock
  \usebibmacro{byeditor+others}%
  \printlist{publisher}%
  \newunit\newblock
  \newunit\newblock
  \printfield{edition}%
  \newunit
  \iffieldundef{maintitle}
    {\printfield{volume}%
     \printfield{part}}
    {}%
  \newunit
  \printfield{volumes}%
  \newunit\newblock
  \usebibmacro{series+number}%
  \newunit\newblock
  \printfield{note}%
  \newunit\newblock
  \usebibmacro{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}}
    {}%
     \printdate
    \usebibmacro{finentry}
  }


\providebool{bbx:subentry}

\DeclareBibliographyOption{subentry}[true]{%
  \setbool{bbx:subentry}{#1}}

\DeclareFieldFormat{bibentrysetcount}{\mkbibparens{\mknumalph{#1}}}
\DeclareFieldFormat{labelnumberwidth}{\mkbibbrackets{#1}}
\DeclareFieldFormat{shorthandwidth}{\mkbibbrackets{#1}}

\defbibenvironment{bibliography}
  {\list
     {\printtext[labelnumberwidth]{%
	\printfield{prefixnumber}%
	\printfield{labelnumber}}}
     {\setlength{\labelwidth}{\labelnumberwidth}%
      \setlength{\leftmargin}{\labelwidth}%
      \setlength{\labelsep}{\biblabelsep}%
      \addtolength{\leftmargin}{\labelsep}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}%
      \renewcommand*{\makelabel}[1]{\hss##1}}
  {\endlist}
  {\item}

\defbibenvironment{shorthand}
  {\list
     {\printfield[shorthandwidth]{shorthand}}
     {\setlength{\labelwidth}{\shorthandwidth}%
      \setlength{\leftmargin}{\labelwidth}%
      \setlength{\labelsep}{\biblabelsep}%
      \addtolength{\leftmargin}{\labelsep}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}%
      \renewcommand*{\makelabel}[1]{\hss##1}}}
  {\endlist}
  {\item}

\DeclareBibliographyDriver{set}{%
  \entryset
    {\ifbool{bbx:subentry}
       {\printfield[bibentrysetcount]{entrysetcount}%
	\printunit*{\addnbspace}}
       {}}
    {}%
  \newunit\newblock
  \usebibmacro{setpageref}%
  \finentry}
  
\setlength{\bibitemsep}{10pt}

\endinput
Nun die konkreten Frage:
1. Hinter "Musterstadt/Musterort." muss der Punkte weg: Welches makro ist dafür zuständig?
location+date ist es nicht... muss irgendwie in \printlist{location} mit drin hängen, doch wo ist das definiert?!

2. Hinter "mit Info-Klappe. Verlag. 4. Auflage. " soll kein Punkt sondern ein Komma: Welches Element sorgt für den Punkte? Evtl. \newblock oder \newunit?

Ich hoffe ihr könnt diese Fragen etwas einfacher beantworten und das die nun konkret genug sind.

Vielen Dank schonmal

Gruß S4cro

S4gast

Beitrag von S4gast »

Nach weiteren stundenlangen Suchen und Lesen habe ich eine relativ einfache Lösung für die Probleme gefunden:

.bbx
\ProvidesFile{numericmystyletwo.bbx}
[\abx@bbxid]


\RequireBibliographyStyle{standard}
\RequireBibliographyStyle{authoryear}

\ExecuteBibliographyOptions{labelnumber}

\DeclareNameFormat{mynameshort}{%
\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}%
\usebibmacro{name:andothers}}

\DeclareNameAlias{author}{mynameshort}
\DeclareNameAlias{editor}{mynameshort}
\DeclareNameAlias{translator}{mynameshort}
\renewcommand*{\labelnamepunct}{\addcolon\addspace}

\ExecuteBibliographyOptions{%
maxbibnames=99,
backref=false
}%

\renewcommand*{\multinamedelim}{\addslash}
\renewcommand*{\finalnamedelim}{\addslash}
\renewcommand*{\multilistdelim}{\addslash}
\renewcommand*{\finallistdelim}{\addslash}
  
\renewcommand{\finentrypunct}{}

\renewcommand*{\newunitpunct}{\addcomma\space}

\DeclareBibliographyDriver{book}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/editor+others/translator+others}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{maintitle+title}%
  \newunit
  \printlist{language}%
  \newunit\newblock
  \usebibmacro{byauthor}%
  \newunit\newblock
  \usebibmacro{byeditor+others}%
  \printlist{publisher}%
  \newunit\newblock
  \printfield{edition}%
  \newunit
  \iffieldundef{maintitle}
    {\printfield{volume}%
     \printfield{part}}
    {}%
  \newunit
  \printfield{volumes}%
  \newunit\newblock
  \usebibmacro{series+number}%
  \newunit\newblock
  \usebibmacro{location+date}%
  \nopunct\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}}
    {}%
     \printdate
    \newunit\newblock
    \printfield{note}%
    \usebibmacro{finentry}
  }
  
\DeclareBibliographyDriver{online}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/editor+others/translator+others}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{title}%
  \newunit
  \printlist{language}%
  \newunit\newblock
  \usebibmacro{byauthor}%
  \newunit\newblock
  \usebibmacro{byeditor+others}%
  \newunit\newblock
  \printfield{version}%
  \newunit\newblock
  \printlist{organization}%
  \newunit\newblock
  \usebibmacro{date}%
  \newunit\newblock
  \iftoggle{bbx:eprint}
    {\usebibmacro{eprint}}
    {}%
  \newunit\newblock
  \usebibmacro{url+urldate}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \newunit
  \printdate
  \newunit
  \printfield{note}%
  \usebibmacro{finentry}}

\providebool{bbx:subentry}

\DeclareBibliographyOption{subentry}[true]{%
  \setbool{bbx:subentry}{#1}}

\DeclareFieldFormat{bibentrysetcount}{\mkbibparens{\mknumalph{#1}}}
\DeclareFieldFormat{labelnumberwidth}{\mkbibbrackets{#1}}
\DeclareFieldFormat{shorthandwidth}{\mkbibbrackets{#1}}

\defbibenvironment{bibliography}
  {\list
     {\printtext[labelnumberwidth]{%
	\printfield{prefixnumber}%
	\printfield{labelnumber}}}
     {\setlength{\labelwidth}{\labelnumberwidth}%
      \setlength{\leftmargin}{\labelwidth}%
      \setlength{\labelsep}{\biblabelsep}%
      \addtolength{\leftmargin}{\labelsep}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}%
      \renewcommand*{\makelabel}[1]{\hss##1}}
  {\endlist}
  {\item}

\defbibenvironment{shorthand}
  {\list
     {\printfield[shorthandwidth]{shorthand}}
     {\setlength{\labelwidth}{\shorthandwidth}%
      \setlength{\leftmargin}{\labelwidth}%
      \setlength{\labelsep}{\biblabelsep}%
      \addtolength{\leftmargin}{\labelsep}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}%
      \renewcommand*{\makelabel}[1]{\hss##1}}}
  {\endlist}
  {\item}

\DeclareBibliographyDriver{set}{%
  \entryset
    {\ifbool{bbx:subentry}
       {\printfield[bibentrysetcount]{entrysetcount}%
	\printunit*{\addnbspace}}
       {}}
    {}%
  \newunit\newblock
  \usebibmacro{setpageref}%
  \finentry}
  
\setlength{\bibitemsep}{10pt}

\endinput
Meine letzte Frage nun:

Kann ich im Literaturverzeichnis irgendwie dafür sorgen, dass wenn ein Eintrag 2 oder mehr Zeilen hat, diese und alle weiteren eingerückt werden?
(zum Beispiel alle 2cm)

LG S4cro

Antworten