
Ich frage mich, ob ich angezeigten Text ändern kann in\ref
globalfür die \label
Referenzierung einer nummerierten Umgebung. Konkret:
Nehmen wir an, ich habe einen Satz namens „Wichtiger Beweis“.
\begin{theorem}[Important Proof]\label{IP}
Trivial.
\end{theorem}
Dann \ref{IP}
würde etwa Folgendes angezeigt werden 1.1.1
. Ich möchte diesen Text allerdings nur sporadisch ändern, so dass dieser konkrete Beweis beispielsweise mit angezeigt wird Important Proof
, alle anderen Beweise aber davon unberührt bleiben.
Was meinte ich mitglobal? Ich habe einige Workarounds gesehen, die \hyperref
jedes Mal verwendet werden, aber das hier scheint nicht wirklich überzeugend; ich hätte gerne eine Art Neudefinition, sodass ich einfach etwas wie \ref
„st“ verwenden kann und den Text nicht jedes Mal manuell einfügen muss.
Antwort1
Antwort2
Ich glaube nicht, dass das möglich wäreeinfachohne neu zu definieren \ref
, was wahrscheinlich erheblich mehr Arbeit ist, als Sie möchten (oder als das Problem wirklich wert ist). Sie könnten jedoch ein Wrapper-Makro definieren, das sich um das kümmert, was Sie möchten. Stellen Sie sicher, dass Sie verwenden \usepackage{ifthen}
(dies ist ein Standard-LaTeX-Paket) und definieren Sie ein Makro \nref
wie folgt:
\def\nref#1{%
\ifthenelse{\equal{#1}{IP}}{%
``Important Proof''%
}{%
\ref{#1}%
}%
}%
Dann \ref
verwenden Sie \nref
stattdessen immer dann, wenn Sie verwenden würden. Dies führte zu den folgenden Referenzen, als ich zwei Abbildungen definierte:
Ich hoffe, das löst Ihr Problem.