I like that hyperref gives me results like

\ref{eq:first-equation}   % yields "equation (1)"

and that varioref gives results like

\vref{eq:first-equation}  % yields "1 on the following page"

but I would like even more if the resulting vref yielded "equation (1) on the following page," to distinguish from tables, etc.

Is there any way to get this to happen?

My current preamble includes

% ...
% ...
% ...

in this order, if it matters.

When I remove refstyle and switch it out for cleveref, all of my \eqrefs break. For example


used to produce equation (8) but now produces (??).

1 Answer 1


Do not use refstyle; instead, load (in that order!) the varioref, hyperref, and cleveref packages in the preamble and use \vref in the text body. (For cross-references without page information, use \cref instead of \ref.)




Some text. See \vref{eq:test}.


a^2 + b^2 = c^2


enter image description here

  • Okay, but now my normal \ref{eq:test} is just showing (1), not equation (1); how do I fix this?
    – wchargin
    Dec 16, 2013 at 23:54
  • Also \vref{eq:test} produces equation (??) on the preceding page for me
    – wchargin
    Dec 16, 2013 at 23:54
  • @WChargin Ad 1: See the last sentence of my answer. Ad 2: Without a minimal working example, I can't say what's going on.
    – lockstep
    Dec 17, 2013 at 11:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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