Try: (setq org-latex-prefer-user-labels t)
I think this does what you want for org 8.3.4 at least. Alan Schmitt writes: > Hello Eric, > > On 2016-03-11 12:03, Eric S Fraga <e.fr...@ucl.ac.uk> writes: > >> On Friday, 11 Mar 2016 at 11:20, Alan Schmitt wrote: >>> Hello, >>> >>> I'm converting a latex document into org-mode to easily export it both >>> to latex and html. I've just encountered something that I don't know how >>> to do: export a \vref reference. I would like to have something that >>> exports to \vref in latex, and to a normal link in html. >>> >>> I thought I could do this trick with a macro: >>> >>> #+macro: vref @@latex:\myvref{$1}{@@[[$1]]@@latex:}@@ >> >> I may be missing something but could you not simply use >> >> [[vref:fig:log-expt-7]] >> >> (along with description text if you wished) and define an org link as >> below? >> >> #+begin_src elisp >> (org-add-link-type "vref" nil >> (lambda (path desc format) >> (cond >> ((eq format 'latex) >> (format "\\vref{%s}" path))))) >> #+end_src >> >> (untested) > > Thank you for the suggestion, but I end up with the same thing as with > the macro: the reference generated is to "fig:log-expt-7", but this does > not work as the label assigned by org to the figure is > "fig:orgparagraph1". > > Here is a small example of a similar problem. Exporting this to latex > > This is a \ref{fig:foo} and this is a link [[fig:foo]] > > #+label: fig:foo > #+begin_figure > Test > #+end_figure > > results in > > #+begin_src latex > This is a \ref{fig:foo} and this is a link \ref{orgspecialblock1} > > \begin{figure} > Test > \label{orgspecialblock1} > \end{figure} > #+end_src > > Alan -- Professor John Kitchin Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 @johnkitchin http://kitchingroup.cheme.cmu.edu