実行速度が速い: インタープリタ型ではなく、一度中間言語にコンパイルしたものを実行するから実行速度が高速です。 |
充実した関数: 標準関数も200を超え、知子の情報のほとんどの機能にアクセスできます。 |
単純な構文: 構文は単純。変数名も自由に設定できるので、暗号を解読するようなマクロ言語とは一味違います。 |
デバッグ機能搭載: コンパイル時にエラーが発生すると自動的にエディタが起動し、修正すべき位置にカーソルが移動。 さらにソースコードデバッガまで付いてくる! |
簡単なマクロは数行で完成: 複数の機能を組み合わせるだけの「バッチ処理」は処理を羅列するだけでOK。 |
CurLeftEnd SelectRight
ShellExecute | WindowsのAPIの一つです。マクロ言語から直接呼ぶことができます。 |
GetTomTitle | 知子の情報に登録されているデータの「表題」を得る関数です。 |
SaveWinPos | Windowの位置を記憶します。 |
UndeleteChar | 削除された文字を復活します。 |
CopyFile | ファイルをコピーします。 |
一つのマクロで記述できる行数 (コメントなどは除く) | 500行 |
定義できる変数の数 | 100個(Integer、File、文字列などの合計) |
同時におこなえるファイルI/O (オープンできるファイル数) | 5 |
サブルーチンのネストコール数 | 50 |
;; 表題と索引に自分の名前を入れる String Name, NameForTitle STring Title, Key Integer i, nFound TomFile JumpIfFalse(End) ; 知子ファイルでない場合には終了 SetStr(Name,'山田太郎') ; この部分に自分の名前を入れる GetTomTitle(Title) ; すでに登録されている表題を得る AddStr2(NameForTitle,Name,' - ') StrFind(nFound,Title,NameForTitle) ; すでに表題の先頭が名前である場合には索引への登録へ CmpInt(nFound,'=',0) JumpIfTrue(Key) AddStr2(Title,NameForTitle,Title) SetTomTitle(Title) ; 名前付の表題に :Key SetInt(i,0) ; ループカウンタを0にする :Loop GetTomKey(Key,i) ; i 番目の索引を得る CmpStr(Key,'=',Name) JumpIfTrue(End) ; すでに索引に名前があれば終了する CmpStr(Key,'=','') JumpIfFalse(Skip) ; ヌルであれば索引に名前を入れて終了 SetTomKey(Name,i) Jump(End) :Skip Inc(i) ; ループカウンタを1増やし、 CmpInt(i,'=',28) ; 28に等しければ終了 JumpIfTrue(End) Jump(Loop) ; 28以下なのでループする :End