On 03/01/2023 17:01, Eduardo Ochs wrote:
Can you send to me - here to the mailing list - a version of `org-export-dispatch', and also of other functions if needed, in which the parts that call `read-char-exclusive' are replaced by something non-blocking?
Eduardo, I am sorry, but from my opinion it is too much. Perhaps you are just not realizing that resources of developers are rather limited. Getting rid of `read-char-exclusive' in Org menus requires significant amount of work. Nobody argues that it would be a great improvement, but it is necessary to make changes that are not obvious at first glance. It would lead to confusing behavior otherwise.
Jean might be happy with the posted mock-up. Unfortunately that code is too far from been ready to be used for all users. E.g. it does not use `org-export-registered-backends', not to mention that all menus in the package should be consistent. It is OK to have a bunch of repetitive code for a demo, but it can not be taken as is.
Ihor dedicates a lot of time for development and maintaining of Org. Other developers are significantly less active last months. Often authors of code are not participating in discussions because several years have been passed since that time and they are busy with other projects. So your questions may noticeable efforts from other persons unfamiliar with some code to "read" it for you. Org code is not ideal, but it is rarely too obscure. Nobody intentionally adds obstacles that hamper readability. Sometimes it is necessary to make decisions not realizing actual consequences just to move forward. If you need code friendly for beginners then find a friend who can rewrite the code in the style you like (of course, it should be maintainable as well).
At first I believed that on your own way you are just avoiding reading comments and docstring in ox.el that are helpful to discover actual functions in export backends that do the job. E.g. docstring of `org-export-define-backend' and its usage in other files is rather informative.
I am lost what is your actual needs after your request to rewrite the export dispatcher for you.
After all, if you can not figure out which function is called by the dispatcher, instrument for debugging some transcoder function and export some file. You will get call stack.
Be realistic, time and experience are limited resources, not all code deserves blog posts. Source code is a communication channel as well.