Dsl Editor is a language editor development framework for project indifferent domain specific languages (DSLs). Standard, full-function Eclipse editors can be built using DSL Editor.
Optimal for creating custom DSL editors with code-generation builders. Editors built using DSL Editor include
Conceptually, DSL Editor fits between DLTK and XText.
Like DLTK, custom DSL Editor-based editors are constructed by extending a few key classes. Like XText, the editor is functionally defined by an Antlr grammar.
Unlike DLTK, DSL Editor imposes no fixed language model, does not define or require an "own" project type, and imposes no internal model hierarchy. By design, multiple different custom editors based on the DSL Editor can freely co-exist within a single project without negative interaction.
Unlike XText, custom DSL Editor-based editors are constructed directly using native Antlr grammars. Custom and heterogeneous AST nodes are allowed. No constraints are placed on using Antlr predicate, action, and rewrite features. Formatting behavior is not hard-coded. Formatting preference pages are JDT-like, providing full profile and preview support.
Create Eclipse editors for any language, including non-LL(k) DSLs. If the language can be described by an Antlr grammar, an Eclipse editor can be constructed using DSL Editor.
Because DSL Editor directly uses the Antlr AST as the internal model, the complexity of building an editor using DSL Editor is largely independent of the complexity of the language.
In active development.
Looking for sponsors to support continuing development. Will consider transition to an open source license under appropriate circumstances.
To build a custom language editor, the developer writes
The result is a complete custom language editor plugin, with all of the standard editor features including outline, builder, formatting, code assist, and templates.