Nicolas Goaziou <m...@nicolasgoaziou.fr> writes: > Hello, > > Rasmus <ras...@gmx.us> writes: > >> Ultimately, I think a decent fix would be to add a prefix to >> org-latex--label for targets pointing to footnotes. They should be >> prefixed with "fn:". Then, it should be easy to hack together >> a filter. > > OOC, isn't `org-export-filter-footnote-reference-functions' enough as > a filter?
Probably I’m lacking the adequate creativity. I’ll sketch the problem as I see it. Consider the filter FUN and the below file. The transcoded version of the second "[fn:1]", say S2, will be passed to our filter FUN, if FUN is added to org-export-filter-footnote-reference-functions. But S2 will only contain the estimated number of the footnote¹, e.g. "\footnotemark[1]{}". In particular, we haven’t got the potentially transcoded reference to the footnote definition. Without the reference, I don’t know how to add a hyperref link. We could capture the transcoded version of the link "[[f1]]" in FUN, if FUN is added to org-export-filter-link-functions (I think). But by then we’d only be served a generic reference, e.g. "\ref{org925ce52}". I don’t know how we’d then differentiate between a link to a footnote and to some other type of element, e.g. a source block. Hence, it becomes hard to guess when to use e.g. \footref{.} instead of \ref{.}. Rasmus * head :PROPERTIES: :CUSTOM_ID: h1 :END: Line1.[fn:1] or [[f1]] \pagebreak Line2[fn:1] [[f1]] * Footnotes [fn:1] <<f1>> Footnote. Footnotes: ¹ It’s estimated because it’s not done on the latex side. E.g. I can get an incorrect number by adding this to the top of my file: #+latex: \addtocounter{footnote}{1} More realistically, breakage would occur when a footnote is added by some arbitrary latex command that Org doesn’t know about. -- Dung makes an excellent fertilizer