MPS 2023.3 brings a modern new UI, offers the option to document the structure of your languages, and introduces improvements to version control management, build infrastructure, and several areas of the user interface. Check out the detailed list of enhancements below.
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 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.
There’s a new Documentation facet for writing and generating documentation for concepts in the structure aspect. It allows you to:
Read more about this new feature in the documentation.
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.
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.
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.
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.
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.
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.
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.
@ParameterizedTest
annotation in test classes.
When the presentation assistant is enabled in View | Appearance | Presentation Assistant, the editor will show the name and shortcuts of any action you invoke. This is in particular useful when presenting or teaching with MPS.
The Speed Search functionality, which allows you to quickly navigate within tool windows and dialogs, is now available via a shortcut. Once the focus is placed on a tree or list, you can easily invoke the search from the tool window’s Options menu. Alternatively, you can use the shortcut Ctrl+F, or simply start typing your query. You can assign a custom shortcut for the Speed Search feature in Settings / Preferences | Keymap.
MPS 2023.3 further improves the ability to save multiple tool window layouts and switch between them. The new Default layout option provides a quick way to revert your workspace’s appearance to its default state. This layout is not customizable and can be accessed through Window | Layouts.
For every major release, we prepare instructions on how to migrate from older MPS versions to ensure everything goes smoothly. Please review them carefully.