Dividir la bibliografía por partes.

Dividir la bibliografía por partes.

(casi relacionado)

Tengo un solo .bibarchivo. Mi documento tiene dos partes y me gustaría imprimir al final de cada parte la bibliografía consólo los elementos citados en esa parte. Por supuesto, podría haber una intersección si un elemento fuera citado en ambas partes.

Sin preferencias, podría ser bibtex, biblatexo algo extra.

MWE

\begin{filecontents}{mybib.bib}
@article{faa,
  title={Faa Something important},
  author={Faa Big Guy and Another Big Guy},
  journal={Prestigious Journal},
  volume={47},
  number={7},
  pages={966--978},
  year={2001},
  publisher={Institute}
}
@article{foo,
  title={Foo Something important},
  author={Foo Big Guy and Another Big Guy},
  journal={Prestigious Journal},
  volume={47},
  number={7},
  pages={966--978},
  year={2001},
  publisher={Institute}
}
\end{filecontents}

\documentclass{report}
\usepackage{filecontents}
\begin{document}
\part{Faa}
\cite{faa}

\bibliographystyle{plain}
\bibliography{mybib}

\part{Foo}
\cite{foo}

%% I tried to insert twice, but got an error
%\bibliographystyle{plain}
%\bibliography{mybib}

\end{document}

Respuesta1

biblatexdefine un refsectionentorno. Consulte § 3.7.4, Secciones de bibliografía, págs. 88-89 en la documentación.

Respuesta2

Bernardoya menciona refsections en su respuesta.

Tenga en cuenta que biblatextiene una opción llamada refsection, que se puede usar para iniciar automáticamente un nuevo refsectioncomando en cierta sección. Por ejemplo, refsection=partcreará un nuevo refsectionpara cada uno \part. No se requiere ningún código adicional.

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

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

\addbibresource{biblatex-examples.bib}

\begin{document}
\part{One}
\cite{sigfridsson,worman,knuth:ct:b}
\printbibliography

\part{Two}
\cite{sigfridsson,nussbaum,knuth:ct:c}
\printbibliography
\end{document}

Partes con refsecciones

Puedes empezar una nueva refsectionque continuará hasta la siguiente refsectioncon

\newrefsection

Si desea un control más preciso sobre refsectionlos mensajes de correo electrónico y su fin, puede utilizar el formulario de entorno.

\begin{refsection}

\end{refsection}

Tenga en cuenta que los refsectionmensajes no se pueden anidar y que todo lo que esté fuera de un particular refsectionsucede en la sección 0.

refsectionMantengamos sus contenidos completamente separados e independientes entre sí. Eso significa que la misma entrada podría terminar con diferentes etiquetas de cita en cada sección o viceversa, es decir, dos entradas diferentes obtienen la misma etiqueta.

Si eso no es lo que desea (o está buscando una manera de crear una bibliografía general al final), puede consultar refsegments. refsegmentBásicamente, simplemente marque una entrada como citada en un segmento particular de su documento. Nuevamente, hay una opción llamada refsegmentque inicia un nuevo refsegmentcomando de sección para cada tipo específico.

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[style=authoryear, backend=biber, refsegment=part]{biblatex}

\addbibresource{biblatex-examples.bib}

\begin{document}
\part{One}
\cite{sigfridsson,worman,knuth:ct:b}
\printbibliography[segment=\therefsegment]

\part{Two}
\cite{sigfridsson,nussbaum,knuth:ct:c}
\printbibliography[segment=\therefsegment]

\printbibliography[title=Overall \bibname]
\end{document}

Piezas con refsegmentos

Me gusta refsection, refsegments se puede empezar con

\newrefsegment

o puede usarse como ambiente

\begin{refsegment}

\end{refsegment}

información relacionada