<<< 前へ   TOP   次へ>>>


STLの書き方

sampleとしてSASF.SRCやTOOLS\*.SRC、MODES\*.SRCなども参照してみてください。


セクション

STLは大きく分けて9つのセクションからなります。

グローバル変数定義セクション
ユーザーが自由に定義できる、グローバルな変数や文字列を定義します。
サブルーチン定義セクション
ユーザーが作成するルーチンを定義します。
ユーザー定義関数セクション
ユーザーが作成する関数を定義します。
キーアサイン定義セクション
指定されたキーが、どんな動作をするのかを定義します。
また、キーセットを使用することにより、同じキーの動作指定を、状況に応じて切り替えることもできます。
インクルードセクション
別のキー定義ソースファイルを読み込みます。
ダイアログ定義セクション
ユーザーが作成するダイアログを定義します。

以上6つのセクションは、自由な順番で、いくつでも定義できます。

プレビューキーセクション
定義されたキーの動作を実行する前に、共通に実行されます。
初期化セクション
SuperASFの起動直後に実行されます。
終了セクション
SuperASFの終了直前に実行されます。

以上3つのセクションは、自由な順番で定義できますが、全体で1つのみ使用できます。2つ以上定義しようとするとエラーになります。

SASFの動作はこれら9つのセクションを記述することによって決定されることになります。


コメント

STLの記述では、// より後ろ、改行まではコメントとして扱われます。
STLは低機能な言語なので、コメントはしっかり付けておいた方がよいです。

 例)
   // 無条件で終了
   #KEY SHIFT+ESC { QuitSASF(0); } // 2つ窓が有っても終了:-

また、/* と */ で囲まれた部分もコメントとして扱われます。なお、/* */ はネストしますので注意して下さい。

 例)
  /* comment 1 */

  /* comment 1
    comment 2 */

  /* /* nested comment */ */

次のようなものはエラーになるので注意してください。

 例)
  /* $rrr='test /* string'; */
      */ */
     ^^
     +-- これは余計なコメントの終了

フリーフォーマット

STLはフリーフォーマットです。各要素は半角スペース・タブ・改行などで区切られます。

 例)
  {QuitSASF(0);}
  も
  { QuitSASF( 0 ); }
  も
  {
    QuitSASF(
   0
    ) ; }
  も皆同じ意味です。

<<< 前へ   TOP   次へ>>>