
Die FrageSonderfall für das letzte Element mit \foreachdie Referenzen manuell geändert und die Möglichkeit hinzugefügt, Referenzen mit einem Präfix zu versehen. Kann ich dasselbe mit tun \cleveref
?
(Hinweis: Dies ist eine \cleveref
Version der FragePräfix automatisch zu Referenzen aus einem anderen Dokument hinzufügen?)
Ansatz 1:
Haben Sie ein \crefex
, oder benennen Sie es um \cref
, was das Hinzufügen eines Präfixes ermöglicht. Zum Beispiel
documentclass{article}
\usepackage{cleveref, xr}
\crefname{equation}{}{}
\crefname{figure}{figure}{Figure}
\newcommand{\crefex}[2][] { %
\cref{#2} %But modify to add #1 as a prefix...
}
\begin{document}
\section{sec1}\label{sec:sec1}
\begin{equation} 1 = 1 \label{eq:eq1} \end{equation}
\begin{figure}\caption{fig1}\label{fig:fig1}\end{figure}
\crefex[TA.]{sec:sec1}, \crefex[TA.]{eq:eq1}, \crefex[TA.]{fig:fig1}
\end{document}
die als Referenzen ausgegeben werden sollten, wenn \crefex
sie abgeschlossen sind.
section TA.1, (TA.1), figure TA.1
Ansatz 2: Alternativ könnte es automatisch erkennen, ob eine externe Referenz vorhanden ist, und eine Art Präfix hinzufügen, das als Variable definiert ist?
Erstellen Sie eine Datei external_document.tex
mit dem folgenden Text und kompilieren Sie sie einige Male.
\documentclass{article}
\usepackage{cleveref}
\crefname{equation}{}{}
\crefname{figure}{figure}{Figure}
\begin{document}
\section{sec1}\label{sec:sec1}
\begin{equation} 1 = 1 \label{eq:eq1} \end{equation}
\begin{figure}\caption{fig1}\label{fig:fig1}\end{figure}
\cref{sec:sec1}, \cref{eq:eq1}, \cref{fig:fig1}
\end{document}
Erstellen Sie dann eine weitere Datei mit:
\documentclass{article}
\usepackage{cleveref, xr}
\crefname{equation}{}{}
\crefname{figure}{figure}{Figure}
\externaldocument[EX.]{external_document}
\begin{document}
\section{sec1}\label{sec:sec1}
\begin{equation} 1 = 1 \label{eq:eq1} \end{equation}
\begin{figure}\caption{fig1}\label{fig:fig1}\end{figure}
\cref{sec:sec1}, \cref{eq:eq1}, \cref{fig:fig1}
\subsection{External References}
\cref{EX.sec:sec1}, \cref{EX.eq:eq1}, \cref{EX.fig:fig1}
\end{document}
Dadurch werden sowohl die internen als auch die externen Referenzen korrekt ausgegeben. Wie können wir die automatische Erkennung der externen Referenzen hinzufügen, die das Präfix \externaldocument
wie oben beschrieben hinzufügt?