Ich versuche, eine Bibliographie Kapitel für Kapitel zu erstellen. Ich habe das Paket chapterbib im Stil der RSC-Bibliographie verwendet. Das Problem ist, dass es am Ende nicht kompiliert wird. Hier ist ein Teil der Präambel, die ich verwende
\documentclass[12pt,a4paper]{book}
\usepackage[utf8]{inputenc}
\usepackage[greek,francais]{babel}
\usepackage[T1]{fontenc}
\usepackage[left=2cm,right=2cm,top=3cm,bottom=3cm]{geometry}
\usepackage{chapterbib}
\usepackage{rsc}
\usepackage{fancyhdr}
\pagestyle{fancy}
\usepackage[numbers]{natbib}
\usepackage{hyperref}
\hypersetup{colorlinks=true, linkcolor=blue,citecolor=blue}
\begin{document}
\include{partie_1}
\include{annexe_1}
\end{document}
Am Ende jedes Teils steht:
\blibliographystyle{angew}
\bibliography{biblio.bib}
Bei mir kommt nur diese Fehlermeldung:
This is BibTeX, Version 0.99d (TeX Live 2012) The top-level auxiliary file:
maitre.aux A level-1 auxiliary file: partie_1.aux The style file: angew.bst
A level-1 auxiliary file: annexe_1.aux Illegal, another \bibstyle
command---line 5 of file annexe_1.aux : \bibstyle : {angew} I'm skipping
whatever remains of this command Illegal, another \bibdata command---line 6
of file annexe_1.aux : \bibdata : {rsc-maitre,biblio} I'm skipping whatever
remains of this command Database file #1: rsc-maitre.bib Database file #2:
biblio.bib (There were 2 error messages)
Ohne die Verwendung von Chapterbib funktioniert es einwandfrei.
Bearbeiten: Nachdem ich mir andere Beiträge angesehen habe, möchte ich nur klarstellen, dass ich bibteX für jede Datei gestartet habe, bevor ich die Quelldatei gestartet habe, und zwar nach pdflatex -> bibtex -> pdflatex (x2) -> PDF anzeigen
Antwort1
Sie können Makefile
hierzu ein oder ein Skript erstellen. Das Skript kann vom TexMaker oder einem anderen Editor aufgerufen werden.
Unter Linux verwende ich Makefile
hierfür ein . Ich muss es nur ausführen make
und schon ist alles kompiliert! :)
Ein Makefile
oder Skript ist nützlich, da Sie sich nicht an eine Editorkonfiguration halten müssen. Sie können es auch von einem Terminal aus ausführen und so jeden beliebigen Editor verwenden.
Hier ist ein Makefile
Beispiel:
# Main project filename (without .tex extention)
FILE=main
all:
$(MAKE) latex
$(MAKE) bibperchapter
$(MAKE) latex
$(MAKE) latex
dvipdf \
-dPDFSETTINGS=/prepress \
-dGrayImageResolution=600 \
-dColorImageResolution=600 \
-dMonoImageResolution=600 \
-dSubsetFonts=true \
-dEmbedAllFonts=true \
-dMaxSubsetPct=100 \
-dCompatibilityLevel=1.5 \
-sPAPERSIZE=a4 $(FILE).dvi
bibperchapter:
for auxfile in text/ch*.aux ; do \
bibtex $(basename $$auxfile .aux) ; \
done
latex:
latex -interaction batchmode $(FILE)
Dies Makefile
führt latex
(pdftex) bibtex
für jedes Kapitel aus und konvertiert die DVI-Datei in PDF (ich verwende den DVIPS-Treiber). Achten Sie auf das bibperchapter
Ziel. Sie müssen es entsprechend dem Speicherort Ihrer Kapitel bearbeiten. In diesem Fall befinden sich die Kapitel inText/Ordner und alle Dateinamen beginnen mitCH-.
Sie können es Ihren Bedürfnissen entsprechend ändern. Es lässt sich problemlos an die von Ihnen verwendete Plattform (Windows, Linux, macOS) anpassen.
Antwort2
Ok, es sieht also so aus, als ob ich nur meine Hauptdatei manuell mit pdflatex kompilieren musste, dann einmal mit bibtex für jeden enthaltenen Teil und dann zweimal mit pdflatex auf der Hauptdatei ...
Ist es möglich, eine schnelle Kompilierung mit TexMaker durchzuführen? ...