biblatex-dw Probleme

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


bill26
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Sa 14. Mär 2009, 20:53

biblatex-dw Probleme

Beitrag von bill26 »

Hallo,
ich bin neu hier, also bitte Rücksicht nehmen wenn ich was nicht verstehe :)

Habe zwei Probleme mit biblatex-dw, welchen ich nicht beheben konnte:

1. Ich möchte bei Quellen in den Fußnoten den ersten Autor mit [Nachname, Vorname] abkürzen wie das auch im Literaturverzeichnis steht.

2. Ich möchte bei wiederholtem Verweis auf eine Quelle (firstfull=true) nur dann einen Titel angeben, wenn von einem Autor mehrere Quellen existieren. Wahlweise auch nur, wenn ein "shorttitle" definiert ist. Reicht mir auch. Habe dabei an diese Stelle gedacht in der .cbx-Datei:
\newbibmacro*{cite:normal}{%
  \iffieldundef{shorthand}
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\usebibmacro{cite:ibid}}
       {\ifthenelse{\ifciteidem\AND\NOT\boolean{cbx:noidem}}
         {\usebibmacro{cite:idem}%
%          \usebibmacro{cite:title}%
          \usebibmacro{cite:save}}
         {\ifnameundef{labelname}
           {}
           {\usebibmacro{cite:name}}%
%          \usebibmacro{cite:title}%
          \usebibmacro{cite:save}}}}%
    {\ifbool{shorthandibid}%
       {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}%
         {\usebibmacro{cite:ibid}}
         {\usebibmacro{cite:shorthand}}}%
       {\usebibmacro{cite:shorthand}}}}
Hab es versucht indem ich die beiden auskommentierten Teile weggelassen habe. Also kein Titel wenn shorttitle nicht existiert. Leider bekomme ich dann aber auch keinen Titel mehr angezeigt wenn ein shorttitle existiert.

Ich danke schon mal im Voraus.
bill

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

Re: bilbatex-dw Probleme

Beitrag von domwass »

bill26 hat geschrieben:Habe zwei Probleme mit biblatex-dw, welchen ich nicht beheben konnte:

1. Ich möchte bei Quellen in den Fußnoten den ersten Autor mit [Nachname, Vorname] abkürzen wie das auch im Literaturverzeichnis steht.
Du willst also die Reihenfolge umkehren? Dann guck mal unter http://biblatex.dominik-wassenhoven.de/ ... NameFormat. Oder meinst du mit 'abkürzen' etwas anderes?
2. Ich möchte bei wiederholtem Verweis auf eine Quelle (firstfull=true) nur dann einen Titel angeben, wenn von einem Autor mehrere Quellen existieren. Wahlweise auch nur, wenn ein "shorttitle" definiert ist. Reicht mir auch.
Wenn der shorttitle statt des title ausgegeben werden soll, dann so:
\newbibmacro*{cite:normal}{%
  \iffieldundef{shorthand}
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\usebibmacro{cite:ibid}}
       {\ifthenelse{\ifciteidem\AND\NOT\boolean{cbx:noidem}}
         {\usebibmacro{cite:idem}%
           \iffieldundef{shorttitle}
             {\usebibmacro{cite:title}}
             {\printfield{shorttitle}}%
          \usebibmacro{cite:save}}
         {\ifnameundef{labelname}
           {}
           {\usebibmacro{cite:name}}%
             \iffieldundef{shorttitle}
               {\usebibmacro{cite:title}}
               {\printfield{shorttitle}}%
          \usebibmacro{cite:save}}}}%
    {\ifbool{shorthandibid}%
       {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}%
         {\usebibmacro{cite:ibid}}
         {\usebibmacro{cite:shorthand}}}%
       {\usebibmacro{cite:shorthand}}}}
Falls der shorttitle nicht ausgegeben werden soll, kannst du \printfield{shorttitle} natürlich auch weglassen.

Ich hab's nicht getestet, weil du kein Minimalbeispiel erstellt hast. Falls es nicht funktionieren sollte, mach also bitte ein Minimalbeispiel zum Testen.

Gruß,
Dominik.-

bill26
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Sa 14. Mär 2009, 20:53

Beitrag von bill26 »

Vielen Dank schon mal für die Hilfe. Hab mich recht ungeschickt ausgedrückt in meinem Beitrag, aber Du hast gut erraten was ich wollte =). Hab wohl zu lange am Stück daran gesessen.

Deine Lösung mit dem Kurztitel hat funktioniert. Hab jeweils:
\usebibmacro{cite:title}
gelöscht, und nun erscheint nur noch der Kurztitel (falls vorhanden) bei wiederholtem Zitat einer Quelle.

Bei den Autorennamen habe ich folgenden Code ergänzt:
\DeclareNameFormat{default}{%Vollzitate
  \ifnum\value{listcount}=1\relax
    \iffirstinits
      {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
  \else
    \iffirstinits
      {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}%
  \fi
  \usebibmacro{name:andothers}}
Nun erscheinen die Autoren wie gewünscht: [Nachname, Vorname]/[Vorname] [Nachname]/...
Dies wirkt sich allerdings auch auf die Herausgeber? Kann ich diese anders formatieren? Hätte die gerne [Vorname] [Nachname]/[Vorname] [Nachname]/... und nicht kursiv.

Dann würde ich gerne "hg. v." ändern in "Hrsg.". Der Versuch mit:
\DefineBibliographyStrings{german}{%
	typeeditor			= {Hrsg\adddot},
	typeeditors			= {Hrsg\adddot},
}
war leider erfolglos.

Wenn jetzt noch bei "im folgenden zit. als" Folgenden mit großem "F" geschrieben und auch im Literaturverzeichnis auftauchen würde wäre ich rundum glücklich =)

Versuche mich mal an einem Minimalbeispiel. Mein erster Versuch. Ich hoff es klappt:
\documentclass[11pt]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[german]{babel}
\usepackage{typearea}

\usepackage[style=authortitle-dw,
						namefont=italic,
						firstnamefont=italic,
						idembib=false,%stellt dieselbe/derselbe aus (Literaturverzeichnis)
						nopublisher=false,
						editorstring=normal,
						idemtracker=false,%stellt dieselbe/derselbe aus (im Text)
						firstfull=true,
						pagetracker=true,
						citedas=true]{biblatex}%aktiviert: im folgenden Zitiert als:

\usepackage[babel,german=guillemets]{csquotes} 

\begin{filecontents}{lit.bib}
  @BOOK{Bond2003,
  title = {Wir sind ein Paar},
  publisher = {SpringerSchonWieder},
  shorthand = {Kurztitel},
  year = {2003},
  editor = {Ruumenigge, Karl and Grashüpfer, Willi},
  author = {Bond, James and Anderson, Pamela},
  address = {New York/Peking},
  edition = {2., vollständig neu bearbeitetet Edition},
  shorttitle = {Kurztitel},
  owner = {Stefan},
  timestamp = {2009.03.14}
}
@BOOK{Bond2001,
  title = {Und noch ein Buch von dem Traumpaar},
  publisher = {Sringer},
  year = {2001},
  author = {Bond, James and Anderson, Pamela},
  shorttitle = {ShortCollection},
  booktitle = {Buch heißt, ich bin ein Sammelwerk},
  owner = {Stefan},
  timestamp = {2009.03.14}
}

\end{filecontents}
\bibliography{lit}

\begin{document}

	(1)Same author different page\footcite[Vgl.][S. 1 f]{Bond2003}	
	(2)Some Text\footcite[Vgl.][S. 10 f]{Bond2001}
	(3)More\footcite[Vgl.][1-2]{Bond2003}
	
	\newpage
	
	\printbibliography
 
\end{document}
Einzig wichtige Änderung ist in der "authortitle-dw":
\DeclareNameFormat{default}{%Vollzitate
  \ifnum\value{listcount}=1\relax
    \iffirstinits
      {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
  \else
    \iffirstinits
      {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}%
  \fi
  \usebibmacro{name:andothers}}

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

Beitrag von domwass »

bill26 hat geschrieben:Nun erscheinen die Autoren wie gewünscht: [Nachname, Vorname]/[Vorname] [Nachname]/...
Dies wirkt sich allerdings auch auf die Herausgeber? Kann ich diese anders formatieren? Hätte die gerne [Vorname] [Nachname]/[Vorname] [Nachname]/... und nicht kursiv.
Das ist nicht ganz einfach. Ich habe etwas ähnliches mal für den Stil der Historischen Zeitschrift gemacht. Das kannst du im zweiten Teil meines biblatex-Artikels in der DTK nachlesen (http://biblatex.dominik-wassenhoven.de/dtk.shtml).
Dann würde ich gerne "hg. v." ändern in "Hrsg.". Der Versuch mit:
\DefineBibliographyStrings{german}{%
	typeeditor			= {Hrsg\adddot},
	typeeditors			= {Hrsg\adddot},
}
war leider erfolglos.
Ja, das ist der Begriff hinter einem Herausgeber in Klammern. Was du suchst, ist 'bytypeeditor'.
Wenn jetzt noch bei "im folgenden zit. als" Folgenden mit großem "F" geschrieben
Dann musst du auch neue Rechtschreibung verwenden, also 'ngerman' und nicht 'german'.
und auch im Literaturverzeichnis auftauchen würde wäre ich rundum glücklich =)
Das Kürzel im Literaturverzeichnis? Mach stattdessen lieber ein Sigelverzeichnis (List of Shorthands). Siehe biblatex-Doku.

P.S.: Dein Minimalbeispiel war gut. Kleiner Tipp: die Änderungen des NameFormats hättest du noch in die Präambel des Dokuments schreiben können.

Gruß,
Dominik.-

bill26
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Sa 14. Mär 2009, 20:53

Beitrag von bill26 »

domwass hat geschrieben:
bill26 hat geschrieben:Nun erscheinen die Autoren wie gewünscht: [Nachname, Vorname]/[Vorname] [Nachname]/...
Dies wirkt sich allerdings auch auf die Herausgeber? Kann ich diese anders formatieren? Hätte die gerne [Vorname] [Nachname]/[Vorname] [Nachname]/... und nicht kursiv.
Das ist nicht ganz einfach. Ich habe etwas ähnliches mal für den Stil der Historischen Zeitschrift gemacht. Das kannst du im zweiten Teil meines biblatex-Artikels in der DTK nachlesen (http://biblatex.dominik-wassenhoven.de/dtk.shtml).
Gut, habe die Anleitung befolgt und auch ein Ergbnis erzielt. In den Quellenangaben ist es nun richtig, nur im Literaturverzeichnis nicht. Dort fehlt der "/" zwischen den Namen.
domwass hat geschrieben:
Dann würde ich gerne "hg. v." ändern in "Hrsg.". Der Versuch mit:
\DefineBibliographyStrings{german}{%
	typeeditor			= {Hrsg\adddot},
	typeeditors			= {Hrsg\adddot},
}
war leider erfolglos.
Ja, das ist der Begriff hinter einem Herausgeber in Klammern. Was du suchst, ist 'bytypeeditor'.
byeditor hat die Lösung gebracht.
Wenn jetzt noch bei "im folgenden zit. als" Folgenden mit großem "F" geschrieben
Dann musst du auch neue Rechtschreibung verwenden, also 'ngerman' und nicht 'german'.
gelöst.
und auch im Literaturverzeichnis auftauchen würde wäre ich rundum glücklich =)
Das Kürzel im Literaturverzeichnis? Mach stattdessen lieber ein Sigelverzeichnis (List of Shorthands). Siehe biblatex-Doku.
Sigelverzeichnis ist auch gut. Nur ist das Problem, dass wenn ich neben shorttitle noch ein shorthand angebe, bei wiederholter Zitation der Autor nicht mehr auftaucht.
P.S.: Dein Minimalbeispiel war gut. Kleiner Tipp: die Änderungen des NameFormats hättest du noch in die Präambel des Dokuments schreiben können.
Dann versuche ich es nochmal mit dem aktuellen Stand =)
\documentclass[11pt]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{typearea}

\usepackage[style=authortitle-dw,%my-style
						namefont=italic,
						firstnamefont=italic,
						idembib=false,%stellt dieselbe/derselbe aus (Literaturverzeichnis)
						nopublisher=false,
						editorstring=normal,
						idemtracker=false,%stellt dieselbe/derselbe aus (im Text)
						firstfull=true,
						pagetracker=true,
						citedas=true]{biblatex}%aktiviert: im folgenden Zitiert als:

\usepackage[babel,german=guillemets]{csquotes} 

\begin{filecontents}{lit.bib}
@BOOK{Bond2003,
  title = {Wir sind ein Paar},
  publisher = {SpringerSchonWieder},
  year = {2003},
  editor = {Ruumenigge, Karl and Grashüpfer, Willi},
  author = {Bond, James and Anderson, Pamela},
  address = {New York/Peking},
  edition = {2., vollständig neu bearbeitetet Edition},
  shorttitle = {Kurztitel},
  shorthand = {Kurztitel}
}
@BOOK{Bond2001,
  title = {Und noch ein Buch von dem Traumpaar},
  publisher = {Sringer},
  year = {2001},
  author = {Bond, James and Anderson, Pamela},
  shorttitle = {ShortCollection},
  booktitle = {Buch heißt, ich bin ein Sammelwerk}
}
@BOOK{Kahn1990,
  title = {This is a long book title that needs more than one row at least},
  publisher = {publisherCouldBeSpringer},
  year = {1990},
  editor = {Meiser, Klaus and Ballack, Domi},
  author = {Kahn, Olli and Brecht, Bert and Kant, Emanuel},
  address = {New York/Berlin},
  edition = {17., total erneuerte Aufl.}
}
\end{filecontents}
\bibliography{lit}

%-----Meine Änderungen------
%Autorenformat ändern
\DeclareNameFormat{default}{%Vollzitate
  \ifnum\value{listcount}=1\relax
    \iffirstinits
      {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
  \else
    \iffirstinits
      {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}%
  \fi
  \usebibmacro{name:andothers}}

% Zeichen zw. Autoren/Editoren in der Bibliographie
\renewcommand*{\bibrevsdnamedelim}{\slash}
\renewcommand*{\bibmultinamedelim}{\slash}
\renewcommand*{\bibfinalnamedelim}{}

% Herausgeber anders schreiben:
\DeclareNameFormat{upshape}{%
\usebibmacro{name:first-last-upshape}{#1}{#3}{#5}{#7}%
\usebibmacro{name:andothers}}
%bibmacro dazu
\newbibmacro*{name:first-last-upshape}[4]{%
	\usebibmacro{name:delim}{#2#3#1}%
	\ifblank{#2}{}{#2\isdot\addlowpenspace}%
	\ifblank{#3}{}{%
		#3\isdot
		\ifpunctmark{’}
		{}
		{\ifuseprefix{\addhighpenspace}{\addlowpenspace}}}%
	#1\isdot
	\ifblank{#4}{}{\addlowpenspace #4\isdot}}
%neues bibmacro, welches altes für Hrsg. ersetzt
\newbibmacro*{printeditors}{%eigentlicher Name:{editorincoll}, da schon definiert hier geändert
	\ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}}
		{\ifthenelse{\iffieldequals{author}{editor}\AND\NOT\iffirstonpage}
			{\bibnamedash}
			{\usebibmacro{editorstrg}\addspace%
				\printnames[upshape]{editor}\addspace
				\savefield{namehash}{\bbx@lasthash}}%		
		\clearname{editor}}
	{\global\undef\bbx@lasthash}}
%neues bibmacro bei Büchern einsetzen
\DeclareBibliographyDriver{book}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/editor/translator}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{maintitle+title}%
  \newunit
  \usebibmacro{byauthor}%
  \newunit
  \printlist{language}%
  \newunit\newblock
  %\usebibmacro{byeditor+others}%verschoben nach unten
  %\newunit\newblock
  \usebibmacro{edition}%
  \usebibmacro{volumes+volume+part}%
  \setunit{\addspace}%
  \usebibmacro{xrefvolumecheck}%
  \usebibmacro{series+number}%
  \newunit\newblock
  \usebibmacro{printeditors}%NEU für andere Darstellung der Herausgeber
  %\usebibmacro{byeditor+others}%hier eingefügt von oben
  \newunit\newblock%auch von oben
  \printfield{note}%
  \newunit\newblock
  \usebibmacro{publisher+location+year}%
  \newunit\newblock
  \usebibmacro{chapter+pages}%
  \newunit
  \printfield{pagetotal}
  \newunit\newblock
  \ifbool{bbx:isbn}
    {\printfield{isbn}%
     \newunit\newblock}
    {}%
  \ifbool{bbx:doi}
    {\printfield{doi}%
     \newunit\newblock}
    {}%
  \ifbool{bbx:eprint}
    {\printfield{eprint}%
     \newunit\newblock}
    {}%
  \usebibmacro{url+urldate}%
  \newunit\newblock
  \printfield{addendum}%
  \newunit\newblock
  \usebibmacro{pageref}%
  \usebibmacro{finentry}}	
% Shorttitle nur anzeigen falls vorhanden
\renewbibmacro*{cite:normal}{%
  \iffieldundef{shorthand}
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\usebibmacro{cite:ibid}}%
       {\ifthenelse{\ifciteidem\AND\NOT\boolean{cbx:noidem}}%
         {\usebibmacro{cite:idem}%
           \iffieldundef{shorttitle}
             {}%\usebibmacro{cite:title}%verhindert Anzeige des vollen Titels
             {\printfield{shorttitle}}%
          \usebibmacro{cite:save}}
         {\ifnameundef{labelname}
           {\usebibmacro{cite:name}}
           {\usebibmacro{cite:name}}%
             \iffieldundef{shorttitle}
               {}%\usebibmacro{cite:title}%verhindert Anzeige des vollen Titels
               {\printfield{shorttitle}}%
          \usebibmacro{cite:save}}}}%
    {\ifbool{shorthandibid}%
       {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}%
         {\usebibmacro{cite:ibid}}
         {\usebibmacro{cite:shorthand}}}%
       {\usebibmacro{cite:shorthand}}}}
%---------------------------

\begin{document}
		
	(1)Some Text\footcite[Vgl.][S. 1 f]{Bond2003}
	
	(2)Some Text\footcite[Vgl.][S. 10 f]{Kahn1990}
	
	(3)Some Text\footcite[Vgl.][S. 10 f]{Bond2001}
	
	(4)More\footcite[Vgl.][1-2]{Bond2003}
  
  (5)Nochmal Brot\footcite[Vgl.][1]{Bond2003}
  
  (6)Text\footcite[Vgl.][S. 10 f]{Kahn1990}
	
	(7)More\footcite[Vgl.][1-2]{Bond2003}
	
	\newpage
	\printbibliography
  \printshorthands	

\end{document}
Also hier noch mal die meine Probleme:
- wenn ich shorthand angebe fehlt der Autor bei wiederholtem Zitat, ohne shorthand aber kein Sigelverzeichnis
ERLEDIGT

- bei wiederholter Zitation taucht der Autor nicht mehr in der Fußnote auf
ERLEDIGT

- Herausgeber im Literaturverzeichnis ohne "/" zur Trennung
ERLEDIGT

- Bei drei Autoren fehlt im Literaturverzeichnis ebenfalls ein "/" vor dem Letzten
ERLEDIGT

- "lasthashbib@field@namehash" und ähnliches, habe ich aber nur im Minimalbeispiel...
ERLEDIGT

Ein Fass ohne Boden, klappt das eine, geht das andere nicht. Ich hoffe, das wird noch.

Vielen Dank für Deine Hilfe Dominik,
Stefan
Zuletzt geändert von bill26 am Mi 18. Mär 2009, 12:40, insgesamt 3-mal geändert.

bill26
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Sa 14. Mär 2009, 20:53

Beitrag von bill26 »

Die Probleme:
- wenn ich shorthand angebe fehlt der Autor bei wiederholtem Zitat, ohne shorthand aber kein Sigelverzeichnis

- bei wiederholter Zitation taucht der Autor nicht mehr in der Fußnote auf
sind gelöst durch:
\renewbibmacro*{cite:normal}{%
  \iffieldundef{shorthand}
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\usebibmacro{cite:ibid}}%
       {\ifthenelse{\ifciteidem\AND\NOT\boolean{cbx:noidem}}%
         {\usebibmacro{cite:idem}%
           \iffieldundef{shorttitle}
             {}%\usebibmacro{cite:title}%verhindert Anzeige des vollen Titels
             {\printfield{shorttitle}}%
          \usebibmacro{cite:save}}
         {\ifnameundef{labelname}
           {\usebibmacro{cite:name}}
           {\usebibmacro{cite:name}}%
             \iffieldundef{shorttitle}
               {}%\usebibmacro{cite:title}%verhindert Anzeige des vollen Titels
               {\printfield{shorttitle}}%
          \usebibmacro{cite:save}}}}%
    {\ifbool{shorthandibid}%Fall shorthand definiert ist geht's hier los
       {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}%
         {\usebibmacro{cite:ibid}}%gleiche Quelle wie vorher, ok so
         {\usebibmacro{cite:name}
         \usebibmacro{cite:shorthand}}}%<-- hier wenn nicht gleiche Quelle vorher
       {\usebibmacro{cite:shorthand}}}}
Neu: Autoren im Sigelverzeichnis sollte gleiche Formatierung haben wie Literaturverzeichnis
Zuletzt geändert von bill26 am Mi 18. Mär 2009, 12:24, insgesamt 1-mal geändert.

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

Beitrag von domwass »

bill26 hat geschrieben: - bei wiederholter Zitation taucht der Autor nicht mehr in der Fußnote auf
Das stimmt, das geht zusammen mit 'shorthand' nicht bzw. müsste recht aufwändig im Zitierstiel umgebaut werden. Einfacher zu realisieren wäre dann doch, den Shorttitle im Literaturverzeichnis auftauchen zu lassen. Aber eigentlich ist das eine redundante Information, denn der shorttitle ist dazu da, das Werk auch mit diesen verkürzten Angaben in der Bibliographie zu finden. Das 'im Folgenden zitiert als' würde ich nur dann einsetzen, wenn ich gar keine Bibliographie ausgebe. Das ist letztlich natürlich auch Geschmackssache (bzw. Sache der Vorgaben).
- Herausgeber im Literaturverzeichnis ohne "/" zur Trennung

- Bei drei Autoren fehlt im Literaturverzeichnis ebenfalls ein "/" vor dem Letzten
Bei dem ersten dieser beiden Punkte verstehe ich nicht, was du meinst, aber du hast revsdnamedelim und finalnamedelim verwechselt. So geht es:
\renewcommand*{\bibrevsdnamedelim}{} 
\renewcommand*{\bibmultinamedelim}{\addslash} 
\renewcommand*{\bibfinalnamedelim}{\addslash} 
- "lasthashbib@field@namehash" und ähnliches, habe ich aber nur im Minimalbeispiel...
Es fehlte ein \makeatletter und \makeatother um die @-Zeichen zu maskieren (Erklärung im Wiki)

bill26
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Sa 14. Mär 2009, 20:53

Beitrag von bill26 »

So, dann nerve ich schon wieder :) Aber ich hoffe zum letzten Mal. Zwei Sachen (hoffentlich einfache) habe ich noch:

- Im Sigelverzeichnis stehen Autoren und Herausgeber in einem anderen Format als im Literaturverzeichnis. Wollte das mit:
\renewbibmacro*{terselos}{...
und \usebibmacro{cite:name} lösen, welches ja auch beim Zitat benutzt wird, klappt aber nicht...

- Lässt sich der Abstand zwischen den Einträgen im Literaturverzeichnis etwas vergrößern? Vielleicht eine Zeile Abstand

Aktuelles Minimalbeispiel:
\documentclass[11pt]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{typearea}

\usepackage[style=authortitle-dw,%my-style
						namefont=italic,
						terselos=false,%führt zu vollständigem Sigelverzeichnis
						firstnamefont=italic,
						idembib=false,%stellt dieselbe/derselbe aus (Literaturverzeichnis)
						nopublisher=false,
						editorstring=normal,
						idemtracker=false,%stellt dieselbe/derselbe aus (im Text)
						firstfull=true,
						pagetracker=true,
						citedas=true]{biblatex}%aktiviert: im folgenden Zitiert als:

\usepackage[babel,german=guillemets]{csquotes} 

\begin{filecontents}{lit.bib}
@BOOK{Bond2003,
  title = {Wir sind ein Paar},
  publisher = {SpringerSchonWieder},
  year = {2003},
  editor = {Ruumenigge, Karl and Grashüpfer, Willi},
  author = {Bond, James and Anderson, Pamela},
  address = {New York/Peking},
  edition = {2., vollständig neu bearbeitetet Edition},
  shorttitle = {Kurztitel},
  shorthand = {Kurztitel}
}
@BOOK{Bond2001,
  title = {Und noch ein Buch von dem Traumpaar},
  publisher = {Sringer},
  year = {2001},
  author = {Bond, James and Anderson, Pamela},
  shorttitle = {ShortCollection},
  booktitle = {Buch heißt, ich bin ein Sammelwerk}
}
@BOOK{Kahn1990,
  title = {This is a long book title that needs more than one row at least},
  publisher = {publisherCouldBeSpringer},
  year = {1990},
  editor = {Meiser, Klaus and Ballack, Domi},
  author = {Kahn, Olli and Brecht, Bert and Kant, Emanuel},
  address = {New York/Berlin},
  edition = {17., total erneuerte Aufl.}
}
\end{filecontents}
\bibliography{lit}

%-----Meine Änderungen------
%Autorenformat ändern
\DeclareNameFormat{default}{%Vollzitate
  \ifnum\value{listcount}=1\relax
    \iffirstinits
      {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
  \else
    \iffirstinits
      {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}%
  \fi
  \usebibmacro{name:andothers}}

% Sigelverzeichnis ändern
\makeatletter
\renewbibmacro*{terselos}{%
\ifbool{bbx:terselos}
  {\ifnameundef{labelname}%kurze Angabe ab hier
    {}
    {\ifnameundef{author}
       {\printnames{editor}%
        \ifdefstring{\bbx@option@editorstring}{brackets}%
          {\addspace}%
          {\ifdefstring{\bbx@option@editorstring}{parens}%
            {\addspace}%
            {\addcomma\space}}%
        \usebibmacro{editorstrg}}
       {\printnames{author}}%\usebibmacro{cite:name}
     \setunit{\labelnamepunct}}%
  \iffieldundef{booktitle}
    {\usebibmacro{maintitle+title}}
    {\usebibmacro{title}%
     \newunit\newblock
     \usebibmacro{in:}%
     \usebibmacro{maintitle+booktitle}}%
  \finentry}%kurze Angabe endet hier
  {\usedriver%lange Angabe ab hier
    {\usebibmacro{cite:name}}% <-- Hier Ausgabe der Namen: \DeclareNameAlias{sortname}{default}
    {\thefield{entrytype}}%
  \finentry}}
\makeatother

% Zeichen zw. Autoren/Editoren in der Bibliographie
\renewcommand*{\bibrevsdnamedelim}{}
\renewcommand*{\bibmultinamedelim}{\slash}
\renewcommand*{\bibfinalnamedelim}{\slash}

% Herausgeber anders schreiben:
\DeclareNameFormat{upshape}{%
\usebibmacro{name:first-last-upshape}{#1}{#3}{#5}{#7}%
\usebibmacro{name:andothers}}
%bibmacro dazu
\newbibmacro*{name:first-last-upshape}[4]{%
	\usebibmacro{name:delim}{#2#3#1}%
	\ifblank{#2}{}{#2\isdot\addlowpenspace}%
	\ifblank{#3}{}{%
		#3\isdot
		\ifpunctmark{’}
		{}
		{\ifuseprefix{\addhighpenspace}{\addlowpenspace}}}%
	#1\isdot
	\ifblank{#4}{}{\addlowpenspace #4\isdot}}
%neues bibmacro, welches altes für Hrsg. ersetzt
\makeatletter
\newbibmacro*{printeditors}{%eigentlicher Name:{editorincoll}, da schon definiert hier geändert
	\ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}}
		{\ifthenelse{\iffieldequals{author}{editor}\AND\NOT\iffirstonpage}
			{\bibnamedash}
			{\usebibmacro{editorstrg}\addspace%
				\printnames[upshape]{editor}\addspace
				\savefield{namehash}{\bbx@lasthash}}%		
		\clearname{editor}}
	{\global\undef\bbx@lasthash}}
\makeatother
%neues bibmacro bei Büchern einsetzen
\DeclareBibliographyDriver{book}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/editor/translator}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{maintitle+title}%
  \newunit
  \usebibmacro{byauthor}%
  \newunit
  \printlist{language}%
  \newunit\newblock
  %\usebibmacro{byeditor+others}%verschoben nach unten
  %\newunit\newblock
  \usebibmacro{edition}%
  \usebibmacro{volumes+volume+part}%
  \setunit{\addspace}%
  \usebibmacro{xrefvolumecheck}%
  \usebibmacro{series+number}%
  \newunit\newblock
  \usebibmacro{printeditors}%NEU für andere Darstellung der Herausgeber
  %\usebibmacro{byeditor+others}%hier eingefügt von oben
  \newunit\newblock%auch von oben
  \printfield{note}%
  \newunit\newblock
  \usebibmacro{publisher+location+year}%
  \newunit\newblock
  \usebibmacro{chapter+pages}%
  \newunit
  \printfield{pagetotal}
  \newunit\newblock
  \ifbool{bbx:isbn}
    {\printfield{isbn}%
     \newunit\newblock}
    {}%
  \ifbool{bbx:doi}
    {\printfield{doi}%
     \newunit\newblock}
    {}%
  \ifbool{bbx:eprint}
    {\printfield{eprint}%
     \newunit\newblock}
    {}%
  \usebibmacro{url+urldate}%
  \newunit\newblock
  \printfield{addendum}%
  \newunit\newblock
  \usebibmacro{pageref}%
  \usebibmacro{finentry}}	
% Shorttitle nur anzeigen falls vorhanden
\renewbibmacro*{cite:normal}{%
  \iffieldundef{shorthand}
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\usebibmacro{cite:ibid}}%
       {\ifthenelse{\ifciteidem\AND\NOT\boolean{cbx:noidem}}%
         {\usebibmacro{cite:idem}%
           \iffieldundef{shorttitle}
             {}%\usebibmacro{cite:title}%verhindert Anzeige des vollen Titels
             {\printfield{shorttitle}}%
          \usebibmacro{cite:save}}
         {\ifnameundef{labelname}
           {\usebibmacro{cite:name}}
           {\usebibmacro{cite:name}}%
             \iffieldundef{shorttitle}
               {}%\usebibmacro{cite:title}%verhindert Anzeige des vollen Titels
               {\printfield{shorttitle}}%
          \usebibmacro{cite:save}}}}%
    {\ifbool{shorthandibid}%Fall shorthand definiert ist geht's hier los
       {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}%
         {\usebibmacro{cite:ibid}}%gleiche Quelle wie vorher, ok so
         {\usebibmacro{cite:name}
         \usebibmacro{cite:shorthand}}}%hier wenn nicht gleiche Quelle vorher
       {\usebibmacro{cite:shorthand}}}}
%---------------------------

\begin{document}
		
	(1)Some Text\footcite[Vgl.][S. 1 f]{Bond2003}
	
	(2)Some Text\footcite[Vgl.][S. 10 f]{Kahn1990}
	
	(3)Some Text\footcite[Vgl.][S. 10 f]{Bond2001}
	
	(4)More\footcite[Vgl.][1-2]{Bond2003}
  
  (5)Nochmal Brot\footcite[Vgl.][1]{Bond2003}
  
  (6)Text\footcite[Vgl.][S. 10 f]{Kahn1990}
	
	(7)More\footcite[Vgl.][1-2]{Bond2003}
	
	\newpage
	\printbibliography
  \printshorthands	

\end{document}
Ich denke meine Prüfer sind recht kleinlich was die Formatierung angeht. Deshalb leider der ganze Aufwand.

Gruß,
Stefan

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

Beitrag von domwass »

bill26 hat geschrieben: - Im Sigelverzeichnis stehen Autoren und Herausgeber in einem anderen Format als im Literaturverzeichnis. Wollte das mit:
\renewbibmacro*{terselos}{...
und \usebibmacro{cite:name} lösen, welches ja auch beim Zitat benutzt wird, klappt aber nicht...
Lass das bibmacro wie es ist, und ergänze stattdessen Folgendes:
\renewcommand*{\revsdnamedelim}{} 
\renewcommand*{\multinamedelim}{\slash} 
\renewcommand*{\finalnamedelim}{\slash} 
Das hab ich nicht dokumentiert, sollte ich vielleicht nachholen...
bill26 hat geschrieben: - Lässt sich der Abstand zwischen den Einträgen im Literaturverzeichnis etwas vergrößern? Vielleicht eine Zeile Abstand
Siehe biblatex-Doku, Abschnitt '3.8.3 Lengths and counters'. Der betreffende Zähler ist \bibitemsep.
\addtolength{\bibitemsep}{\baselineskip}
fügt eine Zeile Abstand ein.

Gruß,
Dominik.-

Antworten