Das ist neu in MPS 2020.3

MPS 2020.3: neues Generatormakro, dynamische Hervorhebung von Verwendungen, neu designter Begrüßungsbildschirm und viele weitere Neuerungen zum Ausprobieren

Neues Generatormakro

Neues Generatormakro

Mit dem neuen Makro $CALL-SITE$ können Sie einen Knoten, dem ein SWITCH/CALL-Makro zugeordnet ist, problemlos an einer bestimmten Stelle in der verwendeten Vorlage einfügen. Vor dieser Änderung wurden Vorlagenknoten mit einem zugeordneten SWITCH/CALL-Makro generell ignoriert. Wenn eine aufgerufene Vorlage bzw. ein aufgerufener Switch versucht, „call site node“ zu verwenden, wird der Knoten jetzt als reguläre Vorlage verarbeitet, und das Ergebnis wird der Vorlage bzw. dem Switch als implizites Argument übergeben, das an der gewünschten Stelle eingefügt werden kann.

Dynamische Hervorhebung von Verwendungen im Editor

Dynamische Hervorhebung von Verwendungen im Editor

Dynamic highlighting, a long-awaited feature, has arrived. Die neue Funktion entspricht weitgehend der bisherigen Aktion Highlight Usages (Strg/Cmd+Umschalt+F7). Der Unterschied ist, dass Verwendungen automatisch hervorgehoben werden, während Sie tippen oder im Code navigieren. Verwendungen des Knotens unter dem Cursor werden im bearbeiteten Dokument nahezu verzögerungsfrei hervorgehoben. Sie können die ursprüngliche Aktion Highlight Usages weiterhin verwenden, um die Markierung der Verwendungen des aktuell ausgewählten Knotens „einzufrieren“, wenn Sie vom Knoten wegnavigieren. Dabei werden durch die dynamische Hervorhebung die Verwendungen des Knotens unter dem Cursor weiterhin hervorgehoben.

Dieses Verhalten kann in den Einstellungen des MPS-Editors mit dem Kontrollkästchen Highlight selected node aktiviert oder deaktiviert werden.

Verbesserte switch-Anweisung in der BaseLanguage

Verbesserte switch-Anweisung in der BaseLanguage

Neben einigen Editorverbesserungen unterstützt das Switch-Konzept jetzt die Verwendung mehrerer Cases für dieselbe Anweisung.

Fehlerleiste im Projektfenster

Fehlerleiste im Projektfenster

Wir führen eine neue Methode ein, um Fehler, Warnungen und Meldungen im Project-Fensterbereich anzuzeigen. Die Fehlerleiste hilft beim Strukturieren der Meldungen im Project-Bereich. Sie können sie über die Einstellungsschaltfläche für Logical View deaktivieren.

Änderungen beim Umgang mit Modul-Facets

MPS zwingt Sie nicht mehr dazu, ein bestimmtes Modul-Facet mit einem bestimmten Modul zu verwenden. Mit einem Modul verknüpfte Facets sind in der Modul-Deskriptordatei hinterlegt, die jetzt als maßgebliche Informationsquelle gilt. Wir hatten bereits in früheren Versionen das Tests-Facet vollständig optional gemacht, und jetzt wird auch das letzte Facet – Java – nicht mehr erzwungen. Zu beachten ist jedoch, dass durch Deaktivieren des Java-Modul-Facets in den Eigenschaften des Language-Moduls die Sprache vom Class-Loading-Mechanismus ausgeschlossen wird, was zu einer völlig anderen Nutzungserfahrung führt. Wir haben diese Änderung implementiert, um eine unaufdringliche Unterstützung für andere Zielsprachen als Java zu ermöglichen.

Verbesserte Root-Annotation in VCS

Verbesserte Root-Annotation in VCS

Der alte Root-Annotationsalgorithmus verwendete die Ergebnisse der Annotation, die aus der Modell-Textdatei bezogen wurde. Das funktionierte nur für Modelle, die als Text persistiert wurden, und in den meisten Fällen war das Ergebnis nicht immer korrekt. Mit dem neuen Ansatz wird die Annotation durch einen Abgleich der verschiedenen Modellrevisionen erstellt.

Weitere Informationen

Verfolgen von verschobenen Knoten im Diff-Dialog

Verfolgen von verschobenen Knoten im Diff-Dialog

Der vorherige Algorithmus zum Berechnen von Änderungen zwischen zwei Modellen erkannte bestimmte Arten von Änderungen nicht. Das Verschieben von Knoten wurde als zwei unabhängige Änderungen aufgefasst: Einfügen und Löschen. Jetzt kann das Verschieben eines Knotens als eine einzelne Änderung dargestellt werden. Darüber hinaus können interne Änderungen innerhalb des verschobenen Teils erfasst werden.

Weitere Informationen

Neuer Begrüßungsbildschirm

Neuer Begrüßungsbildschirm

Wir haben den Begrüßungsbildschirm überarbeitet. Er enthält jetzt neben der Projektauswahl auch eine Reihe von Dialogfeldern, mit denen Sie die IDE an Ihre Bedürfnisse anpassen können. Die wichtigste Änderung ist, dass die Projects-Seite mehr Raum einnimmt und dadurch Platz für mehr Projekte bietet. Es ist jetzt auch einfacher, im Suchfeld nach einem Projekt zu suchen. Auf der Seite „Customization“ finden Sie die wichtigsten Einstellungen für die Bedienoberfläche – zum Beispiel Farbschema, IDE-Schriftart, Importaktionen und Einstellungen für das Teilen.

Andere Verbesserungen

VCS-Menü neu geordnet

VCS-Menü neu geordnet

Das VCS-Menü trägt jetzt den Namen des aktuell verwendeten Versionierungssystems. Das Menü ist jetzt übersichtlicher und enthält nur noch die nützlichsten Aktionen zur Versionsverwaltung Ihres Projekts. Wichtige Git-Funktionen, die bisher in einem Untermenü verborgen waren, sind jetzt einfacher zugänglich. Wenn Ihr Projekt zum Beispiel nur Git verwendet, sieht Ihr VCS-Menü jetzt so aus:

Commit- und Push-Taste

Außerdem werden jetzt die zwei beliebtesten Schaltflächen – Commit und Commit and Push… – explizit auf dem Commit-Bildschirm angezeigt. Sie können die Änderungen unmittelbar nach dem Commit in das Remote-Repository übertragen – Sie müssen nicht mehr eine Dropdown-Liste durchblättern, um die Commit and Push-Schaltfläche zu finden.

Einfacheres Arbeiten mit Branches

Diese Version enthält mehrere Verbesserungen für die Arbeit mit Branches. Die IDE korrigiert jetzt automatisch nicht zulässige Symbole bei der Benennung neuer Branches. Außerdem werden alle Aktionen mit Bezug zum aktuellen Branch angezeigt.

Teilen des Editors durch Ziehen und Ablegen von Tabs

Bei einem großen Projekt ist es immer praktisch, mit mehreren Tabs arbeiten zu können. Mit MPS 2020.3 können Sie den Haupteditor horizontal oder vertikal teilen, indem Sie einen Tab an die gewünschte Position ziehen und dort ablegen. Beim Ziehen eines Tabs markiert der Editor die möglichen Positionen zum Ablegen. Die IDE zeigt angeheftete Tabs am Anfang der Tableiste an.