shortener
16-01-2011, 11:39
Hi
Vorneweg: Ich verwende biblatex-dw mit dem authortitle-dw-Stil.
Ich möchte einmalig zitierte Werke als Vollzitat in die Fussnoten schreiben, jedoch sollen diese dann aber nicht mehr im Literaturverzeichnis erscheinen.
Das Unterdrücken im Literaturverzeichnis kann ich mit
options = {skipbib=true}
bewerkstelligen. Jedoch kann es dann in den Fussnoten zu einem Konflikt kommen, wenn ich einmalig und mehrmalig zitierte Literatur vermische:
\footfullcite{buch-einmal-zitiert}
\autocites[Vgl.][Rn.~2034]{buch-mehrmals-zitiert}
So werden zwei verschiedene Fussnoten angelegt anstatt alles unter einer zu schreiben.
Also habe ich die Ausgabe von authortitle-dw folgendermassen geändert:
\renewbibmacro*{cite}{%
\usebibmacro{cite:citepages}%
\global\boolfalse{cbx:loccit}%
\global\let\cbx@tempa\empty
\ifbool{cbx:firstfull}{
\ifciteseen%
{\usebibmacro{cite:normal}}%
{\iffieldequalstr{options}{skipbib=true}{%
\usebibmacro{cite:firstfull}}%
{\usebibmacro{cite:normal}}}%
}{\usebibmacro{cite:normal}}}
Das funktioniert soweit nun auch wie es soll. Allerdings stellen sich mir hierbei noch zwei Fragen:
1.) Ich muss dass \renewbibmacro*{cite} in authortitle-dw.cbx kopieren, damit das Ganze läuft. Sonst erhalte ich Fehlermeldungen wie
Undefined control sequence
\abx@macro@cite:title -> \cbx@tempa
Ich vermute, dass dies wegen den globalen Variablen in \renewbibmacro*{cite} ist.
Vielleicht kennt jemand eine Lösung, da ich den Codeabschnitt lieber in einer separaten Datei speichern möchte, damit dieser auch bei einer Aktualisierung des Pakets erhalten bleibt.
2.) Gibt es einen besseren Lösungsweg, damit man nicht immer mit skipbib=true arbeiten muss? Ich stelle mir das folgendermassen vor: Es wird gezählt, ob ein Werk mehrfach zitiert wird. Wenn ja, dann kommt es ins Literaturverzeichnis und erhält kein Vollzitat in der Fussnote; wenn nein, dann umgekehrt.
Vielen Dank für eure Lösungsvorschläge.
Vorneweg: Ich verwende biblatex-dw mit dem authortitle-dw-Stil.
Ich möchte einmalig zitierte Werke als Vollzitat in die Fussnoten schreiben, jedoch sollen diese dann aber nicht mehr im Literaturverzeichnis erscheinen.
Das Unterdrücken im Literaturverzeichnis kann ich mit
options = {skipbib=true}
bewerkstelligen. Jedoch kann es dann in den Fussnoten zu einem Konflikt kommen, wenn ich einmalig und mehrmalig zitierte Literatur vermische:
\footfullcite{buch-einmal-zitiert}
\autocites[Vgl.][Rn.~2034]{buch-mehrmals-zitiert}
So werden zwei verschiedene Fussnoten angelegt anstatt alles unter einer zu schreiben.
Also habe ich die Ausgabe von authortitle-dw folgendermassen geändert:
\renewbibmacro*{cite}{%
\usebibmacro{cite:citepages}%
\global\boolfalse{cbx:loccit}%
\global\let\cbx@tempa\empty
\ifbool{cbx:firstfull}{
\ifciteseen%
{\usebibmacro{cite:normal}}%
{\iffieldequalstr{options}{skipbib=true}{%
\usebibmacro{cite:firstfull}}%
{\usebibmacro{cite:normal}}}%
}{\usebibmacro{cite:normal}}}
Das funktioniert soweit nun auch wie es soll. Allerdings stellen sich mir hierbei noch zwei Fragen:
1.) Ich muss dass \renewbibmacro*{cite} in authortitle-dw.cbx kopieren, damit das Ganze läuft. Sonst erhalte ich Fehlermeldungen wie
Undefined control sequence
\abx@macro@cite:title -> \cbx@tempa
Ich vermute, dass dies wegen den globalen Variablen in \renewbibmacro*{cite} ist.
Vielleicht kennt jemand eine Lösung, da ich den Codeabschnitt lieber in einer separaten Datei speichern möchte, damit dieser auch bei einer Aktualisierung des Pakets erhalten bleibt.
2.) Gibt es einen besseren Lösungsweg, damit man nicht immer mit skipbib=true arbeiten muss? Ich stelle mir das folgendermassen vor: Es wird gezählt, ob ein Werk mehrfach zitiert wird. Wenn ja, dann kommt es ins Literaturverzeichnis und erhält kein Vollzitat in der Fussnote; wenn nein, dann umgekehrt.
Vielen Dank für eure Lösungsvorschläge.