 テキストエディタの使い方

この章では、主にＳＴ、ＩＬプログラムエディタとして使われるテキストエディタに関しての特徴について記述します。他のプログラムエディタと共通している項目に関しては、「プログラムエディタ共通項目」を参照願います。

「編集」メニューコマンド

オプション

「ツール」メニューコマンド

他のISaGRAFツールのコール

プログラムのパラメータ定義

その他の共通的な「ファイル」メニューコマンド

プログラムの修正履歴の更新

変数辞書から変数選択

ST,ILプログラムのデバッグ

 ISaGRAFのテキストエディタはいかなるテキスト入力に使われます。例えば、プロジェクト記述、ＳＴ、ＩＬプログラムエディタ、修正履歴ファイルエディタ、ライブラリの技術メモ、Ｃソースエディタなどが含まれます。

リソースファイルの定義


「編集」メニューコマンド

「編集」メニューコマンドには、エディタで選択中のキャラクタに対して使われたり、現在のカーソル位置に対してのアクションを指定するコマンドが含まれています。

 	切り取り、貼り付け

検索、置換

ジャンプ

変数辞書からの変数（シンボル）挿入

ファイルの挿入


 	切り取り、貼り付け

DELキーで削除されたテキストは「編集」－「元に戻す」コマンドで復元されます。「編集」－「切り取り」、「コピー」、「貼り付け」コマンドはプログラム中のテキストを移動させたり、コピーしたり、挿入したりします。また、他のアプリケーションとの間でもクリップボードを通してテキストをコピーなどができます。


検索、置換

「編集」－「検索」、「置換」コマンドにより、編集中のテキストウィンドウから指定のテキストを検索、置換することができます。検索方向は↑方向と↓方向があります。エラー発生時などの際に対象の変数名などの検索に有効です。


ジャンプ

「編集」－「ジャンプ」コマンドにより、編集中のテキストの指定された行数へジャンプします。この機能を使うことで、ISaGRAFのコード生成中の発生したエラー表示がＳＴ、ＩＬプログラムテキストの行数を含んでいるためにエラー箇所の検出には有効となります。


変数辞書からの変数（シンボル）挿入

「編集」－「変数の挿入」コマンドにより、現カーソル場所にプロジェクトで宣言されている変数辞書から変数（シンボル）を選択して挿入することができます。この変数選択には専用のダイアログボックスが表示されます。詳細は「プログラムエディタ共通項目」を参照願います。


ファイルの挿入

「編集」－「ファイルの挿入」コマンドにより、現カーソル場所にテキストファイルを挿入することができます。ただし、このコマンドではテキストファイル以外のファイルを扱うことはできません。


オプション

「オプション」メニューコマンドには、ツールバーの表示・非表示選択、キーワードの表示・非表示選択、フォントの指定が含まれています。個々で選択されたフォントはワークベンチ上の全てのテキストエディタで有効となります。

ＳＴ／ＩＬプログラムソースコードの入力の際に、「オプション」－「キーワードの表示」コマンドにより、ＳＴ、ＩＬプログラムにそれぞれ共通のキーワードツールバーの表示が使えます。ツールバー上のボタンをクリックすることで現カーソル位置にキーワードを挿入することができます。


他のISaGRAFツールのコール

ベリファイ（コンパイル）プログラム

 	アプリケーションのシミュレートとデバッグ

変数辞書の編集


ベリファイ（コンパイル）プログラム

「ファイル」－「ベリファイ」コマンドにより、ISaGRAFコード生成が実行されて、編集中のプログラム文法チェックを行います。ＳＦＣプログラムではレベル１、２の両方がチェックされます。文法チェックが完了したら、コード生成ウィンドウを終了して次の操作に移ります。もし、プロジェクトが現在編集中の１つのプログラムのみから構成されている場合は、エラーが存在しなければ、アプリケーションコードも生成されます。

「オプション」－「コンパイラオプション」コマンドにより、コンパイラと最適化のオプションを設定するために使われます。なお、これらの詳細は「コード生成の使い方」を参照願います。


 	アプリケーションのシミュレートとデバッグ

「ファイル」－「シミュレート」、「デバッグ」コマンドにより、ISaGRAFグラフィックデバッガーがシミュレーションモードあるいはオンラインモードで起動します。この際、各プログラムエディタは全てデバッグモードで再オープンされます。このデバッグモードではプログラムの直接の変更はできません。（一度、デバッグモードから抜け出して、プログラムエディタを通常モードで開く必要があります。）詳細は、「グラフィックデバッガがの使い方」を参照願います。


変数辞書の編集

「ファイル」－「辞書」コマンドにより、現在編集のプロジェクトの変数辞書エディタを起動します。更に、この辞書エディタからユーザ定義ワードの編集も行うことができます。詳細は、「辞書エディタの使い方」を参照願います。


プログラムのパラメータ定義

編集中のプログラムがファンクション、ファンクションブロック、サブプログラムの時、「ファイル」－「パラメータ」コマンドにより、プログラムの入出力パラメータを定義することができます。もし、編集中のプログラムがＳＦＣプログラムやBegin, Endセクションのトップレベルのプログラムの時はこのコマンドは無効となります。

ファンクション、ファンクションブロック、サブプログラムは最大３２個の入出力パラメータ（合計）を持つことができます。ファンクションやサブプログラムは常に１つの出力パラメータしか持つことができません。この出力パラメータ名は必ずそのプログラム名と一致している必要があります。 パラメータ定義のために以下のダイアログボックスが使われます。

パラメータウィンドウの上部にはサブプログラムのパラメータが上から入力パラメータ最後に出力パラメータの順で示されます。下部には選択されているパラメータの以下に示す解説がなされます。

  パラメータ名

  パラメータのモードあるいは方向（入力、出力）

  パラメータのタイプ（ブール型、整数／実数型、タイマ型、可変長文字列型）

注：アナログの場合は整数、実数の区別は必要です。

出力パラメータは必ず最後のパラメータである必要があります。パラメータ名の付け方には以下のルールがあります。

  パラメータ名は１６半角文字以内であること。

  最初の文字は英文字（ａ－ｚ）であること。

  以降の文字は英文字、数字、＿　であること。

  パラメータ名には大文字小文字の区別はありません。

“挿入”ボタンにより、選択されているパラメータの前に新しいパラメータを挿入します。“削除”ボタンにより、選択されているパラメータを削除します。　“アレンジ”ボタンにより、パラメータを自動的にソーティングしてリターンパラメータが最後にくるように並び替えることができます。　“ＯＫ”ボタンによりサブプログラムのインタフェース定義（即ち、パラメータ構成）を保管してウィンドウを閉じます。“キャンセル”ボタンにより修正内容は保管されずにウィンドウを閉じます。


その他の共通的な「ファイル」メニューコマンド

以下に、プログラムエディタの「ファイル」メニューコマンドでその他の共通的な項目をリストアップします。

別のプログラムを開く

別のプログラムを開く


別のプログラムを開く

「ファイル」－「開く」コマンドにより、現在編集中のプログラムを閉じて、新しく同じ言語の別のプログラムを開くことができます。別の言語で記述されたプログラムを開くことはできません。


プログラムの印刷

「ファイル」－「印刷」コマンドにより、編集中のプログラムを印刷することができます。この「印刷」コマンドでは「ドキュメント印刷」が起動され、あらかじめ印刷項目が設定されています。印刷項目の追加・削除を行って印刷することができます。

ＳＦＣ、ＦＢＤ、Ｑｕｉｃｋ　ＬＤエディタでは、「編集」－「メタファイルとしてコピー」コマンドにより、編集中のダイアグラムをＷｉｎｄｏｗｓのメタファイルとしてクリップボードにコピーすることができます。この内容は他のアプリケーションに貼り付けることができます。ＳＦＣプログラムにおいてはレベル１（チャート、リファレンス番号、コメント）がその対象になります。


プログラムの修正履歴の更新

「ファイル」－「修正履歴」コマンドにより、修正履歴ファイルの編集を行うことができます。通常は、このファイルにはコード生成などが行われた際に文法チェックの内容やコード生成された日時などを自動的に追加されるようになっています。

もし、「オプション」－「修正履歴の更新」コマンドがセットされていると、変更内容をディスクに保存するたびに、以下のダイアログボックスが開きます。

“ＯＫ”ボタンが選択されると、入力されたテキストは修正履歴ファイルに日付・時間スタンプ付きで追加保存されます。この機能はプログラムのメンテナンス上有効に活用できます。


変数辞書から変数選択

 ＳＴ、ＩＬプログラムを編集中には「編集」－「変数の挿入」コマンドにより、編集中のプログラムの現カーソルに辞書に登録されている変数名を挿入できます。また、Ｑｕｉｃｋ　ＬＤでは、「編集」－「テキスト／シンボルのセット」コマンド（あるいは、シンボルや指定された領域をダブルクリック）により、ダイアグラム中の接点、コイル、ブロックの入出力パラメータ等に変数名を割り当てることができます。更に、ＦＢＤエディタでは、シンボルをダブルクリックすることにより、ダイアグラム中の接点、コイル、ブロックの入出力パラメータ等に変数名を割り当てることができます。いずれの場合においても、以下の共通の変数名選択用のダイアログボックスが表示されます。

ＳＴ、ＩＬプログラムを編集中には「編集」－「変数の挿入」コマンドにより、編集中のプログラムの現カーソルに辞書に登録されている変数名を挿入できます。また、Ｑｕｉｃｋ　ＬＤでは、「編集」－「テキスト／シンボルのセット」コマンド（あるいは、シンボルや指定された領域をダブルクリック）により、ダイアグラム中の接点、コイル、ブロックの入出力パラメータ等に変数名を割り当てることができます。更に、ＦＢＤエディタでは、シンボルをダブルクリックすることにより、ダイアグラム中の接点、コイル、ブロックの入出力パラメータ等に変数名を割り当てることができます。いずれの場合においても、以下の共通の変数名選択用のダイアログボックスが表示されます。

右上のコンボボックスでは変数の型の選択ができます。横の４つのアイコンはこの変数の型の選択を行うためのショートカットとして使うことができます。

ブール型

整数／実数型

タイマ型

可変長文字列型

変数の選択をするためには、リストの中から変数名を選択（クリック）して、選択された変数名とそのコメントが選択ボックス（リストの上部）に表示されることを確認します。次に“ＯＫ”ボタンを選択することで選択された変数名が選ばれます。尚、変数名をダブルクリックしたり、選択ボックスに直接変数名の入力を行うことによっても同じ操作が行えます。


リソースファイルの定義

「オプション」－「リソース定義」コマンドにより、リソースを定義することができます。ここでリソースとはユーザ定義データ（ネットワーク構成、ハードウェア設定など。。）でターゲットコードとマージされて使われるべきものです。このデータのフォーマットはファイルや単なる数値のリストの形態をとります。　ターゲットコードのダウンロードの際に一緒にターゲットへダウンロードされます。このデータはISaGRAFのカーネルが直接操作することはなく、ターゲット側にインストールされた他のプログラムが参照するためのものです。

リソース定義ファイル

リソースファイル言語リファレンス

リソース定義ファイルの例

リソースコンパイル

リソースのターゲットコードへのマージ


リソース定義ファイル

リソースの定義はISaGRAFのプロジェクトファイルと一緒に“リソース定義ファイル”として定義されます。このファイルはアスキーテキストファイルで、ISaGRAFのリソースコンパイラによって処理されます。リソースコンパイラはアプリケーションコード生成時に自動的に起動されます。ファイル内の記述はＳＴ言語の文法に従って書かれます。例えばコメントは(*    *)で囲まれます。詳細の文法は後述の項を参照願います。　以下にリソース定義ファイルで使われるキーワードとステートメントを示します。


リソースファイル言語リファレンス

以下に、リソース定義ファイルの中で使われるキーワードとその記述方法を示します。

ULONGDATA

VARLIST

BINARYFILE

TEXTFILE

TARGET

ANYTARGET

FROM

TO


ULONGDATA

意味:	整数値のリスト。ターゲットコードにunsigned 32 bit integers で追加されます。整数はリソース定義ファイルで定義された順番に並びます。整数はコンマによって区切られます。リソースの名称は最大１５文字です。

文法:	ULONGDATA '<resource_name>'

BEGIN

...target_selection...

...list of values...

END

例:	ULongData 'MYDATA'

Begin

...

0, -1, 100_000,	(* decimal *)

16#A0B1, 2#1011_0101	(* hexadecimal, binary *)

End


VARLIST

意味:	変数アドレス（ＶＡ）を示すリストです。変数はリソース定義ファイル内の変数名で識別されます。変数アドレスはターゲットコードではunsigned 16 bit integersで表現されます。アドレスはリソース定義ファイル内で指定された定義順になります。変数はコンマで区切られ、リソース名称は最大１５文字です。

文法:	VARLIST '<resource_name>'

BEGIN

...target_selection...

...list of variable names...

END

例:	VarList 'LIST'

Begin

...

Var100, MyParameter, Command, Alarm

End


BINARYFILE

意味:	バイナリファイルリソース。ＭＳ－ＤＯＳファイル形式で保管されます。 パス名から成り立っています。End of line キャラクタはリソースコンパイラで変換されません。リソース名称は最大１５文字です。

文法:	BINARYFILE '<resource_name>'

BEGIN

...target selection...

FROM '<source_pathname>'

TO '<destination_pathname>'

END

例:	BinaryFile 'MYFILE'

Begin

...

From 'c:\user\config.bin'

To '/dd/user/appl/config.dat'

End


TEXTFILE

意味:	テキストファイルリソース。アスキーファイルとして保管されます。パス名から成り立っています。 End of line キャラクタはターゲットシステムにあわせたやり方でリソースコンパイラで変換されます。リソース名称は最大１５文字です。

文法:	TEXTFILE '<resource_name>'

BEGIN

...target selection...

FROM '<source_pathname>'

TO '<destination_pathname>'

END

例:	TextFile 'MYFILE'

Begin

...

From 'c:\user\config.bin'

To '/dd/user/appl/config.dat'

End


TARGET

意味:	指定するリソースを含むターゲットコードの名称。"Target"ステートメントは複数のターゲットを選択可能になるべく、同一のリソースブロック内に何回も使われます。"AnyTarget"ステートメントが使われているところでは扱えません。

文法:	TARGET '<target_name>'

例:	BinaryFile 'MYFILE'

Begin

Target 'ISA86M'

Target 'ISA68M'

...

End


ANYTARGET

意味:	指定リソースがコード生成時に全てのターゲットコードにマージされされることを意味します。「アプリケーションコード生成」コマンドで複数のターゲットコードを生成することができますが、これら全てのターゲットコードが対象になります。 "Target" ステートメントが指定されている場合は扱えません。

文法:	ANYTARGET

例:	ULongData 'MYDATA'

Begin

AnyTarget

...

End


FROM

意味:	ソースファイル名をパス名付きで指定します。ISaGRAFワークベンチがインストールされているＰＣ内部のバイナリファイル又はテキストファイルのファイル名を指さします。パス名記述の際はＭＳ－ＤＯＳシステムの指定に従う必要があります。

文法:	FROM '<target pathname>'

例:	BinaryFile 'MYFILE'

Begin

...

From 'c:\user\config.dat'

To '/dd/user/appl/config.dat'

End


TO

意味:	デスティネーション（ターゲットシステム）におけるバイナリファイル又はテキストファイル名を指します。ファイル名の記述はターゲットシステムの指定に従う必要があります。

文法:	TO '<target pathname>'

例:	TextFile 'MYFILE'

Begin

...

From 'c:\user\config.dat'

To '/dd/user/appl/config.dat'

End


リソース定義ファイルの例

以下に、一つのリソース定義ファイル例を示します。

(* リソース定義ファイル *)

ULongData 'DATA1'	(* データリスト *)

Begin

   Target 'ISA86M'	(* 指定されたターゲットコードに限定 *)

   1, 0, 16#1A2B3C4D, +1, -1	(* 数値 *)

End

VarList 'VLIST1'	(* 変数リスト *)

Begin

   Target 'ISA86M'	(* このターゲットコードに限定 *)

   Valve1, StateX, Command, Alrm1	(* 変数名 *)

End

BinaryFile 'FILE1'	(* バイナリファイルリソース *)

Begin

   AnyTarget	(* 全ターゲットコードを対象 *)

   From 'c:\user\updatef.bin'	(* ソースファイル名 *)

   To 'updatef.cfg'	(* ターゲットでのファイル名 *)

End

TextFile 'FILE2'	(* テキストファイルリソース *)

Begin

   Target 'ISA68M'

   From 'c:\nw\nwbd.txt'	(* ソースファイル名 *)

   To '/nw/dat/nwbd'	(* ターゲットでのファイル名 *)

End


リソースコンパイル

リソースがリソース定義ファイルで定義されている場合は、コード生成が終了後に以下のダイアログボックスが開きます。

 "Start compile" ボタンを選択することにより、リソースコンパイルが開始されます。出力メッセージやエラーメッセージはこのウィンドウに表示されます。 "Exit" ボタンを選択することにより、リソースコンパイラを抜けます。この場合はリソースはターゲットコードに付加されません。


リソースのターゲットコードへのマージ

リソースの数、行数、ファイル数はISaGRAFには制限はありません。リソースはターゲットコードの最後にリソースディレクトリ付きで付加されます。以下にリソースディレクトリフォーマットをＣ言語の文法で示します。

__RESOURCE:

{

  long nbres;	/* 定義されているリソースの数 */

  {

    char name[16];	/* リソース名 */

    long type;	/* リソースデータタイプ */

    long size;	/* データブロック長 */

    void *data;

    char *path_offset;	/* 文字列へのポインタ */

  } /*nb of records */

}

上記の "type" フィールドには以下のいずれかが指定されます。

1 = バイナリファイル

2 = テキストファイル

3 = データリスト:ulong data (この場合path_offsetフィールドは使われません)

4 = 変数リスト:varlist  (この場合path_offsetフィールドは使われません)

テキストファイルに関して end of lineキャラクタはターゲットシステム合わせてリソースコンパイラが翻訳します。全てのポインタは３２ビットオフセットとなります。リソース名やパス名はNULLで終了します。パス名やデータが上記のリソースディレクトリの後に続きます。


「ツール」メニューコマンド

「ツール」メニューには以下のコマンドが含まれます。これらはテキストエディタの下部ウィンドウに情報を表示するために使われます。

「コンパイラアウトプットウィンドウの表示」	最後のコンパイルでのメッセージを表示

「検索」	プログラム全体からテキストの検索を行った結果を表示

「アウトプットウィンドウを隠す」	アウトプットウィンドウを閉じる

エラーメッセージや検索結果がアウトプットウィンドウに表示されている時は、これをダブルクリックすることでプログラム中の指定場所を表示します。

プログラムがベリファイ（コンパイル）されていない場合は、このアウトプットウィンドウを表示させることはできません。


ST、ILプログラムのデバッグ
ST, ILプログラムのデバッグ

ST、ILプログラムのシミュレーション、デバッグ中は直接プログラムへの変更を加えることはできません。

IL	ILプログラムではインストラクションがリストの形式になり、変数の現在値が同一行に表示されます。インストラクションをダブルクリックすることより、対応する変数の値を変更することができます。

ST	STプログラムではエディタウィンドウにスパイリストウィンドウが組み込まれます。２つのウィンドウ間のセパレーションをマウスでドラッグすることにより表示サイズの変更を行うことができます。

スパイリストの保存

 	スパイリストへの変数挿入

選択されている変数の変更

ダンプリスト

変数スパイのリストには変数名、現在値、コメントが表示され、それぞれのフィールドの幅はマウスドラッグにより変更することができます。


スパイリストの保存

「ファイル」－「保存」メニューコマンドにより、デバッグ中のプログラム名と同一名でスパイ変数リストが保存されます。このリストは次回のST、ILプログラムがデバッグ状態となる時に、自動的に開かれます。

また、デバッグウィンドウの「ツール」－「スパイリスト」メニューコマンドにより、このプログラム名のスパイリストを表示して修正、保存を行うことも可能です。


 	スパイリストへの変数追加

 	「編集」－「変数挿入」メニューコマンドにより、スパイリストに変数を挿入することができます。プロジェクト変数辞書の変数選択用のダイアログボックスから挿入する変数を選択します。このようにして変数をマニュアル入力する必要がありません。このリストには最大３２個までの変数を含めることができます。同一の変数名がリスト上に表示されることはありません。

 	STテキストウィンドウで変数が選択（ハイライト）されている時は、「編集」－「スパイリストへ追加」或いは、「スパイリストへの追加」ツールバーアイコンによりスパイリストに変数を挿入することができます。変数を選択して右マウスクリックしてオープンされるポップアップメニューからの選択も可能です。


選択された変数の変更

「編集」－「変数の変更」メニューコマンドにより、スパイリスト上で選択されている変数の変更を行うことができます。「編集」－「変数の切り取り」メニューコマンドにより、スパイリスト上から選択されている変数の削除を行うことができます。


ダンプリスト表示

「オプション」－「ダンプリスト」メニューコマンドにより、スパイリストでの変数表示モードを通常モードとダンプリストモードと切り替えることができます。ツールバー上のズームボタンの選択でも切り替えることができます。

ダンプリストモードでは個々の選択されている変数が表示されます。値はウィンドウの上部に数値或いは文字列で表示され、その下にダンプフォーマットで表示されます。この表示により変数の内容がバイト単位で１６進数表示することができます。

ダンプリスト表示は印刷ができないような特殊コードを含む文字列の表示に特に有効となります。