Literaturverzeichniss nach Chapter

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


jan_org
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 26. Mär 2019, 14:16

Literaturverzeichniss nach Chapter

Beitrag von jan_org »

Sofern ich eine Bibtex-Datei nutze, werden im Literaturverzeichniss nur die Einträge aufgeführt, die ich tatsächlich auch zitiere. So soll das auch sein.

Nun möchte ich allerdings, dass nur die Einträge die in einem Chapter zitiert werden im Verzeichniss dieses Chapters erscheinen. Im nächsten Chapter soll die gleiche Bibtex-Datei verwendet werden, allerdings werden unterschiedliche Einträge zitiert. Entsprechend müssen sich die Literaturverzeichnisse unterscheiden

Gast

Beitrag von Gast »

Mit biblatex und biber geht das mit refsections ganz komfortabel. Es gibt sogar eine Option, die das automatisch für die Kapitel anwendet.
\documentclass[ngerman]{report}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[style=authoryear, refsection=chapter, backend=biber]{biblatex}


\addbibresource{biblatex-examples.bib}


\begin{document}
\chapter{Eins}
\cite{sigfridsson,worman,geer}
\printbibliography[heading=subbibliography]

\chapter{Zwei}
\cite{sigfridsson,nussbaum,westfahl:space,knuth:ct:b}
\printbibliography[heading=subbibliography]

\chapter{Drei}
\cite{knuth:ct:a,sigfridsson,knuth:ct:b,knuth:ct:c}
\printbibliography[heading=subbibliography]
\end{document}
Ob und wie das bei Dir genau anwendet werden kann, kann ich nur mit einem Minimalbeispiel sagen.

jan_org
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 26. Mär 2019, 14:16

Beitrag von jan_org »

Da ich nicht mit biblatex arbeite, habe ich mich entschieden, einzelene Verzeichnisse zu verwenden. D.h. nach einem Kapitel etwa
\bibliography{chapter_1}
nach dem nächsten Kapitel
\bibliography{chapter_2}

Nach Kapitel 2 wird allerdings das Verzeichniss entsprchend chapter_1 ausgegeben.

Gast

Beitrag von Gast »

Einzelne Verzeichnisse gehen in BibTeX nicht einfach so "out of the box". Da braucht man extra Pakete und eventuell komplexere Kompilierschritte. Es gibt mehrere Pakete, die so etwas anbieten, z.B. chapterbib oder bibunits. Näheres steht in den Anleitungen, eventuell sind auch Fragen bei TeX.SX hilfreich: https://tex.stackexchange.com/q/333617/35864 oder https://tex.stackexchange.com/q/312897/35864 es gibt aber auch noch andere Treffer bei Suchen danach: https://www.mrunix.de/forums/showthread ... d-bibunits

Probier die beiden Pakete ruhig einfach mal aus. Wenn Du Probleme hast, dann bekommst Du mit einem lauffähigen und vollständigen Minimalbeispiel sicher Hilfe. Ohne Minimalbeispiel besteht immer das Problem, dass sich Helfer viele Dinge selbst aus den Fingern saugen müssen (passende .bib-Dateien, eine Präambel) und viele Dinge raten müssen (die dann mit Deinem Dokument im schlimmsten Fall inkompatibel sind). Das schmälert zumindest meinen Enthusiasmus immer sehr stark. Zu häufig passiert es mir, dass ich viel Zeit investiere, etwas nachzubauen, das bei anderen schon längst vorhanden ist und mit ein paar Mausklicks auch bereitgestellt werden könnte, nur um dann feststellen, dass meine Vorschläge aus Gründen, die ein Minimalbeispiel gezeigt hätte, nicht mit der geplanten Nutzung kompatibel ist. Wenn dann auf den Vorschlag nur ein "Danke, aber es geht nicht" zurückkommt, obwohl der Vorschlag prinzipiell (und auch in einem in der Antwort gezeigten Beispiel) funktioniert, dann ist das schon ein bisschen enttäuschend und manchmal (wenn ich mir viel Mühe gemacht habe und meine Lösung mag) auch frustrierend.

Mit biblatex und biber geht das aber wie oben gezeigt wesentlich einfacher, da keine zusätzlichen Pakete vonnöten sind und Biber/BibTeX nicht mehrmals auf unterschiedlichen Dateien aufgerufen werden muss.

jan_org
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 26. Mär 2019, 14:16

Beitrag von jan_org »

Wie vorgeschlagen versuche ich, auf biblatex umzusteigen und verwende dafür:
\usepackage[style=authoryear, refsection=chapter, backend=biber]{biblatex}

\addbibresource{paper.bib}
In Texstudio habe ich hoffentlich die richtigen Einstellungen vorgenommen. Wenn ich nun mittels F8 biber ausführen möchte, passiert lediglich folgendes:
Prozess gestartet: biber.exe "Paper"

Prozess endete mit Fehler(n)
Dateianhänge
1.PNG
1.PNG (92.31 KiB) 2679 mal betrachtet
2.PNG
2.PNG (16.65 KiB) 2684 mal betrachtet

Gast

Beitrag von Gast »

Die Einstellungen sehen so weit OK aus, vgl. auch https://tex.stackexchange.com/q/154751/35864 oder https://www.texwelt.de/wissen/fragen/19 ... nem-editor

Über welche Fehler beschwert Biber sich denn? Eigentlich sollte da ein bisschen mehr stehen als nur "Prozess endete mit Fehler(n)". Die relevante Logdatei mit allen Informationen ist die .blg-Datei (unter Windows wird die u.U. als Leistungsüberwachungsdatei erkannt, sie ist aber dennoch eine einfache Textdatei, die Du mit Deinem Lieblingseditor öffnen kannst und dann hier in Gänze einfügen kannst).

Hast Du probiert, mal über die Kommandozeile zu kompilieren? Also
pdflatex mydoc
biber mydoc
pdflatex mydoc
pdflatex mydoc
im Terminal auszuführen https://texwelt.de/wissen/fragen/3461/w ... m-terminal wenn Deine TeX-Datei mydoc.tex heißt.

Weiterführende Erste-Hilfe-Tipps für Biber sind unter https://tex.stackexchange.com/q/286706/35864 zu finden.

jan_org
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 26. Mär 2019, 14:16

Beitrag von jan_org »

Es wird überhaupt keine blg Datei erzeugt.

Wenn ich manuell komplieren möchte, kommt die Meldung: "'pdflatex' is not recognizes as an internal or external command,..."

Gast

Beitrag von Gast »

Wenn gar keine .blg-Datei vorhanden ist, dann hast Du Biber nicht ordnungsgemäß aufgerufen.

Wenn Du eine Meldung der Art is not recognized as an internal or external command bekommst, dann deutet das darauf hin, dass Deine TeX-Programme nicht im Pfad sind. Das heißt, der Ordner in dem sie liegen, wird nicht automatisch vom System nach ausführbaren Programmen durchsucht, wenn Programme nur mit Namen und nicht mit dem ganzen Pfad aufgerufen werden. Aber LaTeX kannst Du schon über Deinen Editor aufrufen?

Welche TeX-Distribution (MikTeX oder TeX live) hast Du denn installiert? Auf welchem System (Windows 7, 8, 10 oder Ubuntu ... oder ...)? Kannst Du mal die gesamten Einstellungen Deines Editors zeigen? Wird da der Pfad extra angegeben?

Die etwas ältere Anleitung (also mit Vorsicht genießen) http://sachaepskamp.com/wp-content/uplo ... nstall.pdf zeigt, wie man den Pfad setzen kann. Es gibt aber auch unzählige andere Tutorials zu dem Thema im Netz. Eigentlich sollte das aber gar nicht nötig sein, denn laut https://www.tug.org/texlive/windows.html und https://miktex.org/howto/modify-path sollten sowohl TeX live als auch MikTeX auf Windows den Pfad automatisch bei der Installation korrekt anpassen.

jan_org
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 26. Mär 2019, 14:16

Beitrag von jan_org »

Anbei ein Minimalbeispiel, die Datei heißt bei mir mew.tex
\documentclass[12pt,a4paper]{report}
\usepackage[style=authoryear, refsection=chapter, backend=biber]{biblatex}

\addbibresource{mew.bib}
\begin{document}
\chapter{1}
\cite{acemoglu02}
	\printbibliography[heading=subbibliography]
\chapter{2}
\cite{borjas03}	
	\printbibliography[heading=subbibliography]
\end{document}
Im selben Ordner ist die Datei "mew.bib"

Gast

Beitrag von Gast »

Als Minimalbeispiel ist diese Datei für uns so nicht geeignet, da wir Deine .bib-Datei ja nicht haben. Stattdessen würde ich Dir raten, zunächst mein Minimalbeispiel von oben zu probieren, das nutzt nämlich die Datei biblatex-examples.bib, die auf jedem System, auf dem biblatex installiert ist, vorhanden sein sollte und daher nicht mitgegeben werden muss.

An der Stelle sei erwähnt, dass die bis jetzt von Dir gemeldeten Fehler wohl eher weniger mit dem TeX-Code an sich als eher mit dem Aufruf der notwendigen Programme (pdfLaTeX, Biber, ...) zusammenzuhängen. Das macht die Sache für uns etwas schwieriger, da wir nicht über dieselbe Ausgangslage verfügen können, wie in dem Fall, wenn LaTeX und Biber laufen und Logmeldungen ausgeben. Gehe daher bitte meinen letzten Kommentar von 13:38 genau durch , führe die Schritte aus und beantworte die dort gestellten Fragen soweit möglich.

Antworten