Hugo Heagren <h...@heagren.com> writes:
> Org uses various dispatchers, where invoking a command gives the user a > choice of different sub-commands, chosen by pressing a relevant key, > from a list displayed on the screen. Some of these dispatchers include > options which can affect the command chosen. Examples include org- > capture, org-beamer-select-environment and org-export-dispatch. > > These desptachers are idiosyncratic, written for purpose, and each > behave differently. They have varying levels of customisability, and > this is reached in different ways for each. Overall, I think the user- > experience could be more consistent and more easily customisable. > > Luckily, recent versions of emacs ship with transient.el, a powerful > way of building such interfaces in a consistent and easily extensible > way. > > So, I propose to rewrite the current dispatchers as transients. What > does the community think? I would be happy to work on this unless > others strongly object, but I don't know everything about org, so if > others could help me with a list of other dispatchers which could also > be converted that would be helpful. > This has been discussed previously and I believe the overall consensus was that moving to transient is the right direction to take. However, the stumbling point at this time is that org needs to retain backwards compatibility with at least 2 previous Emacs releases. The current release is 27.2, so we need to maintain compatibility with 26.x and 25.x. Emacs 28 is at 'release candidate' status, so we can expect it will be released within the next 6 months or so. I expect the next org release will also occur about then. We would then only need compatibility with 26.x, 27.2 in addition to 28.0 After 28.0 is released, if transient is a GNU ELPA package, we can probably just make it an org dependency and Emacs 26.x and 27.x should be able to install and run it (would need to be verified).