Just adding one element. When I open `theindex.inc` in emacs, then do `M-x org-mode`, then go on one of the links and do `M-x org-open-at-point`, the link is correctly followed.
But when exported to html, the link from `theindex.html` is broken, because no target has been actually created using :PROPERTIES: :ID: 9ca0bb24-407e-4d23-863b-b3ff8afb90db :END: Instead, I only have a target: `<h2 id="org1ddafea">` in `misc.html`, for the considered headline. It's correct that I do not _need_ a target named after `9ca0bb24-407e-4d23-863b-b3ff8afb90db`, But I do need the link and the target to agree. On Saturday, August 14, 2021 12:28:35 AM CEST you wrote: > Hi, > > I want an `org-id / :ID:` publishing workflow. > > To eliminate "xy-case" I first describe what I've been trying to do. > > First I've added an `:ID:` to many headlines through `M-x > org-id-get-create`. > > Then I've added one `#+INDEX: word` under one of those headlines. > > Then I've executed that (I do not have org-mode related configuration in my > init.el for now): > > #+begin_src emacs-lisp :tangle no > (progn > (use-package org-id) > (setq org-id-link-to-org-use-id t) > ;; (setq org-html-link-org-files-as-html nil) > (setq org-publish-project-alist > '(("project-name" > :base-directory "~/note_taking" > :publishing-directory "~/note_taking/html" > :publishing-function org-html-publish-to-html > :makeindex t) > > ("all" :components ("project-name") > )))) > #+end_src > > then `C-c C-e P a` > > At this point I have both `misc.html` and `theindex.html` created, > `theindex.html`. > > The links in `theindex.html` are like: > `misc.html#ID-9ca0bb24-407e-4d23-863b- b3ff8afb90db`, as they should, I > would say. > > There really is: `:ID: 9ca0bb24-407e-4d23-863b-b3ff8afb90db` in `misc.org`. > But it is not translated in `misc.html`. So the link is not working. All the > anchors in `misc.html` are in the form: `<h2 id="org1ddafea">...</h2>`. No > `:ID:` is used. > > Oh, and I also did, `M-x org-id-update-id-locations`, in case it would bring > me any luck. > > > The subject has already been talked about twice at least, but I can't apply > or understand, what have been said. > > In https://lists.gnu.org/archive/html/emacs-orgmode/2009-03/msg00012.html, > we can read this, which seems to completely address my question, though I > really > don't know how to reproduce it, and I'm not sure it's even possible: > >>> Could the org-id be added when publishing? > >>> > >>> Like > >>> > >>> <h2 id="sec-2"> HEADLINE > >>> > >>> <span class="org-id" id="THE-ORG-ID-ITSELF">THE-ORG-ID-ITSELF</ > >>> > >>> span> > >>> > >>> </h2> > >>> > >>> or similar? > >> > >> They already are in the HTML, I am surprised you never noticed. > > > > ... because I didn't use IDs in my publishing projects yet :-D > > The subject has also been brought up by Karl Voit with different > specifications though. I, myself, am perfectly fine with the default > function generating `:ID:`. The discussion however is very interesting: > > https://karl-voit.at/2019/11/16/UOMF-Linking-Headings/ > https://lists.gnu.org/archive/html/emacs-orgmode/2016-12/msg00423.html > > > Another way to put the question could be: > Is it possible, to have `:ID: 9ca0bb24-407e-4d23-863b-b3ff8afb90db`, > translated into `id="ID-9ca0bb24-407e-4d23-863b-b3ff8afb90db"` (or sth), > when exporting to html? > > Thanks, > Chris