MPS の新機能

MPS 2020.3 の新機能

MPS 2020.3 には、新しいジェネレーターマクロ、動的な使用箇所のハイライト、ウェルカム画面の新しいルックアンドフィール、その他多くの新機能が付属しています。

New generator macro

新しいジェネレーターマクロ

SWITCH/CALL マクロに起因するノードを、呼び出されたテンプレートの指定された場所に簡単に挿入できる $CALL-SITE$ という名前の新しいマクロがあります。変更前は、SWITCH/CALL マクロがアタッチされたテンプレートノードは通常無視されていました。これで、呼び出されたテンプレート / スイッチが「call site node」を使用しようとすると、ノードは通常のテンプレートとして処理され、結果は、目的の場所に挿入できる暗黙の引数として呼び出されたテンプレート / スイッチに提供されます。

Dynamic usages highlighting in the editor

エディターでの動的な使用箇所のハイライト

待望(英語)のダイナミックハイライトが登場しました。この機能は、既存の ハイライトの使用アクション(Ctrl/ Cmd+Shift+F7)と非常によく似ています。違いは、コードを入力またはナビゲートすると、動的ハイライトが自動的に機能することです。カーソルのノードへの参照は、編集されたドキュメントでほぼ即座にハイライトされます。元の ハイライトの使用アクションを使用して、現在選択されているノードから離れるときに、そのノードの使用箇所を「固定」することができます。これを行うと、動的ハイライトはカーソルのノードをハイライトし続けます。

この機能は、 選択したノードをハイライトチェックボックスを使用して MPS エディターの設定でオンまたはオフにできます。

Improved switch statement in BaseLanguage

BaseLanguage の switch ステートメントの改善

いくつかのエディターの改善に加えて、スイッチの概念は、同じステートメントに対して複数のケースを使用することをサポートするようになりました。

Error strip on project pane

プロジェクトペインのエラーストリップ

プロジェクトペインにエラー、警告、メッセージを表示する新しい方法を導入しています。エラーストリップは、 プロジェクトペインでメッセージを整理できます。論理ビュー設定ボタンを使用して非アクティブ化できます。

モジュールファセットの処理方法の変更

MPS は、特定のモジュールで特定のモジュールファセットを使用することを強制しなくなりました。モジュールに関連付けられたファセットは、モジュール記述子ファイル内に記録されます。モジュール記述子ファイルは、現在、最終的な情報源です。以前のリリースでは、テストファセットを完全にオプションにしましたが、最後の Java は適用されなくなります。ただし、Language モジュールのプロパティで Java モジュールファセットのチェックを外すと、クラスの読み込みメカニズムから言語が除外され、まったく異なるエクスペリエンスが提供されることに注意してください。この変更を実装して、Java 以外のターゲット言語の目立たないサポートを容易にしました。

Improved root annotation in VCS

VCS でのルートアノテーションの改善

古いルートアノテーションアルゴリズムは、モデルテキストファイルから取得したアノテーションの結果を使用していました。これはテキスト永続モデルでのみ機能し、ほとんどの場合、常に正しいとは限りませんでした。新しいアプローチでは、異なるリビジョンのモデルを比較することによってアノテーションが作成されます。

詳細 (英語)

Tracking moved nodes in the Diff dialog window

差分ダイアログウィンドウで移動したノードを追跡する

2 つのモデル間の変更を計算するための以前のアルゴリズムでは、特定のタイプの変更を検出できませんでした。ノードの移動は、挿入と削除という 2 つの独立した変更として検出されました。ノードの動きを 1 つの動きとして表示できるようになりました。さらに、可動部品内部の内部変化を検出することも可能です。

詳細 (英語)

New welcome screen

新しいウェルカム画面

ウェルカム画面のルックアンドフィールを更新しました。プロジェクトの選択だけでなく、IDE をニーズに合わせてカスタマイズするのに役立つさまざまなダイアログも含まれるようになりました。何よりもまず、 プロジェクトページにはより多くのスペースがあり、追加のプロジェクトのためのスペースがあります。また、検索フィールドから目的のプロジェクトを検索する方が簡単です。カスタマイズページでは、カラーテーマ、IDE フォント、インポートアクション、共有設定などの主要なインターフェース設定を確認できます。

その他の改善

VCS menu reordering

VCS メニューの並べ替え

VCS メニューは、現在使用しているバージョン管理システムに一致するように名前が変更されました。プロジェクトのバージョン管理に最も役立つアクションを維持することで、メニューをすっきりと見つけやすくしました。サブメニューに表示されなくなった主要な Git 機能に簡単にアクセスできるようになりました。例: プロジェクトで Git のみを使用している場合、VCS メニューは次のようになります。

コミットしてボタンをプッシュする

現在、最も人気のある 2 つのボタン( CommitCommit and Push …)が コミット画面に明示的に表示されています。コミットの直後に変更をリモートリポジトリにプッシュでき、Commit and Push ボタンに到達するためにドロップダウンリストをスクロールする必要がなくなりました。

改善されたブランチ

このリリースには、ブランチのいくつかの機能拡張が含まれています。IDE は、新しいブランチの名前で受け入れられない記号を自動的に修正するようになり、現在のブランチに関連するすべてのアクションを確認できるようになりました。

ドラッグアンドドロップタブでエディターを分割する

大きなプロジェクトで作業しているときは、いくつかのタブを開いておくと常に便利です。MPS 2020.3 を使用すると、タブを目的の位置にドラッグアンドドロップすることで、メインエディター画面を水平方向または垂直方向に分割できます。タブをドラッグしているとき、エディターはそれをドロップする可能性のある場所をハイライトします。IDE は、タブバーの先頭に固定されたタブを表示します。