Ich versuche, eine separate Bib-Datei für zwei Arten von Referenzen zu verwenden: akademische (Artikel, Zeitschriften usw.) und nicht-akademische (Websites, Blogs usw.).
Um sie zu trennen, erstelle ich eine Datei Academic.bib
:
@article{academic,
journal = "Journal",
title = "Title",
author = "Author",
year = "2014"
}
Und noch eine Datei Non-academic.bib
:
@article{nonacademic,
journal = "Journal",
title = "Title",
author = "Author",
year = "2014"
}
Wenn ich jedoch versuche, sie in meinem Dokument zu referenzieren, gibt Bibtex den Fehler aus
"Illegal, another \bibdata command".
Hier ist ein Minimalbeispiel:
\documentclass[a4paper,12pt,abstracton,titlepage]{scrartcl}
\usepackage{scrpage2}
\usepackage[utf8]{inputenc}
\title{Test document}
\author{Me}
\begin{document}
\maketitle
\newpage
\tableofcontents
\clearpage
\cite{academic} \cite{nonacademic}
\appendix
\section{Bibliography}
\label{sec:bibliography}
\bibliographystyle{plain}
\subsection{Academic}
\bibliography{Academic}{}
\bibliography{Academic,Non-academic}{}
\subsection{Non-Academic}
\bibliography{Non-academic}{}
\end{document}
Wie erreiche ich das gewünschte Ergebnis?
Antwort1
Bibtex-Lösung:
Mehrfachbibliographien sind mit Standard-Bibtex nicht möglich. Das multibib
Paket ermöglicht dies jedoch.
multibib
bietet die \newcites{ac}{Academic}
Befehle, die die Proxies an Standard-Bibliographiebefehle anhängen , ac
also , \citeac
, \nociteac
und . Das zweite Argument ist die Überschrift der Bibliographie. In diesem Fall ist ein zweites erforderlich, also\bibliographystyleac
\bibliographyac
\newcites
\newcites{nac}{Non-academic}
Nach dem Ausführen latex
muss bibtex
für jedes ausgeführt werden \newcites
; in diesen Fällen:
bibtex ac
bibtex nac
und dann noch zweimal Latex.
Hier ist ein vollständiges MWE:
\documentclass[a4paper,12pt,abstracton,titlepage]{scrartcl}
\usepackage{scrpage2}
\usepackage{multibib}
\usepackage[utf8]{inputenc}
\newcites{ac}{Academic}
\newcites{nac}{Non-Academic}
\title{Test document}
\author{Me}
\begin{document}
\maketitle
\newpage
\tableofcontents
\clearpage
\
\citeac{academic} \citenac{nonacademic}
\appendix
\section{Bibliography}
\label{sec:bibliography}
\bibliographystyleac{plain}
\bibliographyac{Academic}{}
\bibliographystylenac{plain}
\bibliographynac{Non-academic}{}
\end{document}
Produktion:
Biblatex-Lösung
biblatex erlaubt mehrere Bibliographien. In diesem Fall kann man eine spezielle Kategorie non
für nicht-akademische bibliografische Einträge definieren und dann die Optionen category
und von verwendennotcategory
\printbibliography
\documentclass[a4paper,12pt,abstracton,titlepage]{scrartcl}
\usepackage{scrpage2}
\usepackage{biblatex}
\addbibresource{Academic.bib}
\addbibresource{Non-academic.bib}
\DeclareBibliographyCategory{non}
\addtocategory{non}{nonacademic}
\usepackage[utf8]{inputenc}
\title{Test document}
\author{Me}
\begin{document}
\maketitle
\newpage
\tableofcontents
\clearpage
\
\cite{academic} \cite{nonacademic}
\appendix
\section{Bibliography}
\label{sec:bibliography}
\printbibliography[title=Academic,heading=subbibliography,notcategory=non]
\printbibliography[title={Non-Academic},heading=subbibliography,category=non]
\end{document}