Aislar referencias de archivos incluidos dentro de un "espacio de nombres"

Aislar referencias de archivos incluidos dentro de un "espacio de nombres"

Quiero compilar una gran serie de archivos látex, en su mayoría independientes, en un solo documento, y me gustaría poder asumir que cada uno \labelvive en su propio "espacio de nombres". Idealmente lo que me gustaría tener es:

archivo1.tex:

\begin{equation}
  \label{eq:a}
  a+b
\end{equation}

This is \eqref{eq:a}

archivo2.tex:

\begin{equation}
  \label{eq:a}
  a+2b
\end{equation}

This is a very different \eqref{eq:a}

principal.tex:

\include{file1.tex}
\include{file2.tex}

I would like to reference (with hyperref) both \ref{eq:[email protected]} and \ref{eq:[email protected]}

El propósito de esto es hacer referencias cruzadas y reunir una gran colección de documentos independientes (pero no pasar días haciéndolo).

Una solución en la que las referencias cruzadas funcionaran en varios archivos PDF también me vendría bien, pero me temo que sería mucho más difícil.

Respuesta1

Por ejemplo con document.tex:

\documentclass{article}
\usepackage{hyperref}

\begin{document}

\begin{equation}
  \label{eq:a}
  a+2b
\end{equation}

This is a very different \ref{eq:a}

\end{document}

puede hacer referencia a la etiqueta con un prefijo usando el xrpaquete (o xr-hypersi se combina con hyperref)

\documentclass{article}

\usepackage{xr-hyper}
\usepackage{hyperref}

\externaldocument[doc-]{document}

\usepackage{pdfpages}

\begin{document}

\includepdf[xr-prefix=doc-]{document}


bla \ref{doc-eq:a}

\end{document}

(la opción xr-prefixes una opción experimental de pdfpages)

información relacionada