Xtext is a framework for development of programming languages and domain specific languages.
It covers all aspects of a complete language infrastructure, from parsers, over linker, compiler or interpreter to fully-blown top-notch Eclipse IDE integration. It comes with good defaults for all these aspects and at the same time every single aspect can be tailored to your needs.
Out of the box, the editor supports syntax coloring based on the lexical structure and the semantic data of your files. Users are free to customize the highlighting and configure their favorite styles.
An Xtext editor proposes valid code completions at any place in the document, helping your users with the syntactical details of your language.
Xtext has outstanding support for static analysis and validation of your models. It has never been so easy to define constraints to tackle errors and warnings in your code instantaneously. With custom quick fixes you can correct these with a single keystroke.
If your language targets the JVM, you'll love the Java support Xtext provides. You get fully statically typed expressions right embedded in your DSL and can refer to any Java type.
Xtext provides a rich API to work with resources. Therefore developing additional graphical and structural views is comparably easy.