Problema de referência/rotulagem ao usar o pacote de subarquivos

Problema de referência/rotulagem ao usar o pacote de subarquivos

Tenho um problema ao usar rótulos junto com o subfilespacote. Quando estou escrevendo em uma seção e tento fazer referência a uma seção diferente (ou a qualquer coisa dentro dessa seção), recebo um erro de rótulo indefinido. Meu main.tex:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{graphicx}
\graphicspath{{images/}{../images/}}

\usepackage{subfiles}

\begin{document}
\maketitle

\section{Introduction}
\label{sec:intro}
\subfile{sections/CH1_Introduction}

\section{Theory of Ultrasound Anemometer}
\label{sec:theory}
\subfile{sections/CH2_Theory}

Então, por exemplo, quando escrevo no arquivo da seção 'introdução':

In section \ref{sec:theory} the theory will be discussed ...

O que resulta em um erro de referência indefinido. Alguém pode me ajudar? O problema é do comando label? Ou estou fazendo outra coisa errada?

Responder1

Isso pode ser feito com o pacote xr. Aqui está um MWE que faz algumas suposições sobre o layout do projeto. Na pasta raiz, em um arquivo chamado main.tex:

\documentclass{article}
\usepackage{xr}
\usepackage{subfiles}

\begin{document}
\section{Introduction}
\subfile{sections/CH1_Introduction}
\label{sec:intro}

\section{Theory of Ultrasound Anemometer}
\subfile{sections/CH2_Theory}
\label{sec:theory}
\end{document}

Então, em uma subpasta chamada sections, existem dois arquivos tex adicionais chamados CH1_Introduction:

\documentclass[../main.tex]{subfiles}
\externaldocument{../main.tex}

\begin{document}
This is a text written in the introduction file that discusses the rest of the paper. We will discuss the theory of ultrasound traducers in section \ref{sec:theory}.
\end{document}

e CH2_Theory.tex:

\documentclass[../main.tex]{subfiles}
\externaldocument{../main.tex}
\begin{document}
Here we talk about the ultrasound traducers that we said we would discuss in section \ref{sec:intro}. 
\end{document}

compilando main.texdo que retorna:

insira a descrição da imagem aqui

Agora, supondo que todas as suas seções sejam chamadas no documento principal, isso permitirá que você cite as seções (mas não as subseções com o layout atual) da introdução.

informação relacionada