This is a very impressive demo of mixing structural editing and text editing: https://youtu.be/-TFL6E1uSHE
I particularly liek the almost seamless integration between the two modes and how the menues behave in structural editing mode (would have to try it to see how it actually feels, though).
It seems very interesting! It seems that there are more and more situations in which text and structural editing converge:
- IDEs -> tend to present refactoring and processing that permits to work on the AST, in a way
- MPS -> with grammar cell we make projectional editors more and more text like
So to me it seems a clear pattern that we need these approaches.
Most DSLs could be actually some sort of structured form where users can write small snippets of text with auto-completion, and error checking. In this sense something like this would help, perhaps making the textual/structural separation enforced from outside instead of being let to the user