Open bryce-carson opened 1 year ago
That's a great idea! I know that I've struggled with widgets too. It would be really good to have an enumeration of the widgets - at least for the sake of tracking completeness of a standard component library.
If you interested in helping get that started, I've created a document here: https://github.com/ebpa/tui.el/blob/master/COMPONENTS.org. PR's for additional components are welcome too- of course :-)
You likely notice my perspective has mostly been from the lens of HTML elements. Ultimately I'd like to see richer textual components and layout tools for use in eww. I haven't tackled components systematically though; only as specific personal needs have arisen. Is there a particular input widget that you've struggled with recently? I can try my hand at wrapping an input widget with tui to see if that would present a more palatable API for you.
I was able to get TUI to render a timer in IELM, which is impressive enough for me.
I think it would be a good idea to compare this library and its goals with the built-in Widget Library, as there are differences that would be interesting to see when someone is looking for a TUI-like library, or a component library for making interfaces and forms of some sort... application programming within Emacs in general, I suppose.
At the moment, I'm using the Widget Library, but I'm having difficulty with some of its documentation and some of its behaviour, but otherwise I think it meets my needs more appropriately than TUI. I may be wrong, however!
If TUI provides buttons, editable fields, lists, most of what Widget provides, then I might try implementing my setup-buffer in TUI instead.
What do you think, Erik? I think it'd be good for the README section where you mention other similar projects, Emacs and non-Emacs.