4D v19 R6 では、外部のソースコードエディター (Visual Studio Code など)をサポートし、4D コードを扱えるようにし、Visual Studio Code 拡張機能を使用してシンタックスハイライトなどの標準機能を提供するようにしました。
4Dv19 R7では、2つの新機能が追加されました。定義へ移動」と「シグネチャーヘルプ」です。
そして、何よりも素晴らしいのは、VS Codeで何もする必要がなく、全て自動で行われることです。4D-Analyzerのアップデートに従うだけです。
注意点
この2つの機能は、プロジェクトファイルを参照する必要があるため、開いた4DMファイルがプロジェクトフォルダアーキテクチャに配置されている場合のみ、正常に動作します。
定義へ移動
多くの開発者がそうであるように、コードを読んだり編集しているとき、コードエレメントの定義を確認する必要があることがよくあります。VS Codeでは、コード要素を右クリックすると、「定義へ移動」というメニュー項目を含むコンテキストメニューが表示されます。このメニュー項目を選択すると、カーソルはコード要素が定義されている場所に置かれます。また、コードエレメントが他の4dmファイルに定義されている場合、VS Codeは自動的に対応するファイルを開いてからカーソルを正しい位置に配置します。
この機能で利用できるコードエレメントは、以下の通りです。
- プロセス変数
- ローカル変数
- パラメータ
- 名前付きパラメータ
- プロジェクトメソッド
- ユーザークラス
- ユーザークラス関数
以下の例では、ユーザークラス関数を右クリックし、ポップアップメニューのGo to a definitionを選択しました。
VS Codeは、対応するユーザークラスファイルを開き、カーソルを関数の先頭に配置しました。
シグネチャーヘルプ
4D v19 R7に含まれるもう一つの機能は、コードエレメントのシグネチャヘルプです。
マウスカーソルをコードエレメントに置くと、VS Codeはそのタイプに応じて、その情報を含むツールチップを表示します。
- 4Dコマンドの文法と簡単な説明
- プロジェクトメソッドの文法とマークダウンコメントの1行目
- 4Dネイティブ・クラス関数の文法と簡単な説明
- ユーザークラス関数の文法(ホストプロジェクトやコンポーネントのもの)
- 全ての変数の文法と宣言行に記述されたコメント
下のスクリーンショットは、ユーザークラスの関数にマウスを乗せたときのものです。VS Codeは、関数の文法をツールチップに表示します。
さらに、VS Codeは、これらのコード要素(変数を除く)を入力する際にもツールチップを表示しますので、コーディングの際に役立ちます!
さらに、パラメータを入力すると、編集したパラメータがツールチップでハイライト表示されます!
以下のスクリーンショットは、ユーザークラス関数の2番目のパラメータを入力したときに撮ったものです。VS Codeは、関数文法を示すツールチップを表示し、適切なパラメータをハイライト表示します。
もし、もっと情報が必要なら、4Dフォーラムにコメントを送ってください。