Das ist neu in MPS 2019.1

Editor

Von Kunden gewünscht

Benutzerdefinierter Stil und Priorität für Elemente in der Vervollständigungsliste

Sprachdesigner können den Stil und die Priorität der Elemente im Vervollständigungsmenü anpassen. Der Hintergrund und die Textfarbe sowie Fett- und Kursivdruck lassen sich anpassen, und es können sogar Elemente ausgeblendet werden. Bitte beachten Sie, dass dieses Feature experimentell ist und dass noch Änderungen am Design vorgenommen werden können. Erfahren Sie mehr dazu.

Generator-Sprache

Unterstützung für automatische Typinferenz für das neue VAR-Makro

Das VAR-Makro unterstützt nun mehrere Variablendeklarationen pro Makro in der Generator-Sprache. Dieser Typ wird von der Deklarationsabfrage abgeleitet, sofern er nicht überschrieben wird.

Unterstützung für Plugins

Von Kunden gewünscht

Verwendung von MPS-Plugins über die Ant-Aufgabe zur Migration

Wenn ein Plugin für die Migration eines Projekts erforderlich ist, kann dies nun in der Ant-Aufgabe <migrate> angegeben werden. Das entsprechende Plugin wird zusammen mit seinen Abhängigkeiten aktiviert. Dieses Feature haben wir auf eine Kundenanfrage hin in 2018.3.5 integriert.

Von Kunden gewünscht

Unterstützung für Plugin-Bereitstellung in der Build-Skript-Anweisung „run code from solution“

Die Anweisung „run code from solution“ ermöglicht Ihnen, Plugins in der MPS-Instanz zu aktivieren, die den Code ausführen wird. Die Abhängigkeiten des Plugins werden ebenfalls eingeschlossen. Dieses Feature haben wir ebenfalls auf eine Kundenanfrage hin in 2018.3.5 integriert.

Verbesserungen an der IDE

Benutzerdefiniertes UI-Design erstellen

Bringen Sie etwas Farbe in Ihren Alltag! Die IntelliJ-Plattform hat erst kürzlich dieses coole Feature eingeführt, und da MPS darauf basiert, können Sie jetzt auch das UI-Design Ihrer IDE anpassen.

Importieren Sie die neuen vorgefertigten Designs als Plugins oder erstellen Sie mit der IntelliJ IDEA Ihre eigenen von Grund auf neu. Testen Sie unser Cyan Light-Design und das Dark Purple-Design.

Die JUnit Run-Konfiguration akzeptiert jetzt Plugins für Bereitstellung

Ähnlich wie bei der MPS Instance Run-Konfiguration können Sie jetzt eine Liste mit IntelliJ IDEA Plugins angeben, die bei der Testausführung bereitgestellt werden sollen. Die ‘before launch’-Aufgabe ‘Assemble Plugins’ ist ebenfalls in der JUnit Run-Konfiguration verfügbar. Sie kompiliert die Plugins automatisch und kopiert die Artefakte ins Verzeichnis mit Einstellungen.

Von Kunden gewünscht

Sortieren in ProjectPane

Wir haben TreeNodeSortService hinzugefügt, um Beiträge zu ChildComparatorProvider zu verwalten, was Ihnen volle Kontrolle über die untergeordneten Elemente von MPSTreeNode im ProjectPane-Strukturbaum gewährt. Benutzer können jetzt Provider über die Anwendung oder die Projektteile ihres Plugins registrieren bzw. die Registrierung aufheben.

Anzeige eingehender/ausgehender Commits

Die IDE zeigt jetzt im Branches-Pop-up an, ob die eingehenden und ausgehenden Commits für einzelne Branches verfügbar sind. Aktivieren Sie dazu einfach die neue Option ‘Mark Branches that have incoming/outgoing commits in the Branches popup’ unter Preferences/Settings | Version Control | Git.

BaseLanguage

Statische Methoden in baseLanguage-Interfaces

MPS ermöglicht Ihnen jetzt die Erstellung statischer Methode in Interfaces.

Verschiedenes

Confluence adieu – hier kommt Help Center!

Die MPS-Dokumentation wurde bislang immer über Confluence bereitgestellt. Es ist höchste Zeit, dass wir erwachsen werden und in unsere eigene Bude ziehen: Wir migrieren unsere gesamte Dokumentation zu unserem Help Center; das Benutzerhandbuch und das Schnelltutorial können dort schon abgerufen werden. In zukünftigen Releases werden wir auch die Dokumentation weiter verbessern.

Stub-Methodensignatur

Der Rückgabetyp der Methode wurde von den MPS-Knoten-IDs entfernt, die in Java-Stub-Modellen erstellt wurden. Von nun an werden Methoden anhand der echten Methodensignatur identifiziert, die durch die Sprachvorgaben von Java festgelegt sind. Sie müssen nicht mehr alle Modelle neu speichern, die eine Methode aus dem Stub-Modell referenzieren, wenn der Rückgabetyp in einer neuen Version der Bibliothek verändert wurde. Die automatische Migration speichert alle MPS-Modelle neu und korrigiert alle bestehenden Referenzen zu Stub-Modell-Methoden.

Neue Bedeutung des Kontrollkästchens 'Compile in MPS'

Wenn das Kontrollkästchen 'Compile in MPS' in den Moduleigenschaften nicht aktiviert ist, bedeutet das nicht mehr, dass eine Instanz von IntelliJ IDEA verbunden ist, die den Code kompiliert. Das Kontrollkästchen kann verstanden werden als „der Code wird entweder in MPS kompiliert oder überhaupt nicht kompiliert“. .

MPS zeigt automatisch aggregierte Sprachen an

Strukturaspekte realisieren die Sprachen, die sie umfassen, jetzt anhand von Aggregation (d. h. indem sie das fremde Konzept in einer untergeordneten Rolle verwenden). Aggregierte Sprachen werden automatisch während der Bearbeitung aktiviert und müssen nicht mehr in ein Modell importiert werden, das eine aggregierte Sprache nutzt.