bufler.el
bufler.el copied to clipboard
Replace pretty-hydra with transient
Since this whole package is already based on magit-section, it makes sense to keep the user interface consistent and use transient (a library created for and used extensively by the Magit project).
I would like to see the transient definition just be auto-created from the keymap, or vice versa. As far as I can tell, this is only defined in order to provide a pretty "help" menu. Still, I don't use any other package which pulls in Hydra, so I'd like to avoid that dependency.
You don't have to take this, I was just playing around with it. I really like Bufler except for the Hydra package getting installed as a seemingly unnecessary extra dependency.
Work that's not done but would be quite possible and make for a nice UI: re-organize the commands into separate transient prefixes, e.g. a transient prefix for managing workspaces. IDK I have to play with this package a bit more first ☺️
I use Transient in some of my other packages. Transient seems to be at an earlier stage of its life as an independent package, so it's more likely to undergo incompatible changes that would require fixes here. pretty-hydra
is relatively simple and does this job well. Until more complex functionality is needed, I'll probably continue using it here.
@alphapapa Would you reconsider this, now that transient is going to be included with the next Emacs release? (Or maybe making the pretty-hydra
dependency optional in some way?)
Yes, especially since Transient is going into Emacs, it would probably be good to use it and forego the external dependency. Thanks.
@andyleejordan Please don't close the PR. I still intend to work on this when I have time.
It's been three years 😆
Indeed, and it might take 3 more! I have so many Emacs-related projects and to-dos...
More seriously, I'm not sure what the status of Transient was 3 years ago. But now that it's upstreamed and such, I'll target this for v0.4, which will at least ensure that I don't overlook it for as long.
Sounds great! I wish that I still got to use Emacs as much as I used to. Nowadays I maintain a VS Code extension for a living...so that's the editor I'm stuck with (but I make sure that the LSP server works with Emacs clients too).
And in case I haven't said it before: feel free to ping me on issues and PRs. After a little while, they get buried in the constant stream of new notifications, and I can't keep all of them in my head.
Sounds great! I wish that I still got to use Emacs as much as I used to. Nowadays I maintain a VS Code extension for a living...so that's the editor I'm stuck with (but I make sure that the LSP server works with Emacs clients too).
Ah, cool. Well, that is appreciated. Hope you can return to Emacsland someday.