I feel that org-publish is not user-friendly in the sense that once it fails, it straightly stops. Unfortunately, there are dozens of reasons org-publish might fail. To name a few:

  • org-export--inclusion-absolute-lines: No match for fuzzy expression: *XXX for /path/to/file.org::*XXX
  • Executing bibtex2html failed
  • Can't find footnote definition
  • Broken links
  • Custom package export function failed
  • Babel Emacs lisp code failed ... etc.

I believe that most of the people don't have the time to debug all kind of little details through hundreds Org files and rerun org-publish until it is happy. Each intervention to fix one of those errors requires time ranging from few seconds to few minutes which is not realistic to do when one is in a hurry.

I'm aware that there is a :with-broken-links property, but it is not the only reason org-publish would halt as stated above.

Question 1. Is there any way to let org-publish ignore errors (at worst not publishing the Org file in question at all) and simply step forward ?

Question 2. If so, it is possible to report error per a file basis ? Something like:

| /path/to/file1.org | `org-export--inclusion-absolute-lines`: No match for fuzzy expression: `*XXX` for `/path/to/file.org::*XXX` |
| /path/to/file1.org | Can't find footnote definition |
| /path/to/file2.org | Executing `bibtex2html` failed |

Related questions:

  1. Can publish org ignore errors and push on
  2. org-publish-project fails because of defective org-links - repair links automatically or ignore them?
  • Did you ever find a way to do this?
    – ngm
    Commented Sep 24, 2023 at 10:11
  • @ngm Sorry, I moved on... Commented Sep 25, 2023 at 14:44


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.