RText can be used to derive textual languages from an RGen metamodel with very little effort.
RText features include:
-
Generic textual syntax
-
Generic instantiator (parser) and serializer
-
Consistency checks derived from the metamodel
-
Designed to work with lightweight editor plugins providing
-
Syntax Highlighting
-
Auto Completion on language commands and model references
-
Error Annotations
-
Model Navigation
-
> gem install rtext
RText supports Ruby 2.6 to 4.0.
RText depends on the rgen and filelock gems, which are installed along with it.
-
RText_Users_Guide – the .rtext config file and the backend service
-
RText_Protocol – the JSON protocol spoken between an editor frontend and a backend
-
CHANGELOG – the changes in each release
test/integration/ecore_editor.rb is a complete backend service: it builds an RText::Language from the ECore metamodel, loads the model files it is given with RText::DefaultLoader, and serves them through RText::DefaultServiceProvider and RText::Service.
RText is released under the MIT license.