tunaスクリプトは文章とコントロールタグで出来ています。
表示する文章の中に特殊な文字列、コントロールタグを挿入することで、
画像を表示させたり表示中の文章を消去したりなどの特殊な操作を実行するわけです。
たとえば、
\m[select,area1]
出力エリアは"area1"で、
表示したあといったん停止してクリックを待ち、
\p
クリックされたら再開します。
次の場合は、クリックを待って内容を消去します。
\p\c
というような内容を実行した場合、次のような結果になります。
実行
ここでは\mが出力エリアを操作選択するタグ、
\pがクリック待ちするタグ、
\cが内容を消去するタグを表しているわけです。
コントロールタグは次のいずれかの書式をもちます。
\X
\X[引数]
\X〜\.X
\X[引数]〜\.X
基本は一番上の書式で、何かの意味を持った一文字Xで操作内容を表します。
さらに操作内容の説明が必要なタグの場合、引数を指定します。
引数が一文字だけの場合、大括弧[ ]は省略することができます。
引数が複数ある場合はカンマ,で区切ります。
tunaスクリプトは常に一定時間ごとに生じる「クロック」に従って内容が進行しています。
1クロックの時間は0.05秒で、基本的にはクロック発生ごとに次の一文字が読み込まれ、
文字なら表示され、タグならコマンドが実行されます。
ただし、ほとんどのタグは0クロックで実行できます。
たとえば、\i[select,A]\m[select,B]\u[file.jpg]...と続いている場合、
それらの処理は同時に実行されると考えることが出来ます。
ちなみに\rは実際にはクロックの時間を0秒にするタグで、
この場合はその効果を打ち消すタグ(\.r、\p、\q、\.u)が実行されるまで、
全ての処理が同時に実行されることになります。
\iと\mは画像エリアと出力エリアを操作するためのタグです。
これらは引数で操作内容をさらに指定します。
この引数を「コマンド」と呼びます。
\m[select,area2]
出力エリアは"area2"です。\n
\p
フェードアウトします。\n
\m[fadeout]\w[30]
フェードインします。\n
\m[fadein]\w[30]
デモを終了します。
\p\c
実行
続く引数でさらに操作内容を修飾することもあります。
例の\m[select,area2]ではarea2がselectの対象をあらわしています。