MPS 2020.1 ヘルプ

解決方法を見つける

このドキュメントは MPS に関する問題を解決するために何をすべきか、どこを見ればよいかについてステップバイステップのアドバイスを提供するべきです。それは私たち自身の経験を取り入れたパターンと使い方の体系的な集まりです。

リフレクションエディター

投影エディターはその性質上、制御された方法でモデルをユーザーに提示します。言語設計者の意図に応じて、言語はユーザからいくつかの情報またはいくつかのノードを隠し、コードを操作するためのいくつかの方法を禁止することがあります。また、ある意味でエディターの定義が壊れていたり不完全だったりすると、エディターはユーザが望む方法でコードを修正することをユーザに許可しないかもしれません。リフレクションエディターは、言語エディターを抑制し、代わりにデフォルトのツリーのような形式でモデルを表示する手段を提供します。このようにして、開発者はモデルへの完全かつ直接的なアクセスを持ちます。

Ref1

Ref2

F5 はエディターを通常の状態に戻します。

ノードエクスプローラー

N/A キーボードショートカットは、エディターで選択されたコードの一部を表す AST を視覚化する方法をユーザーに提供します。

Exp1

ノードの種類を確認する

見ている要素のタイプを知ることはあなたに非常に有用なインサイトを与えるかもしれません。 N/A を押すだけで、MPS がキャレットの要素のタイプを示すダイアログウィンドウをポップアップします。

Type

carret のノードの概念を確認してください

N/A キーボードショートカットを使用すると、現在表示しているノードまたは選択したノードの概念を定義できます。

carret のノードのエディターを確認してください

N/A キーボードショートカットを使用すると、現在見ている、または選択したコンセプトのエディターの定義に移動できます。これは、概念の具体的な構文とそれが提供するすべてのオプションについて理解したい場合に特に役立ちます。

GTE

型システムトレース

型に関する課題に遭遇したとき、型システムトレースツールは型がどのように計算されているかについてのインサイトをあなたに与えるでしょう、それで課題の根本を発見するのを手助けすることができました。型システムデバッグで詳細をチェックしてください。

構造を調べる

新しい言語を学んでいるとき、その言語の構造的な側面はほとんどの場合調査を始めるのに最も良い場所です。概念を簡単にナビゲートして使用方法を検索するためのショートカットは確かに便利です。

GoTo

Ctrl+Space (定義に移動)、N/A (概念に移動)、N/A (概念宣言に移動)、および Alt+F7 (使用箇所を検索)をよく理解して、調査を円滑かつ効率的に行う必要があります。
GoToConcept

近道を覚える前に、ナビゲートメニューでそれらのほとんどを見つけることができます。
NavigateMenu

要素をインポートする

要素または言語機能を使用しようとしていますが、MPS は言語構成を認識しないか、コード補完ダイアログでその要素を提供しません。そのため、コードを希望どおりに更新できません。これは、典型的な初心者の問題の単純化です - インポートと使用言語の欠落。

  • 言語から言語構成要素を使用するには、その言語が使用言語にリストされている必要があります。

  • モデルから要素を入力できるようにするには、最初にモデルをインポートする必要があります。

  • また、あなたの言語が他の言語の機能を強化するためには、その言語が拡張言語の中にリストされていなければなりません。

Prop1

モデルまたは言語をリストにすばやく便利に追加するには、プロパティダイアログに加えて、いくつかの手軽なキーボードショートカットを使用できます。
ModelShortcuts

過渡モデルを保存

ジェネレータからエラーが発生した場合は、過渡モデルを保存機能をオンにすることを検討してください。これはあなたのインスペクションのためのコード生成のすべての中間段階を保存します。

TransientOnOff

Transient

一体なぜこのエラーや警告が出ますか?

Warning Report

MPS がコードの一部に不満を持っているのを見、その理由を知りたいです。Control + Alt + Click / Cmd + Alt + Click を使用して詳細を含むダイアログを開きます。

Warning Dialog

ルールへボタンはエラー / 警告を引き起こすルールにあなたを導きます。

最終更新日 : 2020 年 6 月 18 日