TeraTerm|マクロの書き方・使い方
スポンサーリンク
マクロファイルの作り方
テキストエディタで編集して、.ttl の拡張子で保存する。
基本的な文法
- コメント行は、;(セミコロン)で始める。
- ラベルは、:(コロン)で始める。
- 空白(スペース、タブ)のみの行は無視される。
- 変数の宣言は不要で、変数に代入すると同時に変数の宣言がされる。
- 変数名やコマンドに大文字/小文字の区別はない。
- 扱える値は整数(32bit符号付き)と文字列のみ。
- 文字列の最大長は255文字。
- 変数名のつけ方
- 1文字目はアルファベット(A〜Z、a〜z)と_(アンダースコア)。
- 2文字目からは数字も使える。
- 変数名の最大長は32文字。
- ラベル名のつけ方
- アルファベット(A〜Z、a〜z)と_(アンダースコア)が使える。
- ラベル名の最大長は、32文字。
- 演算子は、ほぼC言語と同じ。違いは、= は演算子「==」と同じ意味で使用できる。
if文の書き方
基本的なif文の書き方の例です。
bloodType = "A" if bloodType = "A" then comment = "あなたはA型ですね" elseif bloodType = "B" then comment = "あなたはB型ですね" elseif bloodType = "o" then comment = "あなたはO型ですね" else comment = "あなたはAB型ですね" endif
for文の書き方
基本的なfor文の書き方の例です。
for number 1 10 send number; next
これは、numberが10になるまで10回繰り返す例です。
forコマンドには、変数、初期値、最後の値を指定します。
nextが来るたびに自動的に変数に +1 されます。
while文の書き方
while文の書き方の例です。
number = 1 while number < 11 send number ; 番号をインクリメントする number = number + 1 endwhile
gotoコマンドで指定したラベルまでジャンプする
gotoコマンドで指定したラベルまでジャンプすることができます。
sex = "男性" if sex = "男性" then goto :END endif ; 女性の場合は、ここを通る :END
callコマンドとreturnコマンドでサブルーチンを用意する
callコマンドでラベルを指定してジャンプできます。
callコマンド実行後に、returnコマンドを呼び出すと、callを呼び出した次の行に戻ります。
call :SUB send 'サブルーチンの処理は終了しています。' :SUB send 'サブルーチンを読み出しました。' return
プロンプトが表示されるまで待つ
waitコマンドは、指定した文字が表示されるまで処理を待ちます。
wait "#"
上記の例では、Bashなどのプロンプトの # が表示されるまで処理を待ちます。
タイムアウト設定をする
timeoutに秒数を代入するとタイムアウト処理になります。
timeout = 30
上記の例では、タイムアウト設定は、30秒に設定されます。
これを書いておくと、設定した秒が経過したら次の処理に行くようになります。
タイムアウト設定に対応しているコマンドは、wait系のコマンドまたは、recvlnコマンドです。
タイムアウトに対応しているコマンドは、以下のコマンドです。
recvln、wait、waitn、waitln、wait4all、waitevent、waitrecv、waitregex
更新日:2018年08月28日
作成日:2018年07月07日