2010-05-04 34 views
26

Estoy ayudando a un colega con su tesis doctoral y tenemos que presentar la bibliografía al final de cada capítulo.LaTeX: bibliografía por capítulo

La pregunta es: ¿alguien tiene un ejemplo mínimo de trabajo para este caso usando latex + bibtex?

La estructura del documento actual que usamos es la siguiente:

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

Dónde main.tex contiene paquetes de documentos, declaraciones, macros y \include s para cada capítulo. biblio.bib es el único archivo bibtex (creo que es más fácil tener todas las citas en un solo lugar).

Hemos buscado y probado con diferentes paquetes de látex, leyendo y siguiendo su documentación. Específicamente, bibitems y chapterbib.

bibitems genera éxito bu*.aux archivos, pero cuando se ejecuta bibtex para cada uno de ellos, se produce un error ya que no hay ningún elemento en el archivo \bibdata.aux.

chapterbib también genera un archivo .aux, pero bibtex termina con un error causado por el uso de \bibliography{file} múltiples en los archivos .tex (uno por capítulo).

Algunos compañeros de trabajo sugirieron usar un archivo bibtex separado para cada capítulo, lo que podría ser un problema de mantenimiento en el futuro al citar las mismas publicaciones en diferentes capítulos.

Nos gustaría continuar teniendo esta estructura de documento, si es posible. Entonces, si alguien pudiera arrojar algo de luz sobre este problema, lo apreciaremos.

Gracias.


Actualización: EPM encontró Gracias a Habi por la ayuda, aquí es un ejemplo de trabajo:

Con la estructura del documento mencionado anteriormente:

% 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} 
} 

Por último, para generar el documento:

#!/bin/bash 
latex main.tex 
for auxfile in chap*.aux 
do 
    bibtex `basename $auxfile .aux` 
done 
latex main.tex 
latex main.tex 
+0

Si desea crear un ejemplo de trabajo, creo que esto está integrado en TeXnicCenter, un IDE de ventanas de documentos TeX. –

+0

El problema de chapterbib podría resolverse poniendo una \ bibliografía en main.tex solamente, ¿no es así? –

+2

Juraría que hemos hecho esto antes ... y después de * mucho * buscar, encuentro http://stackoverflow.com/questions/2503555/using-latex-how-can-i-have-a-list- de-references-at-the-end-of-each-section. Uf.No es una lástima para el OP por no encontrar * que * duplicar. – dmckee

Respuesta

11

hace algún tiempo que he jotted rápidamente algunas notas en chapterbib. te ayudan?

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

+0

Sí, eso me ayudó, aunque el comando bibtex no debería usar la extensión '.aux'. Actualizaré la pregunta para proporcionar el MWE. – YuppieNetworking

+0

gracias por el aviso. He actualizado mis notas :) – Habi

+0

Ese enlace ya no funciona – Addman

Cuestiones relacionadas