
Für eine Stildatei möchte ich automatisch einen Danksagungsabsatz/Textabschnitt vor den Referenzen generieren (basierend auf einigen Optionen, die durch benutzerdefinierte Makros festgelegt werden). Der Ansatz sollte sowohl mit als auch funktionieren bibtex
. biblatex
Wie geht das?
Bei der Verwendung von Bibtex kann ich dies erreichen, indem ich Folgendes voranstelle thebibliography
:
\BeforeBeginEnvironment{thebibliography}{%
\section{Acknowledgements}%
Example text.%
}
Dies funktioniert nicht mit biblatex. Ich habe versucht,\printbibliography
\pretocmd\printbibliography{%
\section{Acknowledgements}%
Example text.%
}{}{}%
Aber das funktioniert nicht. Gibt es dafür eine einfache/elegante Lösung?
++++ Update zur Bereitstellung eines MWE
Entschuldigen Sie, dass ich kein MWE bereitgestellt habe. Nehmen wir an, es gibt eine template.bib, die eine Referenz enthält:
@article{RSA78,
author = {Ronald L. Rivest and Adi Shamir and Leonard M. Adleman},
title = {A Method for Obtaining Digital Signatures and Public-Key Cryptosystems},
pages = {120--126},
year = {1978},
journal = {Communications of the ACM},
volume = {21},
number = {2},
publisher = {ACM New York, NY, USA},
doi = {10.1145/359340.359342},
}
Dann möchte ich vor der Anzeige der Referenzen automatisch einen Absatz/Absatz einfügen (ohne dass der Autor seinerseits Befehle ändern muss). Dies ist ein MWE:
\documentclass{article}
\begin{document}
This is an example citation~\cite{RSA78}.
\bibliographystyle{alphaurl}
\bibliography{template}
\end{document}
Bei Verwendung von Bibtex kann ich dies wie folgt erreichen:
\documentclass{article}
\usepackage{etoolbox}
\BeforeBeginEnvironment{thebibliography}{%
\section*{Acknowledgements}%
Section text.%
}
\begin{document}
This is an example citation~\cite{RSA78}.
\bibliographystyle{alphaurl}
\bibliography{template}
\end{document}
Wie macht man das mit Biblatex/Biber? MWE:
\documentclass{article}
\usepackage{biblatex}
\addbibresource{template.bib}
\begin{document}
This is an example citation~\cite{RSA78}.
\printbibliography
\end{document}
Die Verwendung der Notizoption führt \printbibliography
nicht zu dem gewünschten Ergebnis.
Antwort1
biblatex
hat bereits eine Infrastruktur für diese Art der Einfügung, es ist nicht nötig, die internen Komponenten neu zu definieren, um dies zu tun. Nämlich die prenote
Option to \printbibliography
, die es Ihnen ermöglicht, eine mit definierte Bibnote auszuwählen \defbibnote
. Sie können entweder zum Zeitpunkt des Aufrufs festlegen \printbibliography
oder mit globale Standardwerte festlegen \DeclarePrintbibliographyDefaults
, je nach Ihrem tatsächlichen Anwendungsfall. Im Beispiel lege ich prenote
als Standard und title
lokal fest, da dies sinnvoller erscheint:
\documentclass{article}
\usepackage{biblatex}
\addbibresource{template.bib}
\defbibnote{myprenote}{Section text.}
\DeclarePrintbibliographyDefaults{prenote=myprenote}
\begin{document}
This is an example citation~\cite{RSA78}.
\printbibliography[title=Acknowledgements]
\end{document}
Bearbeiten: Wie in den Kommentaren klargestellt (der Kommentar wurde jedoch später bearbeitet...), war eigentlich etwas vor der Überschrift selbst erwünscht. Dafür können Sie ein \defbibheading
: setzen.
\documentclass{article}
\usepackage{biblatex}
\addbibresource{template.bib}
\defbibheading{myheading}[\bibname]{%
\section*{Acknowledgements}%
Section text.%
\section*{#1}%
\markboth{#1}{#1}}
\DeclarePrintbibliographyDefaults{heading=myheading}
\begin{document}
This is an example citation~\cite{RSA78}.
\printbibliography
\end{document}