Anpassung CiteCommand, BibliographyString und Sortierung

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


lhiapgpeonk
Forum-Newbie
Forum-Newbie
Beiträge: 5
Registriert: So 18. Sep 2011, 16:50

Anpassung CiteCommand, BibliographyString und Sortierung

Beitrag von lhiapgpeonk »

Hallo allerseits,

ich bin gerade für meine Freundin einen auf ihre Uni zugeschnittenen Zitierstil am basteln. Dieser Stil basiert auf "verbose-inote". Die Anpassung verschiedener Trennzeichen (z.B. ":" statt "." hinter Autor) habe ich dank dem Artikel in DTK hinbekommen.

Ich stehe momentan vor zwei Problemen.
1. Es werden mehrere Werke des gleichen Autors zitiert. Diese Erscheinen im Literaturverzeichnis unter dem Autor zusammengefasst in alphabetischer Reihenfolge. Wünschenswert wäre es, die Werke immernoch zusammengefasst nach Autor, danach aber nach Erscheinungsjahr zu sortieren. Wie sich das anpassen lässt, ist mir aus der biblatex-doku nicht ganz klar geworden.

2. Besonders die Primärliteratur ist mit "shorthand"-Einträgen versehen. Die gewünschte Zitierweise ist folgende:
Erstzitat: Voll, in Fußnote, mit Angabe über verwendetes Kürzel. Das macht soweit keine Probleme.
Folgezitat: Im Text, in Klammern
Hier gibt es ein Problem bzw. einen Wunsch meinerseits. Da in den BibliographOptions citetracker=true, ist er in der Lage das erste Zitat im Text sofort mit Kürzel anzugeben. Alle Zitate werden mit \footcite angegeben. Um das Zitat im Fließtext anzubringen muss auf \cite gewechselt werden. Das ist aber unkomfortabel, da es sein kann, dass vor dem \footcite dieses speziellen Entrages ein weiteres Zitat desselben eingefügt wird, was zur Folge hat, dass das schon bestehende \footcite in \cite geändert werden sollte. (Ich hoffe, ihr könnt mir folgen :D )
Meine Idee ist folgende:
Abänderung des \footcite-Befehls dergestalt, dass:
1. Das erste Zitat ein Vollzitat in der Fußnote ist.
2. Bei einem Folgezitat unterschieden wird: \iffieldundef{shorthand}
2a) Keine shorthand definiert: Folgezitat in Fußnote
2b) shorthand definiert: Zitat ders. im Fließtext

Als Zusätzliche Anforderung besteht der Wunsch, dass das Zitat im Fließtext von Klammern umschlossen werden soll.


zu Testzwecken habe ich eine Kopie von \DeclareCiteCommand{\cite} angelegt und den Befehl \zite genannt.
\DeclareCiteCommand{\zite}[\mkbibfootnote]
  {%
  \ifciteseen%
  	{\iffieldundef{shorthand}%
  		{\usebibmacro{prenote}}%ja
  		{(\usebibmacro{prenote}}%nein
  	}%ja
  	{\usebibmacro{prenote}}%nein
  }%
  {\usebibmacro{citeindex}%
  	\usebibmacro{footcite}}
%   \iffootnote
%     {\usebibmacro{footcite}}
%     {\usebibmacro{cite}}}
  {\multicitedelim}
  {%
  \ifciteseen%
  	{\iffieldundef{shorthand}%
  		{\usebibmacro{cite:postnote}}%ja
  		{\usebibmacro{cite:postnote})}%nein
  	}%ja
  	{\usebibmacro{cite:postnote}}%nein
  }%
Das funktioniert soweit ganz gut. Das einzige Problem ist die Option [\mkbibfootnote]. Ich benötige diese Option um normale Zitate in die Fußnote zu bekommen, es verhindert aber, dass die Zitate, die im Fließtext erscheinen sollen darin erscheinen.

Folgendes Beispiel funktioniert bei mir und demonstriert den Effekt:
\documentclass{scrartcl}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[babel,german=quotes]{csquotes}
\usepackage[style=verbose-inote,backend=bibtex8]{biblatex}
\bibliography{Bib}
\usepackage{amsmath}
\usepackage{geometry}
\geometry{includehead,includefoot,inner=2.5cm,outer=2.5cm,top=2.5cm,bottom=2cm}
\usepackage{lmodern}

\deffootnote[1em]{1em}{1em}{\textsuperscript{\thefootnotemark} } %Fußnotendefinition: \deffootnote[Markenbreite]{Einzug}{Absatzeinzug}{Markendefinition} Standard: \deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}} 

% Bezeichnungen "f" und "ff" ohne Abkürzungspunkt
\DefineBibliographyStrings{ngerman}{sequens={f},sequentes={ff}}
% Einfügen mit \psq bzw. \psqq

% Kein Abstand vor "f" und "ff"
\renewcommand*{\sqspace}{}

\renewcommand*{\labelnamepunct}{\addcolon\space} %Doppelpunkt nach Autor

\DeclareCiteCommand{\zite}[\mkbibfootnote]
  {%
  \ifciteseen%
  	{\iffieldundef{shorthand}%
  		{\usebibmacro{prenote}}%ja
  		{(\usebibmacro{prenote}}%nein
  	}%ja
  	{\usebibmacro{prenote}}%nein
  }%
  {\usebibmacro{citeindex}%
  	\usebibmacro{footcite}}
%   \iffootnote
%     {\usebibmacro{footcite}}
%     {\usebibmacro{cite}}}
  {\multicitedelim}
  {%
  \ifciteseen%
  	{\iffieldundef{shorthand}%
  		{\usebibmacro{cite:postnote}}%ja
  		{\usebibmacro{cite:postnote})}%nein
  	}%ja
  	{\usebibmacro{cite:postnote}}%nein
  }%

\usepackage{filecontents}
\begin{filecontents}{Bib.bib}
@BOOK{flocke,
  title = {Vampirinnen. "`Ich schaue in den Spiegel und sehe nichts"'. Die kulturellen
	Inszenierungen der Vampirin},
  publisher = {Konkursbuchverlag},
  year = {1999},
  author = {Petra Flocke},
  address = {Tübingen}
}

@BOOK{hp1,
  title = {Harry Potter und der Stein der Weisen},
  publisher = {Carlsen},
  year = {1998},
  author = {Joanne K. Rowling},
  address = {Hamburg},
  keywords = {prim},
  shorthand = {I}
}
\end{filecontents}

\begin{document}
Demotext\zite[41]{flocke}.
\newpage
bla blubb\zite[41\psq]{flocke}\\
blubb\zite[41\psqq]{flocke}\\
Ein erneuter Text\zite{hp1} um zu testen\zite[Vgl.][25]{hp1} wie das mit\zite[25]{hp1} shorthand\zite[25]{hp1} funktioniert.
\newpage
\printbibliography
\printshorthands
\end{document}
Interessanterweise bekomme ich nach dem Vollzitat mit der Angabe der Abkürzung auch eine "Klammer zu" ausgegeben.

Könnt ihr mich bei der verbesserung dieses Codes unterstützen?

Gruß
Hagen

gehess
Forum-Century
Forum-Century
Beiträge: 172
Registriert: Do 8. Apr 2010, 22:44

Re: Anpassung CiteCommand, BibliographyString und Sortierung

Beitrag von gehess »

lhiapgpeonk hat geschrieben: 1. ... Wünschenswert wäre es, die Werke immernoch zusammengefasst nach Autor, danach aber nach Erscheinungsjahr zu sortieren. Wie sich das anpassen lässt, ist mir aus der biblatex-doku nicht ganz klar geworden.
\usepackage[style=verbose-inote,backend=bibtex8, sorting=nyt]{biblatex}
Die Abänderung des footcite-Befehls übersteigt meine Kenntnisse. Zur Zitierung im Text mit Klammern gibts jedenfalls den Befehl \parencite. Ich zitiere selbst oft mit shorthands und wechsel dann zwischen footcite und parencite manuell. Eine automatisierte Variante hierfür fände ich allerdings auch interessant.

gruß gehess

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

Re: Anpassung CiteCommand, BibliographyString und Sortierung

Beitrag von domwass »

lhiapgpeonk hat geschrieben:Ich stehe momentan vor zwei Problemen.
1. Es werden mehrere Werke des gleichen Autors zitiert. Diese Erscheinen im Literaturverzeichnis unter dem Autor zusammengefasst in alphabetischer Reihenfolge. Wünschenswert wäre es, die Werke immernoch zusammengefasst nach Autor, danach aber nach Erscheinungsjahr zu sortieren. Wie sich das anpassen lässt, ist mir aus der biblatex-doku nicht ganz klar geworden.
Option sorting=nyt
2. […] Das einzige Problem ist die Option [\mkbibfootnote]. Ich benötige diese Option um normale Zitate in die Fußnote zu bekommen, es verhindert aber, dass die Zitate, die im Fließtext erscheinen sollen darin erscheinen.
Hier würde ich ansetzen und statt \mkbibfootnote ein neues Makro
definieren, etwa \mkbibfootintext oder so. Dort würde ich dann mittels
\iffootnote testen, ob du dich bereits in einer Fußnote befindest. Ich hab’s
jetzt mangels Zeit nicht ausprobiert, aber es wäre einen Versuch wert.

Gruß,
Dominik.-

lhiapgpeonk
Forum-Newbie
Forum-Newbie
Beiträge: 5
Registriert: So 18. Sep 2011, 16:50

Beitrag von lhiapgpeonk »

Hallo!

Danke erst einmal, das mit dem sortieren funktioniert vollstens in der intendierten Weise :wink:

Das mit dem \mkbibfootnote verstehe ich nicht so ganz. In der Doku steht, das sei ein Wrapper, der den ihm übergebenen Text in eine Fußnote packt.

Ich habe mal einen neuen Befehl geschrieben:
\newcommand*{\mkbibentscheid}{
\iffieldundef{shorthand} %Wenn keine Shorthand existiert
{\mkbibfootnote}
{}
}
Der hat allerdings zur Folge, dass weiterhin alles in die Fußnote geschrieben wird. Wenn ich nun in meinem \zite-Befehl \usebibmacro{footcite} in \usebibmacro{cite} umändere, zitiert er nichts mehr in Fußnoten und kann mir beim ersten Wiederholungszitat ohne shorthand kein Label anzeigen. *mpf*

Ist der Ansatz richtig? Oder laufe ich in die falsche Richtung?

Gruß
Hagen

Antworten