Müsste biblatex-dw anpassen, bin aber noch Anfänger

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


rootingbill
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Di 10. Apr 2012, 17:31

Müsste biblatex-dw anpassen, bin aber noch Anfänger

Beitrag von rootingbill »

Hallo zusammen,

ja wie der Titel schon sagt bin ich erst seit einigen Wochen mit LaTeX dabei und versuche mich derzeit an meiner zweiten Hausarbeit damit. Als Bibliographie-Stil verwende ich wie im Titel angegeben footnote-dw. Da wir in Geschichte ganz spezielle Anforderungen an das Literaturverzeichnis haben und ich gerade ein wenig überfordert bin hier erstmal was ich gerne möchte:

Zeitschriftenartikel:

So ist es aktuell mit einigen Anpassungen von mir:
Alphons Silbermann, Vom Skandal und dem Mythos der öffentlichen Meinung, in: Communication 17 (2 1992), S. 215–223.

So soll es sein:
Alphons Silbermann, Vom Skandal und dem Mythos der öffentlichen Meinung, in: Communication 17, 2 1992, S. 215–223.

Wie ihr seht geht es hierbei nur darum, dass Ausgabe und Jahr nicht im Klammern stehen dürfen, sondern durch Komma von der Nummer und den Seitenangaben.

Artikel im Sammelwerk:

So ist es aktuell mit einigen Anpassungen von mir:
Ders., Kampf um Normen: Skandale in historischer Perspektive, in: Kristin Bulkow/Christer Petersen (Hrsg.), Skandale. Strukturen und Strategien o ̈ffentlicher Aufmerksamkeitserzeugung, Wiesbaden 2011, S. 131–155.

Aber so soll es sein:
Ders., Kampf um Normen: Skandale in historischer Perspektive, in: Kristin Bulkow/Christer Petersen (Hrsg.), Skandale. Strukturen und Strategien o ̈ffentlicher Aufmerksamkeitserzeugung. Wiesbaden 2011, S. 131–155.

Es geht also nur um den Punkt zwischen Sammelwerktitel und Ort Jahr. Das ganze ist dann auch analog bei diesem Beispiel, wo es durch eine Reihe etwas verkompliziert wird:
Fabio Crivellari/Kay Kirchmann/Marcus Sandl (Hrsg.), Die Medien der Geschichte. Historizität und Medialität in interdisziplinärer Perspektive. (Historische Kulturwissenschaft, Bd. 4.), Konstanz 2004.

So soll es aber sein:

Fabio Crivellari/Kay Kirchmann/Marcus Sandl (Hrsg.), Die Medien der Geschichte. Historizität und Medialität in interdisziplinärer Perspektive. (Historische Kulturwissenschaft, Bd. 4.) Konstanz 2004.

Hier darf also zwischen der Reiheinformation in Klammern und dem Ort Jahr kein Komma stehen.

Kann mir jemand weiterhelfen? Das wäre echt klasse.

Vielen Dank!

Patrick

Benutzeravatar
domwass
TeX-Entwickler
TeX-Entwickler
Beiträge: 617
Registriert: Di 26. Aug 2008, 12:44
Kontaktdaten:

Beitrag von domwass »

Mach mal bitte ein Minimalbeispiel (siehe Link in meiner Signatur) mit den
Änderungen, die Du schon vorgenommen hast.

Gruß,
Dominik.-

rootingbill
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Di 10. Apr 2012, 17:31

Beitrag von rootingbill »

Hallo Dominik,

hier mein Minimalbeispiel, das aufgrund der vielen Änderungen leider etwas länger geworden ist. Ich habe bisher schon einige Hilfen in der (de.comp.text.tex Newsgroup) erhalten, die im Beispiel mit eingeflossen sind. Das mag alles nicht sauber und professionell gelöst sein, hilft mir aber schon weiter bei meinem Problem:
\begin{filecontents}{document.bib}
@Article{silbermann,
	author		= {Alphons Silbermann},
	title		= {Vom Skandal und dem Mythos der öffentlichen Meinung},
	journal		= {Communication},
	volume		= {17},
	number		= {2},
	pages		= {215--223},
	date		= {1992},
	}
@Collection{bergmann,
	editor		= {Jens Bergmann and Bernhard Pörksen},
	title 		= {Skandal! Die Macht öffentlicher Empörung},
	location 	= {Köln},
	year 		= {2009},
	}
@Collection{crivellari,
	editor 		= {Fabio Crivellari and Kay Kirchmann and Marcus Sandl},
	title 		= {Die Medien der Geschichte. Historizität und Medialität in interdisziplinärer Perspektive},
	series		= {Historische Kulturwissenschaft},
	number		= {4},
	location 	= {Konstanz},
	year 		= {2004},
	}
@InCollection{boesch.crivellari,
	author		= {Frank Bösch},
	title		= {Historische Skandalforschung als Schnittstelle zwischen Medien-, Kommunikations- und Geschichtswissenschaft},
	editor 		= {Fabio Crivellari and Kay Kirchmann and Marcus Sandl},
	booktitle	= {Die Medien der Geschichte. Historizität und Medialität in interdisziplinärer Perspektive},
	pages		= {445--464},
	series		= {Historische Kulturwissenschaft},
	number		= {4},
	location 	= {Konstanz},
	year 		= {2004},
	}
\end{filecontents}
\documentclass[ngerman]{scrartcl}
\usepackage[style=footnote-dw, 
edbyidem=true,
idembib=true,
bibtotoc]{biblatex}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\bibliography{document}%

% Trennung vor Erscheinungsort 

%Bei @Book ein Punkt statt Komma vor Ort einfügen
\DeclareBibliographyDriver{book}{% 
   \usebibmacro{bibindex}% 
   \usebibmacro{begentry}% 
   \ifbool{cbx:idemfull} 
     {} 
     {\usebibmacro{author/editor+others/translator+others}% 
      \ifnameundef{labelname} 
        {} 
        {\setunit{\labelnamepunct}\newblock}}% 
   \usebibmacro{maintitle+title}% 
   \newunit 
   \printlist{language}% 
   \newunit\newblock 
   \usebibmacro{byauthor}% 
   \newunit\newblock 
   \usebibmacro{byeditor+others}% 
   \newunit\newblock 
   \usebibmacro{edition}% 
   \usebibmacro{volumes+volume+part}% 
   \setunit{\addspace}% 
   \ifbool{bbx:seriesafteryear} 
     {} 
     {\usebibmacro{series+number}}% 
   \newunit\newblock 
   \printfield{note}% 
    % Zeile alt: 
    % \newunit\newblock 
   % folgende Zeile neu: 
   \setunit{\adddot\addspace}\newblock 
   \usebibmacro{publisher+location+date}% 
   \ifbool{bbx:seriesafteryear} 
     {\setunit{\addspace}% 
      \usebibmacro{series+number}} 
     {}% 
   \newunit\newblock 
   \usebibmacro{chapter+pages}% 
   \newunit 
   \ifbool{bbx:pagetotal} 
     {\printfield{pagetotal}% 
      \newunit\newblock} 
     {}% 
   \iftoggle{bbx:isbn} 
     {\printfield{isbn}} 
     {}% 
   \newunit\newblock 
   \usebibmacro{doi+eprint+url}% 
   \newunit\newblock 
   \usebibmacro{addendum+pubstate}% 
   \newunit\newblock 
   \usebibmacro{pageref}% 
   \usebibmacro{finentry}} 

%Bei @Collection erfolgt nach dem Titel bzw. vor dem Ort kein Komma, sondern ein
% Punkt
\DeclareBibliographyDriver{collection}{% 
   \usebibmacro{bibindex}% 
   \usebibmacro{begentry}% 
   \ifbool{cbx:idemfull} 
     {} %
     {\usebibmacro{editor+others/translator+others}% 
      \ifnameundef{labelname} 
        {} 
        {\setunit{\labelnamepunct}}}% 
   \usebibmacro{maintitle+title}% 
   \newunit 
   \printlist{language}% 
   \newunit\newblock 
   \usebibmacro{byeditor+others}% 
   \newunit\newblock 
   \usebibmacro{edition}% 
   \usebibmacro{volumes+volume+part}% 
   \setunit{\addspace}% 
   \ifbool{bbx:seriesafteryear} 
     {} 
     {\usebibmacro{series+number}}% 
   \newunit\newblock 
   \printfield{note}% 
    % Zeile alt: 
    % \newunit\newblock 
   % folgende Zeile neu: 
   \setunit{\adddot\addspace}\newblock 
   \usebibmacro{publisher+location+date}% 
   \ifbool{bbx:seriesafteryear} 
     {\setunit{\addspace}% 
      \usebibmacro{series+number}} 
     {}% 
   \newunit\newblock 
   \usebibmacro{chapter+pages}% 
   \newunit 
   \ifbool{bbx:pagetotal} 
     {\printfield{pagetotal}% 
      \newunit\newblock} 
     {}% 
   \iftoggle{bbx:isbn} 
     {\printfield{isbn}} 
     {}% 
   \newunit\newblock 
   \usebibmacro{doi+eprint+url}% 
   \newunit\newblock 
   \usebibmacro{addendum+pubstate}% 
   \newunit\newblock 
   \usebibmacro{pageref}% 
   \usebibmacro{finentry}} 

%Bei @Article soll nach Journalnumber ein Komma, nach Issue ebenfalls ein Komma,
% und Date wird nicht im Klammern gesetzt
\renewbibmacro*{journal+issuetitle+standard}{%
  \iffieldundef{volume}
    {\iffieldundef{number}
      {}}
    {\setunit{\addcomma\addspace}%
     \printfield{number}}%
  \setunit{\addcomma\space}%
  \printfield{eid}%
  \setunit{\addspace}%
  \iffieldundef{volume}
    {\iffieldundef{month}
      {}%
      {\setunit{\addcomma\space}}%
     \usebibmacro{issue+date}}
    {\addcomma\printtext{\usebibmacro{issue+date}}}%
  \newunit\newblock
  \usebibmacro{issue}%
  \newunit
  \usebibmacro{byeditor+others}%
  \newunit}


   
%Punkt nach Nummer und vor der Klammer bei Serien
\renewbibmacro*{series+number}{%
 \iffieldundef{series}%
   {}
   {\ifbool{bbx:seriesinparens}
    {\adddot\space
    \printtext[parens]{%
      \seriespunct%
      \printfield{series}%
      \setunit*{\sernumstring}%
      \printfield{number}
      \adddot}%
     \newunit}
    {\setunit{\newunitpunct\seriespunct}%
     \printfield{series}%
     \setunit*{\sernumstring}%
     \printfield{number}
     \adddot%
     \newunit}}}%

%Bei @InCollection nach series+number einen Punkt einfügen (anstatt Komma)
\renewbibmacro{noxref:incollection}{%
  \usebibmacro{useeditor+others}%
  \usebibmacro{maintitle+booktitle}%
  \newunit
  \usebibmacro{ifuse:byeditor+others}%
  \newunit\newblock
  \usebibmacro{edition}%
  \usebibmacro{volumes+volume+part}%
  \setunit{\addspace}%
  \ifbool{bbx:seriesafteryear}
    {}
    {\usebibmacro{series+number}}%
  \setunit{\adddot\addspace}\newblock
  \printfield{note}%
  \setunit{\adddot\addspace}\newblock
  \usebibmacro{publisher+location+date}%
  \ifbool{bbx:seriesafteryear}
    {\setunit{\addspace}%
     \usebibmacro{series+number}}
    {}%
  \newunit\newblock
  \usebibmacro{chapter+pages}%
  \newunit\newblock
  \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \newunit\newblock
  \usebibmacro{pageref}}


%Dokumentenbeginn
\begin{document}
\setlength{\parindent}{0.2in}

%Komma zwischen Reihetitel und Reihenummer und Zusatz Bd.
\renewcommand*{\sernumstring}{%
\addcomma\space\bibstring{volume}\addspace}

%Komma zwischen Autoren und Titel
\renewcommand*{\labelnamepunct}{\addcomma\space}
\renewcommand*{\nametitledelim}{\addcomma\space}

%Autoren- und Editoren mit Slash trennen
\renewcommand*{\bibmultinamedelim}{\addslash} 
\renewcommand*{\bibfinalnamedelim}{\addslash}

\nocite{*}
\printbibliography

\end{document}
Letztlich ist in diesem Minimalbeispiel nur noch der Punkt hinter den in Klammern gesetzten Reihetitel falsch.

Brauchst du noch weitere Angaben?
Hier einmal der Zitierstil als Vorgabe:

Monographien:
Vorname Nachname, Titel. Untertitel. Ort Jahr.

Sammelwerke:
Vorname Nachname, Titel. Untertitel. (Reihe, Nummer.) Ort Jahr.

Aufsätze in Sammelwerken:
Vorname Nachname, Titel. Untertitel, in: s.o.

Zeitschriftenaufsatz:
Vorname Nachname, Titel. Untertitel, in: Zeitschriftenname Ausgabe, Nummer, Jahr, Seitenzahlen.

Vielen Dank für deine Hilfe!!

Viele Grüße,
Patrick[/code]

Benutzeravatar
domwass
TeX-Entwickler
TeX-Entwickler
Beiträge: 617
Registriert: Di 26. Aug 2008, 12:44
Kontaktdaten:

Beitrag von domwass »

Die Anpassung für noxref:incollection muss ein bisschen anders aussehen.
Du hast folgendes gemacht:
\renewbibmacro{noxref:incollection}{% 
   \usebibmacro{useeditor+others}% 
   \usebibmacro{maintitle+booktitle}% 
   \newunit 
   \usebibmacro{ifuse:byeditor+others}% 
   \newunit\newblock 
   \usebibmacro{edition}% 
   \usebibmacro{volumes+volume+part}% 
   \setunit{\addspace}% 
   \ifbool{bbx:seriesafteryear} 
     {} 
     {\usebibmacro{series+number}}% 
   \setunit{\adddot\addspace}\newblock % ----> [1]
   \printfield{note}% 
   \setunit{\adddot\addspace}\newblock % ----> [2]
   \usebibmacro{publisher+location+date}% 
   \ifbool{bbx:seriesafteryear} 
     {\setunit{\addspace}% 
      \usebibmacro{series+number}} 
     {}% 
   \newunit\newblock 
   \usebibmacro{chapter+pages}% 
   \newunit\newblock 
   \iftoggle{bbx:isbn} 
     {\printfield{isbn}} 
     {}% 
   \newunit\newblock 
   \usebibmacro{doi+eprint+url}% 
   \newunit\newblock 
   \usebibmacro{addendum+pubstate}% 
   \newunit\newblock 
   \usebibmacro{pageref}} 
Bei der Zeile mit [1] werden ein Punkt und ein Leerzeichen gesetzt, und
zwar nach der Reihe in Klammern (denn der Punkt innerhalb der Klammer
wird ja schon vom bibmacro series+number gesetzt). Es reicht aber nicht,
das \adddot hier zu entfernen, denn biblatex arbeitet dann
folgendermaßen weiter: es wird als nächstes das Feld note gesetzt und
anschließend (egal ob in note etwas steht oder nicht) wird bei [2] der
punctuation tracker (also sozusagen der Aufpasser für die Zeichensetzung)
auf Punkt mit Leerzeichen gesetzt. Wenn also note leer ist, steht plötzlich
wieder ein Punkt hinter der series-Klammer. Lösung: die Sternvariante von
\setunit benutzen (also \setunit*), denn dann wird der punctuation tracker
nur geändert, wenn vorher etwas ausgegeben wurde, in diesem Fall also:
wenn note nicht leer ist. Das Ganze sieht dann angepasst so aus:
\renewbibmacro{noxref:incollection}{% 
   \usebibmacro{useeditor+others}% 
   \usebibmacro{maintitle+booktitle}% 
   \newunit 
   \usebibmacro{ifuse:byeditor+others}% 
   \newunit\newblock 
   \usebibmacro{edition}% 
   \usebibmacro{volumes+volume+part}% 
   \setunit{\addspace}% 
   \ifbool{bbx:seriesafteryear} 
     {} 
     {\usebibmacro{series+number}}% 
   \setunit{\addspace}\newblock
   \printfield{note}% 
   \setunit*{\adddot\space}\newblock 
   \usebibmacro{publisher+location+date}% 
   \ifbool{bbx:seriesafteryear} 
     {\setunit{\addspace}% 
      \usebibmacro{series+number}} 
     {}% 
   \newunit\newblock 
   \usebibmacro{chapter+pages}% 
   \newunit\newblock 
   \iftoggle{bbx:isbn} 
     {\printfield{isbn}} 
     {}% 
   \newunit\newblock 
   \usebibmacro{doi+eprint+url}% 
   \newunit\newblock 
   \usebibmacro{addendum+pubstate}% 
   \newunit\newblock 
   \usebibmacro{pageref}} 
Gruß,
Dominik.-

Antworten