LaTeX: bibliographie par chapitre

j'aide un collègue avec sa thèse de doctorat et nous avons besoin de présenter la bibliographie à la fin de chaque chapitre.

La question est: est-ce que quelqu'un a un exemple de travail minimal pour ce cas en utilisant latex+bibtex?

la structure actuelle des documents que nous utilisons est la suivante:

main.tex
chap1.tex
chap2.tex
...
chapn.tex
biblio.bib

main.tex contient des paquets, des déclarations de documents, des macros et includes pour chaque chapitre. biblio.bib est le fichier bibtex (je pense qu'il est plus facile d'avoir toutes les citations en un seul endroit).

nous avons cherché et essayé avec différents paquets latex, en lisant et en suivant leur documentation. Plus précisément, bibitems et chapterbib.

bibitems génère avec succès bu*.aux les fichiers, mais quand bibtex est lancé pour chacun d'eux, une erreur se produit car il n'y a pas de bibdata dans l'élément .aux fichier.

chapterbib génère aussi un .aux fichier, mais bibtex se termine avec une erreur causée par l'utilisation de plusieurs bibliography{file} dans le .tex fichiers (un par chapitre).

certains collaborateurs ont suggéré d'utiliser un fichier bibtex séparé pour chaque chapitre, ce qui pourrait être un problème de maintenance à l'avenir en citant les mêmes publications dans des chapitres différents.

nous aimerions continuer d'avoir cette structure de document, si possible. Donc, si quelqu'un pouvait jeter un peu de lumière à ce problème, nous apprécierons il.

Merci.


mise à jour: MWE found Merci à Habi pour son aide, voici un exemple pratique:

Avec la structure du document mentionné ci-dessus:

% main.tex
documentclass{report}
usepackage{url}
usepackage{natbib}
usepackage{chapterbib}

begin{document}

include{chap1}
include{chap2}
% other chapters ...

end{document}

% chap1.tex
chapter{one chapter}
text~cite{paper1}
text~cite{paper2}
% don't forget:
bibliographystyle{plainnat}
bibliography{biblio}

% chap2.tex
chapter{another chapter}
text~cite{paper2, paper3}
% don't forget, again:
bibliographystyle{plainnat}
bibliography{biblio}

% biblio.bib
@Article{paper1,
  author =       {John Smith},
  title =        {A title},
  journal =      {A Journal},
  year =         {2010}
}
@Article{paper2,
  author =       {John Doe},
  title =        {A paper},
  journal =      {Another journal},
  year =         {2009}
}
@Article{paper3,
  author =       {Yuppie Networking},
  title =        {My paper},
  journal =      {The best journal},
  year =         {2000}
}

Enfin, pour générer le document:

#!/bin/bash
latex main.tex
for auxfile in chap*.aux
do
    bibtex `basename $auxfile .aux`
done
latex main.tex
latex main.tex
26
demandé sur YuppieNetworking 2010-05-04 16:29:34

2 réponses

il y a quelque temps, j'ai rapidement noté quelques notes sur le chapterbib. - ils vous aider?

http://wiki.davidhaberthuer.ch/latex#chapterbib

11
répondu Habi 2015-12-16 08:59:43
2
répondu Kilian Foth 2010-05-04 12:36:42