
Me pregunto si puedo cambiar el texto mostrado en\ref
globalmentepara \label
hacer referencia a un entorno numerado. Concretamente:
Supongamos que tengo un teorema llamado "Prueba importante".
\begin{theorem}[Important Proof]\label{IP}
Trivial.
\end{theorem}
Entonces \ref{IP}
mostraría algo como 1.1.1
. Sin embargo, quiero cambiar ese texto sólo esporádicamente, de modo que esta prueba específica se muestre, por ejemplo, con Important Proof
, pero todas las demás pruebas no se vean afectadas.
¿Qué quise decir conglobalmente? Vi algunas soluciones alternativas \hyperref
cada vez, pero esto no parece realmente convincente; Me gustaría tener algún tipo de redefinición, para poder usar algo como \ref
st. No tengo que insertar el texto manualmente cada vez.
Respuesta1
Respuesta2
No creo que esto sea posible.simplementesin redefinir \ref
, lo que probablemente sea considerablemente más trabajo del que le interesa (o del que realmente vale el problema). Sin embargo, podría definir una macro contenedora que se encargaría de lo que desea. Asegúrese de utilizar \usepackage{ifthen}
(este es un paquete LaTeX estándar) y defina una macro \nref
como esta:
\def\nref#1{%
\ifthenelse{\equal{#1}{IP}}{%
``Important Proof''%
}{%
\ref{#1}%
}%
}%
Luego, cada vez que uses \ref
, úsalo \nref
en su lugar. Esto resultó en las siguientes referencias, cuando definí dos figuras:
Espero que eso responda a tu dificultad.