Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I've a question about the usepackage hyperref. I just link to the different theorems, lemmas etc. in my paper, writing

Theorem \ref{text}

I get a red or green (depends if it is a literature reference or not) box around the accordant number of the Theorem. Suppose there are Theorems, named after a Person. Is it possible to get this red box around the name? For example, suppose I stated the Einsteins Theorem on page 2, \label{einstein}. On page 10 I refer to this Theorem. I would like to write, "by Einsteins Theorem" an get a red box around Einstein. How can I do this?

Edit: Here is my preamble (a part of it):

\documentclass[10pt,twoside,openright]{thesis}
\usepackage{graphicx}   % if you want to include graphics files
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amsfonts}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{enumerate}
\usepackage[pdftex,citecolor=green,linkcolor=red]{hyperref}
\usepackage{aliascnt}
      \theoremstyle{plain}
      \newtheorem{theorem}{Theorem}[section]
      \newtheorem{lemma}[theorem]{Lemma}
      \newtheorem{corollary}[theorem]{Corollary}
      \newtheorem*{claim}{Claim}
      \theoremstyle{definition}
      \newtheorem{definition}[theorem]{Definition}

      \theoremstyle{remark}
      \newtheorem{remark}[theorem]{Remark}

      \makeatletter
      \newcommand\settheoremtochp{%
    \@removefromreset{theorem}{chapter}% just in case ... (no harm done)
    \@removefromreset{theorem}{section}%
    \@addtoreset{theorem}{chapter}%
    \renewcommand\thetheorem{\thechapter.\arabic{theorem}}}
  \newcommand\settheoremtosec{%
    \@removefromreset{theorem}{chapter}%
    \@removefromreset{theorem}{section}% just in case ... (no harm done)
    \@addtoreset{theorem}{section}%
    \renewcommand\thetheorem{\thesection.\arabic{theorem}}}
  \makeatother


   % The preamble is also a good place to define new commands and macros.
   % This part of the preamble is strictly optional according to your taste.

      \newcommand{\R}{{\mathbb R}}
      \newcommand{\nil}{\varnothing}
      \newcommand{\N}{{\mathbb N}}
      \newcommand{\A}{{\marhcal A}}
share|improve this question
    
You can use the command \href. Try \href{einstein}{y Einsteins Theorem}. –  Marco Daniel May 2 '12 at 9:42
    
@MarcoDaniel: You surely meant \hyperref[einstein]{by Einsteins Theorem}, didn’t you? –  Speravir May 2 '12 at 18:17
    
@Speravir: I didn't test it ;-). I can do a test. –  Marco Daniel May 2 '12 at 18:18
add comment

1 Answer 1

up vote 6 down vote accepted

You can use aliascnt to create a counter similar to theorem.

\documentclass{article}
\usepackage{aliascnt}
\usepackage{hyperref}
\newtheorem{theorem}{Theorem}
%------------------for refering to Einstein-----------------------------
\newaliascnt{lemmaa}{theorem}
\newtheorem{lemmaa}[lemmaa]{Einstein's theorem}
\aliascntresetthe{lemmaa}
\providecommand*{\lemmaaautorefname}{Einstein's theorem}
%------------------for using lemma-----------------------------
\newaliascnt{lemma}{theorem}
\newtheorem{lemma}[lemma]{Lemma}
\aliascntresetthe{lemma}
\providecommand*{\lemmaautorefname}{Lemma}
%-----------------------------------------------
\begin{document}
We will use \autoref{a} to prove \autoref{b}.
\begin{lemmaa}\label{a}
Nobody knows.
\end{lemmaa}
\begin{lemma}\label{c}
Nobody ever knows anything.
\end{lemma}
\aliascntresetthe{lemma}
\begin{theorem}\label{b}
Nobody is right.
\end{theorem}
My reference~\autoref{a} says that~\autoref{c} is wrong. 
\end{document}

enter image description here

share|improve this answer
    
@ Harish Kumar: Thank you for your answer. How ever, I've some question. How do I have to change my preamble, see my code, added in my question. I do not know why you are defining a new lemmaa? Thanks for your help –  m. th May 2 '12 at 12:08
    
@math: I defined lemmaa so that you can still use lemma. Put the lines enclosed between dashed lines in my code preamble right after \newtheorem{theorem}{Theorem}[section] in your preamble. –  Harish Kumar May 2 '12 at 14:58
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.