I would love applications to let users redesign/recompose some of their interface at runtime – InterfaceBuilder and NIB, or Glade and the XML UI files, are probably the easiest tool I know to do this, but they don’t embed themselves in some kind of GUI repl. You’re onto something good!
On a similar topic, there is URWIDE https://github.com/sebastien/urwide, which is a declarative wrapper around URWID, a Python console UI library. In particular, there’s an embedded DSL to define user interfaces with a compact text description that seems to share some ideas with guitktk.
I would love applications to let users redesign/recompose some of their interface at runtime – InterfaceBuilder and NIB, or Glade and the XML UI files, are probably the easiest tool I know to do this, but they don’t embed themselves in some kind of GUI repl. You’re onto something good!
Thanks! I remember editing a glade file where I just wanted to reorder some of the UI element and while the edit was pretty quick, I still had to recompile, which involved setting up cross-compilation in that particular case. (I took the opportunity to make some semantic changes too so it wasn’t really a loss.)
So I thought I’d be nice to have a faster workflow.
The GUI grammar is very interesting! This stuff feels pretty powerful, though I haven’t played around with it yet.
Thanks! If you do try it, feel free to tell me what you think.
It would be good to see an example of a specific kind of deliverable here. I am having some trouble understanding what the end result is.
Good point. I tried making what I wanted out of it directly which is too large and not entire doable yet: remake a good chunk of tkui as a guitktk program and then make editors using that.
Any suggestions for an example? I was thinking a primitive audio editor but maybe something more visual with fewer other potential complications would be better.
I would love applications to let users redesign/recompose some of their interface at runtime – InterfaceBuilder and NIB, or Glade and the XML UI files, are probably the easiest tool I know to do this, but they don’t embed themselves in some kind of GUI repl. You’re onto something good!
On a similar topic, there is URWIDE https://github.com/sebastien/urwide, which is a declarative wrapper around URWID, a Python console UI library. In particular, there’s an embedded DSL to define user interfaces with a compact text description that seems to share some ideas with guitktk.
Thanks! I remember editing a glade file where I just wanted to reorder some of the UI element and while the edit was pretty quick, I still had to recompile, which involved setting up cross-compilation in that particular case. (I took the opportunity to make some semantic changes too so it wasn’t really a loss.)
So I thought I’d be nice to have a faster workflow.
Very cool! I’ve wanted something better for curses-style applications and will be sure to try urwide next time.
By the way, there’s also a helper DSL for laying out the tree document that I haven’t documented (but its more generic without as much design put in as urwide’s language).
As a simple example, in Python:
In the DSL:
The GUI grammar is very interesting! This stuff feels pretty powerful, though I haven’t played around with it yet.
It would be good to see an example of a specific kind of deliverable here. I am having some trouble understanding what the end result is.
Thanks! If you do try it, feel free to tell me what you think.
Good point. I tried making what I wanted out of it directly which is too large and not entire doable yet: remake a good chunk of tkui as a guitktk program and then make editors using that.
Any suggestions for an example? I was thinking a primitive audio editor but maybe something more visual with fewer other potential complications would be better.