From-Script-and-Command-Window
LabTalkを直接実行する2つのウィンドウがあります。(古い) スクリプトウィンドウ と (新しい) コマンドウィンドウです。 各ウィンドウは、1行以上のスクリプトを実行できます。 コマンドウィンドウにはプロンプトがあり、プロンプトに入力したすべてのコードを実行します。
スクリプトウィンドウには、カーソルだけがあり、Enterキーを押すと、マウスで選択したコードまたはカーソルが存在する行のコードを実行します。 どちらのウィンドウもCtrl+Enterキーで実行無しで改行します。 Ctrl+Enterキーを使って改行するとき、複数行の実行のためにステートメントの最後にセミコロン;を含める必要があります。編集メニューの、 改行を挿入を選択して改行したり、編集メニューのスクリプトの実行:なしを選択して、スクリプトの実行をオフにすることもできます。
コマンドウィンドウには、Xファンクションのオートコンプリート機能や実行したコマンドのコマンド履歴や再呼び出しの機能がありますが、スクリプトウィンドウにはありません。 スクリプトウィンドウは、複数行や長いスクリプトを編集するのが簡単です。
以下は、1つのX列と複数のY列の形式でデータを持つワークシートを処理するサンプルスクリプトです。 コードは、すべてのYデータからY値の最大値および最小値を見つけ、すべてのYをその範囲で正規化するものです。
// 最も小さい最小値と最も大きい最大値を探す double absMin = 1E300; double absMax = -1E300; loop(ii,2,wks.ncols) { stats $(ii); if(absMin > stats.min) absMin = stats.min; if(absMax < stats.max) absMax = stats.max; } // 各列をその範囲に正規化 loop(ii,2,wks.ncols) { stats $(ii); wcol(ii)-=stats.min; // ゼロの最小値にシフト wcol(ii)/=(stats.max - stats.min); // 1に正規化 wcol(ii)*=(absMax - absMin); // 範囲に正規化 wcol(ii)+=absMin; // 最小値にシフト }
スクリプトウィンドウで実行するには、コードを貼り付け、マウスですべてのコードを選択し、Enterキーを押します。(選択したテキストは反転表示されます)
コマンドウィンドウでスクプトを実行するには、コードを貼り付けEnterキーを押します。コードに誤りがある場合、スクリプトウィンドウではすべてを利用して編集することができますが、コマンドウィンドウの履歴パネルでは編集できず、スクリプトすべてを再呼び出しすることもできません。
Originには、コードビルダというスクリプトエディタがあり、これはLabTalkやOrigin Cコードを編集したり、デバッグすることができます。コードビルダを開くには、スクリプトまたはコマンドウィンドウにed.open() と入力するか、標準ツールバーから ボタンを選択します。
スクリプトウィンドウ内のフォントは次の方法で変更できます。
ScriptWindowFontHeight=24 ScriptWindowCharset=0 ScriptWindowFaceName=Times New Roman
文字コードの詳細は、http://msdn.microsoft.com/en-us/library/cc250412.aspx を参照してください。