Child pages
  • MPS plugin for IntelliJ IDEA

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


Each model Kind in this case represents a preconfigured set of used languages for the model. This is a convenient shorthand that still allows you to tune the list of used languages manually at any time through the Model Properties dialog by pressing Alt+Enter on the model node inside the Project TreeView:

Model Node Nodes in the Project View represents MPS model contents represent the content of MPS models and just like in MPS this it is they are similar to java package, so you packages. You can create model elements (Roots) inside itin them:

Similar Similarly to new model dialog you can specify new root name and kind (Concept) herewhen we were creating new MPS models, you give each root element a name and a kind, which now means its MPS Concept:

Model The root nodes are represented displayed in the Project View and looks look very similar to how other resources and files look in IntelliJ IDEA. Projectional editor The projectional editor for a root node can be opened by double-click clicking on the root node or by pressing F4:

Code Generation


The code will be generated for MPS models as a part of process of MPS models is tied to the IntelliJ IDEA's make/rebuild project actions and so will be triggerred automatically:

It's possible to configure where to store generated sources inside the generated source code. This is configured through the MPS facet settings . Generated code can be used only dialog. There are three options you can choose from:

  • The generated code stays in memory only. It will be available during the compilation process only and


  • never saved


  • to disk at all
  • It can be saved into another source folder of this module


  • It can be saved into any other directory


  • wherever on the disk

All generation-time errors are prorated into the Messages view just like any other compilation problems with possibility to navigate to corresponding model elements: