Querverweisproblem

Querverweisproblem

Ich habe ein Problem, wenn ich einen Querverweis aus anderen Dateien verwende. Ich habe einen Ordner, in dem sich eine main.texDatei befindet, und einen Unterordner (Kapitel), der Chapter1.texund enthält Chapter2.tex.

In die Hauptdatei füge ich nur die Kapiteldateien wie folgt ein:

    \include{Chapters/Chapter1}
    \include{Chapters/Chapter2}

Mein Problem ist, dass Chapter2.texich in der Datei auf einen Abschnitt aus Kapitel 1 verweisen muss.

Kapitel1.tex

\documentclass{standalone}
\begin{document}
\chapter{chapter}
\label{ch:first_chapter}

\section{first section}\label{sc:first_section}
     some Text..........
\end{document}

Kapitel2.tex

\documentclass{standalone}
\usepackage{xr-hyper}
\usepackage{hyperref}
\externaldocument[C1-]{/Chapter1}
\begin{document}
\chapter{Second Chapter}
\label{ch:second_chapter}
\section{section}\label{sc:first_section_ch2}

 Some text...text \ref{C1-sc:first_section}
 \end{document}

Wenn ich die Datei kompiliere, wird nur ??angezeigt.

Antwort1

Ich glaube nicht, \chapterdass es für die eigenständige Dokumentklasse definiert ist. Abgesehen davon klingt das für mich eher nach einer Aufgabe für das subfilesPaket als für standalone:

main.tex:

\documentclass{book}
\usepackage{subfiles}
\usepackage{xr-hyper}
\usepackage{hyperref}
\usepackage{xstring}

\begin{document}
   \subfile{chapter1}
   \subfile{chapter2}
\end{document}

und chapter1.tex

% !TeX root = chapter1.tex 
\documentclass[main]{subfiles}

\begin{document}
\chapter{chapter}
\label{ch:first_chapter}

\section{first section}\label{sc:first_section}
     some Text..........
\end{document}

und chapter2.tex

% !TeX root = chapter2.tex 
\documentclass[main]{subfiles}

\IfEq{\jobname}{\detokenize{main}}{}{%
    \externaldocument{chapter1}
}

\begin{document}
\chapter{Second Chapter}
\label{ch:second_chapter}
\section{section}\label{sc:first_section_ch2}

 Some text...text \ref{sc:first_section}
\end{document}

(das obige Beispiel geht davon aus, dass alle 3 Dateien im selben Ordner liegen, für die Verwendung von Unterordnern müssen Sie die Pfade der Hauptdatei und der Kapiteldateien entsprechend anpassen)

Antwort2

Das /Vorhergehende ist falsch. Habe den Chapter1Befehl auch nicht .\externaldocumentstandalone\chapter

Aus meiner Sicht bringt es nichts, hier aus den einzelnen Kapiteldateien separate Dokumente zu machen.

Beide (oder alle!) Dateien sollten hyperrefPakete verwenden, um das richtige Etikettenformat bereitzustellen.

\documentclass{book}
\usepackage{xr-hyper}
\usepackage{hyperref}
\begin{document}
\chapter{chapter}
\label{ch:first_chapter}

\section{first section}\label{sc:first_section}
     some Text..........
\end{document}

Kapitel2.tex

\documentclass{book}
\usepackage{xr-hyper}
\usepackage{hyperref}
\externaldocument[C1-]{Chapter1}
\begin{document}
\chapter{Second Chapter}
\label{ch:second_chapter}
\section{section}\label{sc:first_section_ch2}

Some text...text \ref{C1-sc:first_section}
\end{document}

verwandte Informationen