Xtext is a new kind of language engineering toolkit, that has been around in Eclipse-land for six years already and has there helped many projects to implement domain-specific languages and general programming languages plus professional Eclipse plug-ins for them.
Today we are happy to announce the new 2.9 release that further advances on this, by adding support for other editor platforms and frameworks next to Eclipse.
Web Editor Support
Rich web editors are in vogue and a cool way to give people access to a more coding-like interface without requiring the download of a huge IDE such as Eclipse or IntelliJ IDEA. If you want to provide an expressive interface to configure your applications for instance, you can now, with Xtext, have a fully-featured rich text editor directly within your web application. During development we've already worked together with customers who successfully took advantage of this.
IntelliJ IDEA Support
The other big news is the support for IntelliJ IDEA. Xtext not only lets you develop an IDEA plug-in for your language but you can also do the language development itself entirely within Jetbrains popular IDE. Here's a quick screencast I created to show how fast and easy this is.
If you want to try it out yourself you should read and follow Christian's 5 Minute Tutorial for IDEA Users.
Other New Features
New Xtext Project Wizard
A new wizard to produce a readily configured Xtext project has been developed. It is used in both IntelliJ and Eclipse and allows the user to
- decide which target editors your want (Eclipse, Web, IntelliJ)
- what build system you prefer (Maven or Gradle)
- tell the project layout. I.e. whether you want Maven-style src/main/java or the standard src/ folder scheme.
- and whether you want testing support
New Xtext Code Generator
We have entirely rewritten the code generator that produces the various artifacts from grammars. It is now simpler to configure and at the same time supports the various new options, the new Xtext wizard provides.
Enhanced Gradle and Maven Support
The Maven and Gradle plugins have been overhauled and improved. Additionally we added full support to run, build and test IntelliJ IDEA plugins from Gradle.
The Eclipse builder always worked incrementally. We have now written one that is Eclipse-independent and is used from within IntelliJ as well as a Gradle Deamon.
Grammar Language Enhancements
New features in the grammar language allow to reduce duplicate grammar information. Fragments are a way to inline similar productions in different rules, while parameters can be used to call turn off parts of a production. More details can be found here.
Try It Out
The best way to learn about all these new features is to download an Eclipse or IntelliJ IDEA 15 and install the brand new Xtext plugins.