実行ウィンドウ
実行ウィンドウでは、現在実行中のスクリプトに関する情報が表示されます。実行ウィンドウでは、スクリプトの実行を手動で制御したり、生成されるスクリプトの出力を表示したり、変数を確認・修正したり、アニメーションやトレースでスクリプトの進行状況を追跡することができます。
Eggplant Functionalの実行ウィンドウ
- 実行ウィンドウツールバー
- スクリプトフレームのポップアップメニュー
- スクリプト表示ペイン
- 動的ブレークポイント
- ログペイン
- アドホックDoボックスとDoボタン
- 変数ウォッチャーペイン
- リストとプロパティリストアイテムの追加/削除ボタン
1. 実行ウィンドウツールバー
実行ウィンドウツールバーには、スクリプトが実行中に行うことができるタスクのボタンとメニューが含まれています。実行ウィンドウの幅を変更すると、ツールバー上の利用可能なボタンとメニューが変わります。>> ボタンが表示されている場合、それはさらなるオプションがあることを示しています。**>>**をクリックすると、現在のサイズの実行ウィンドウに収まらないボタンとメニューが表示されるメニューが表示されます。
スクリプトの実行/中断:
Run Scriptボタンは、最後に実行されたスクリプト、または選択部分から実行された全体のスクリプトを再実行します。スクリプトが実行中の場合、Run ScriptボタンはAbort Scriptになります。
スクリプトが実行中(一時停止していない場合)、ビューアウィンドウで手動操作を行ったり、VNC接続を開いたり閉じたりすることはできません。
Altキーを押しながら(MacではOptionキー)Run Scriptボタンをクリックすると、デバッグモードでスクリプトを実行することができます。これにより、スクリプトが実行のために読み込まれ、すぐに一時停止します。これにより、行ごとにステップ実行することができます。これはRun > Debug Scriptを選択するのと同じです。
選択部分の実行
Run Selectionボタンは、スクリプトの選択部分のみを実行します。選択部分はコードの全行を含む必要はありませんが、文法的に完全で、実行可能でなければなりません。(例えば、if
ブロックの始まりを選択する場合、end``if
文まで全体を選択する必要があります。)
Altキーを押しながら(MacではOptionキー)選択部分の実行
ボタンをクリックすると、選択部分が実行のために読み込まれますが、すぐに一時停止します。これにより、行ごとにステップ実行して実行を密接に追跡することができます。
選択部分を実行すると、Suite EditorのResultsペインには結果が生成されません。
一時停止 / 続行
Pause/Continueボタンを使用すると、スクリプトが実行中であればいつでも実行を一時停止し、続行することができます。
スクリプトの実行が一時停止しているとき、追加の操作を行うことができます:
- アドホックDoボックスにコマンドを入力します。 (下のアドホックDoボックスとDoボタンセクションを参照してください。)
- デバッグモードのツールを使用します: Step Into、Step Over、Step Out。(下を参照。)
- ライブモードでビューアウィンドウと対話します。
ステップイン
Step Intoボタンは、スクリプトの次の行を実行し、一時停止します。もしこの行が別のスクリプトやハンドラを呼び出す場合、そのスクリプトやハンドラの最初の行に「ステップイン」してから再び一時停止します。
Step Overボタンは同様の機能を持ちますが、一つだけ例外があります。行が別のスクリプトやハンドラを呼び出す場合、Step Overはそのスクリプトやハンドラ全体を実行した後で一時停止します。
ステップオーバー
Step Intoと同様に、Step Overはスクリプトの次の行を実行し、一時停止します。ただし、この行が別のスクリプトやハンドラを呼び出す場合、そのスクリプトやハンドラは全体が実行され、「ステップオーバー」した元のスクリプトの次の行に移る前に再び一時停止します。
ステップオーバーされるスクリプトやハンドラの実行中に、PauseをクリックしてStep Overコマンドが完了する前に実行を制御することができます。
ステップアウト
Step Outは、現在のスクリプトやハンドラの残りの全ての行を実行し、一時停止します。(最初のハンドラでStep Outを使用するのは、Continueをクリックするのと同じです。)
ステップアウトされるコードの実行中に、PauseをクリックしてStep Outコマンドが完了する前に制御を取り戻すことができます。
スクリプトの編集
Edit Scriptボタンは、現在Runウィンドウに表示されているスクリプトのスクリプトエディタを開きます。このボタンをクリックするときにテキストが選択されている場合、Eggplant Functionalは自動的にスクリプトエディタで同じテキストを選択しようとします。(選択したテキストが最後の実行以降に編集されていた場合、Eggplant Functionalはスクリプトエディタでそれを見つけることができないかもしれません。)
スイートの表示
Show Suiteボタンは、現在のスクリプトのスイートをスイートウィンドウで開きます。
結果の表示
Show Resultsボタンは、現在のスクリプトの最後に記録された結果を、スイートウィンドウの結果ペインで開きます。
スクリプトアニメーション
Script Animation選択ボックスは、スクリプトが実行中にRunウィンドウのスクリプト表示エリアの現在のコード行をハイライトします。スクリプトが実行中でも、アニメーション設定はすぐに変更できます。
アニメーションは、Eggplant Functionalが表示レベルでより多くの作業を行うため、スクリプトの実行速度を遅くします。デバッグを行っていない場合は、すべてのアニメーションをオフにすることでスクリプトの実行速度を向上させることができます。
アニメーションオプションは、ウィンドウの幅に応じて選択ボックスまたはポップアップメニューとして利用できます。ウィンドウが広い場合は、選択ボックスが表示されます。狭い場合は、**>>**メニュー上のポップアップメニューとして表示されます。
Animation Off: Runウィンドウの表示エリアは、スクリプトが実行されると更新されません。スクリプトの初期ハンドラーのみが表示されます。ただし、実行が一時停止されている場合は表示さ れます。
Animate Calls: Runウィンドウは、呼び出されるたびに各スクリプトやハンドラを表示しますが、スクリプトの各行をハイライトすることはありません。
Animate All: Runウィンドウは、実行中の各スクリプトやハンドラの各行をハイライトします。
アニメーション設定は、スクリプトによって一時的に変更することもできます。詳細については、the ScriptAnimation
Eggplant Functionalのグローバルプロパティを参照してください。
>>ボタン
**>>**ボタンは、Runウィンドウのツールバーに他のオプションがあることを示しています。これをクリックすると、現在のサイズのRunウィンドウのツールバーに収まらないボタンとメニューが表 示されるメニューが表示されます。Runウィンドウが広いと、ツールバーにはボタンとメニューが多く表示されます。Runウィンドウが狭い場合、メニューにはボタンとメニューが多く表示されます。
スクリプトトレーシング
Script Tracingメニューは、ウィンドウの幅に応じて選択ボックスまたはポップアップメニューとして利用可能です。
Runウィンドウのツールバー上のスクリプトトレーシングメニュー
トレーシングは、スクリプトが実行しようとしている内容について、Eggplant FunctionalがRunウィンドウのログエリアに「エコー」情報を送ることを引き起こします。これはアニメーションに似ていますが、ログ出力と交互にスクリプトの実行中に実行される全てのコードをレビューすることができます。これは、スクリプトのデバッグ時により多くのコンテキストを提供することができます。
スクリプトが実行中であっても、いつでも即座にトレース設定を変更することができます。
トレース設定は、スクリプトによって一時的に変更することもできます。詳細については、the ScriptTracing
Eggplant Functionalのグローバルプロパティを参照してください。
Tracing Off: Runウィンドウのログエリアには標準的なログ メッセージのみが表示されます。
Trace Calls: Runウィンドウのログエリアは、各スクリプトまたはハンドラが入力され、終了する際にメッセージを表示します。
Trace All: Runウィンドウのログエリアは、それを実行する前に、各スクリプトまたはハンドラの各行を表示します。
トレーシングは、スクリプトの実行を遅くさせます。なぜなら、Eggplant Functionalはディスプレイレベルでより多くの作業を行っているからです。デバッグしていないときはトレーシングをオフにすることで、スクリプトの実行速度を改善することができます。
変数表示
変数表示メニューは、Variable Watcher機能のオプションを提供します。以下に説明する変数ウォッチャー機能 (変数ウォッチャーペイン) は 、スクリプトが一時停止または実行中のときに効果的なSenseTalk変数を表示および修正することができます。
変数ウォッチャーは、スクリプトの実行が終了した後も変数を表示し続けることはありません。
Show Variablesメニューは、Runウィンドウの幅に応じて選択ボックスまたはポップアップメニューとして利用可能です。
Runウィンドウのツールバー上の変数表示メニュー
変数表示メニューのオプションは以下の通りです:
Never: このオプションは、変数ウォッチャーを無効にし、Runウィンドウの変数ウォッチャーペインを非表示にします。
When Paused: このオプションは変数ウォッチャーを有効にし、Runウィンドウにペインを表示します。この設定では、スクリプトが一時停止しているときにのみ変数を表示および修正することができます。
Always: このオプションは変数ウォッチャーを有効にし、Runウィンドウにペインを表示します。この設定では、スクリプトが実行中でも一時停止中でも、変数を表示および編集することができます。
Always設定を使用しても、変数はスクリプトが実行中または一時停止中のときにのみ表示されます。スクリプトの実行が終了した後は表示されません。
2. スクリプトフレームポップアップメニュー
Script Frame
ポップアップメニューは、実行中のハンドラを表示し、それらが呼び出された順序の逆順でリスト表示します。
スクリプトの実行が一時停止したとき、このポップアップメニューから別のフレームを選択して、スクリプト表示エリアで表示し、現在どの行を実行しているかを確認できます。これは、Ad-hoc Do Boxに入力されたコマンドのコンテキストも設定します。例えば、実行を開始したスクリプトハンドラにのみ存在する変数の値を出力したい場合は、一番下のフレーム、番号「1」を選択していることを確認しなければなりません。
3. スクリプト表示ペイン
スクリプト表示ペインは、Runウィンドウの上半分です。スクリプトアニメーションがオンになっていると、現在実行中のハンドラがここに表示されます。(スクリプトアニメーションがオフの場合、初期のハンドラが表示されますが、スクリプトが一時停止したときにのみ更新されます。)
ハンドラはSenseTalkの実行単位です。スクリプトが明示的にハンドラを宣言していない場合、スクリプト全体がハンドラとして扱われます。(ハンドラについての詳細は、SenseTalk Reference Manual
を参照してください。)
4. ダイナミックブレークポイント
ダイナミックブレークポイントは、指定したポイントでスクリプトをデバッグのために一時停止させるマーカーです。スクリプトが実行中でもいつでも追加や変更が可能です。
Runウィンドウで、スクリプト表示エリアの左側の列をクリックすることでダイナミックブレークポイントを設定できます。行の隣に黒い三角形が表示され、ブレークポイントを示します。(スクリプトの挿入点でRun
メニュー>Set Breakpoint
を選択してもブレークポイントを設定できます。)
スクリプト内の別の行に三角形をドラッグしてブレークポイントを移動させたり、列からドラッグして取り除いたりすることができます。