MPS 2023.3 Is Out!
In this release, MPS has adopted a new, modern-looking UI style. Under the hood, it gives you the option to document the structure of your languages and introduces improvements in several areas of the user interface, version control management, and build infrastructure.
Check out the What’s New page to learn all about the new features we’ve added for you. Below we list the most prominent ones:
Support for the new UI
MPS has followed the other JetBrains IDEs and adopted a new, modern, and more intuitive user interface. It comes with a cleaner layout, an updated design, new color schemes, and re-designed visual elements, such as icons and tool windows.
The traditional UI remains the default for the time being, but we encourage you to give the new one a try. Not only is it more pleasing to the eye, but we believe it offers a more efficient workflow, as it follows the principles of productive human-to-computer interaction.
To motivate you to make the shift, we recommend checking out the New UI page, which summarizes its key benefits.
Since this is a fairly new addition to MPS, you may discover some rough edges here and there. Please report (TODO link to YT) any UI-related issues so we can fix them without delay.
For your standalone IDEs that are built with MPS, the traditional UI is the default option at the moment. If language designers decide to enable the new UI in their IDEs, they should follow the instructions provided in the documentation.
Documentation facet
There’s a new Documentation facet for writing and generating documentation for concepts in the structure aspect. It allows you to:
- Write documentation as text using a dedicated language embedded into the structure language.
- Perform a quick preview of the documentation in an in-editor tooltip.
- Generate HTML documentation.
Read more about this new feature in the MPS documentation.
Updated dialog design for tooltips
We’ve reimplemented the popup message that displays tooltips. It can now show additional information, such as the documentation specified through the new Documentation facet. In the lower right-hand corner of the popup, the message offers additional actions, including the option to open the displayed piece of documentation in the Documentation tool window.
Inspector tool window position change
If you have tried the new UI in an earlier version of MPS, you might have noticed that the Inspector tool window button was located in the bottom left-hand corner of the screen. Although we have now moved it to the bottom-right, your settings may still contain the original bottom-left position if you choose to copy them from previous MPS installations.
In such cases, we recommend manually moving the Inspector tool window to the bottom-right part of the tool window bar, as this is where we think it fits best. Just drag it there with your mouse. You are of course free to place it anywhere you like, though.
Ability to convert concepts into interface concepts
An updated intention action is now available to help language designers quickly and painlessly convert concept declarations into interface concepts, and vice versa. This is typically needed in the early stages of development, when the fundamental ideas are still to be discovered and so the structure of your new language is rather fluid and requires frequent changes.
Unlike in earlier versions, the intention action now helps ensure that all of the concept’s aspects, as well as references from models, are preserved.
Improved dependency detection during the make process
When a user model is made or rebuilt, the Make subsystem now considers the model’s dependencies and makes the required ones automatically. This makes the whole process more robust.
This option can be turned on and off in Settings | Advanced Settings | Make/Rebuild to balance the correctness of the make process with its performance.
Show History action for modules in the Logical View tool window
The popup menu that appears when you right-click on a module in the Logical View tool window now includes an option to show the Git history for that module. It will show the history of all files in the module directory as well as its subdirectories.
VCS: Git menu for root nodes in the Logical View tool window
The Git menu is now available on root nodes displayed in the Logical View tool window. This brings all the actions you frequently need, like Show Node History and many others, much closer to your fingertips.
Group file changes by extension
The dialogs that display VCS changes may end up showing a lot of files that have changed. To make organizing these lists of files easier, we’ve made it possible to sort them by file extension in addition to the previously available option to sort by directory. This applies to lists in dialogs and windows like the Diff and Changes tool windows, the Git tool window, or the context menu of the Pull Requests tool window.
You can find a full list of fixed issues here.
Your JetBrains MPS team