I'm stumped by an error I'm getting, when I try to render a Tufte-LaTeX document using hypcap
and hyperref
. For example, even a minimal document consisting of
\documentclass[nohyper]{tufte-handout}
\makeatletter
\let\tufte@caption\@caption % Protect caption from hyperref
\RequirePackage{hyperref}
\let\@caption\tufte@caption % See -- http://tex.stackexchange.com/a/46838
\makeatother
\RequirePackage[all]{hypcap} % See -- http://tex.stackexchange.com/a/27349
\begin{document}
\begin{figure}\caption{An empty figure.}\end{figure}
\end{document}
causes an error:
Package hypcap Error: You have forgotten to use \caption.
What is causing this error, and how can I avoid it?
If it comes to it, I'd settle for giving up some features provided by either hypcap
of hyperref
(e.g., linking to figures) if that's what it takes to keep things stable. I don't want to give up the visible effects of the Tufte style.
Best Answer
Can you check the following on something larger? I'm certain we lose
nameref
support with this (because I wanted to avoid the parameters-of-@caption thing), but there might be more side effects, and I'm not familiar enough with tufte to spot if something's wrong from a single caption on an empty page: