SenseTalkのローカルおよびグローバルプロパティ
SenseTalkでは、ローカルおよびグローバルプロパティは、ランタイム環境の動作を決定するシステム全体の値です。本質的に、これらの特殊なプロパティは、プロパティの利用可能なオプションを設定するために特定の値を受け入れることができるコンテナです。
たとえば、the strictFiles
のような単純なグローバルプロパティは、真または偽の値を取るだけで、機能が有効化または無効化されるかを決定するかもしれません。他のプロパティ、たとえばthe timeFormat
は、そのデータ型の形式を設定できる形式の受け入れ可能な値のリストが大きいかもしれません。
SenseTalkには、ローカルハンドラーの環境のみに影響を及ぼすローカルプロパティと、ランタイム環境全体に影響を及ぼすグローバルプロパティ の両方が含まれています。さらに、Eggplant Functionalで動作するように特別に定義されたグローバルプロパティがあります:Eggplant Functionalグローバルプロパティ、および実行オプショングローバルプロパティ。
以下のページで利用可能なローカルおよびグローバルプロパティのリストを見つけることができます:
SenseTalkコマンドでのグローバルプロパティの使用
SenseTalkスクリプト内で、グローバルプロパティの値を設定または変更することができます。実際、スクリプトごと、または1つのスクリプト内で複数回それらを変更することができます。
SenseTalkコマンドのSet
またはPut
でグローバルプロパティの値を設定できます。
これらのプロパティを参照するときは、普通の変数と区別md するためにプロパティ名の前にthe
を使用しなければなりません。
例:
set the searchrectangle to (1,2,2,3)
put 2 into the remoteworkinterval
詳細な情報については、Container Propertiesを参照してください。
SetOptionおよびSetOptionsを使用したグローバルプロパティの使用
通常、上記で説明したようにset
またはput
コマンドを使用してグローバルプロパティの値を設定することが最も簡単です。ただし、setOption
およびsetOptions
コマンドも利用可能で、一度に複数のプロパティを更新できます。
これらのコマンドを使用してグローバルプロパティの値を設定するとき、グローバルプロパティの名前の前にthe
を挿入しないでください。(SetOption
とsetOptions
は、パラメータ値としてonly
グローバルプロパティを取るコマンドなので、the
でグローバルプロパティを区別する必要はありません。)
一度に複数のグローバルプロパティを設定するには、setOptions
コマンドを使用し、常にリストを渡すように、括弧内にグローバルプロパティのリストを渡します。
例:
setoption searchrectangle, (1,2,2,3)
setoptions (searchrectangle: (1,2,2,3), scriptlogging: yes)
デフォルト設定を保存するには、スクリプトの実行の始めに以下のSenseTalkコードを追加します。このコードはデフォルト設定をグローバル変数に格納します:
put GetOptions ( "RunOptions" ) into global defaultRunOptions