Yeah, I'm looking at having my text editor handle much of the formatting of my Ruby files, I've already got a serviceable indenter. My text editor will eventually be able to handle more than one language, so I won't need any more IDEs, and I can handle other languages the usual way, with language servers. I've thought about keeping the work source in the same process as the editor, but I think it would be better to have a separate process like emacs does with robe. Then I could reload the entire system every time I save a file without having to worry about editor state.