New Script()という関数はありません。代わりに、新しいスクリプトウィンドウを開く場合は、New Window()関数を使い、それがスクリプトウィンドウであることを知らせるメッセージを送ります。
win = New Window( "title", <<Script, "Initial Contents" );
前述のNew Window()の例では、winはウィンドウ全体であるディスプレイボックスへの参照です。スクリプトウィンドウに書き込みを行うには、書き込み先であるディスプレイボックス部分への参照を取得する必要があります。これはScript Box()と呼ばれます。
ed = win[Script Box( 1 )];
このように取得した参照(この例では、ed)を使えば、テキストの追加、削除、取得ができます。
ed << Get Text();
スクリプトウィンドウ内のすべてのテキストを設定するには、Set Textメッセージを使用します。次のメッセージは、スクリプトウィンドウ内のすべてのテキストをクリアした後、aaa=3;を追加し、改行を入力します。
ed << Set Text( "aaa=3;\!N" );
スクリプトウィンドウの最後にテキストを追加するには、Appendメッセージを使用します。
ed << Append Text( "bbb=1/10;" );
ed << Append Text(" \!Nccc=4/100;" );
ed << Get Line Text( 2 );
ed << Set Line Text( 2, "bbb = 0.1;" );
ed << Get Line Count();
ed << Get Lines();
スクリプトの体裁を読みやすく整えるには、Refromatメッセージを使用します。
ed << Reformat();
Save Text File()関数を使うと、スクリプトが拡張子.jslをつけたテキストファイルに保存されます。
Save Text File(
"$DOCUMENTS/Example.jsl",
ed << Get Text()
);
ウィンドウのタイトルを取得するには、Get Window Titleメッセージを使用します。以下の例では、スクリプト名をレポートの左下端に置いています。
title = Current Window() << Get Window Title;
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
nw = New Window( "分布レポート",
Distribution(
Continuous Distribution( Column( :Name("体重(ボンド)") ) ),
Nominal Distribution( Column( :年齢 ) )
),
Text Box( title )
);
スクリプトウィンドウ内のスクリプト全体を実行するには、Runメッセージを用います。
ed << Run();
スクリプトウィンドウを閉じるには、他のJMPウィンドウの場合と同じく、ウィンドウにClose Windowメッセージを送ります。
win << Close Window( nosave );