マクロのオプション

2021/05/18 5:51 Macro::macro 仕様

マクロのオプション

ttpmacro.exe にはオプションが指定可能です。

Tera Term バージョン 4.92 から、以下の仕様になっています。

コマンドラインオプション

Tera Term マクロには、コマンドラインオプションを指定することができます。

指定方法は、以下の通りです。
TTPMACRO.EXE [/I] [/V] [<macro file> [<parameters>...]]
[/I]
マクロ起動時に、マクロをアイコン化します。

[<macro file>] より後に記述された場合は、マクロファイルのオプションとして扱われます。
また、拡張子 .ttl のマクロファイルから ttpmacro.exe を起動した場合は、このオプションは省略されたものとして扱われます。
[/V]
マクロ起動時に、マクロを隠します。

[<macro file>] より後に記述された場合は、マクロファイルのオプションとして扱われます。
また、拡張子 .ttl のマクロファイルから ttpmacro.exe を起動した場合は、このオプションは省略されたものとして扱われます。
[<macro file>]
マクロファイル名を指定します。

ファイル名が絶対パスでないときは、ttpmacro.exe からの相対パスと見なされます。
ファイル名はディレクトリ情報が取り除かれ、システム変数 param1 および params[1] に格納されます。

param1 は文字列型ですが、params[1] は文字列型配列になっています。
[<macro file> [<parameters>...]]
[<macro file>] 以降のパラメータは、マクロファイルへ渡したい情報を指定します。

これらはシステム変数 param2 ~ param9 に格納されます。
param10 以降に相当する変数は存在しません。

また、params[2](文字列型配列 params の 3 番目の要素)から順番に格納されます。
文字列型配列であるため、理論的には params[10] 以降は 65536 まで指定可能と思われます。

Windows Vista 以降のコマンドプロンプトでは、以下の制約が存在します。
Windows Vista 以降の コマンド プロンプト (Cmd.exe) では、8192 文字以上の引数を受け付けられますが、8192 文字以上の引数を渡した場合には、以下の現象が発生する可能性があります。

・echo コマンドで、8192 文字目以降の引数が切り捨てられる。
・cmd.exe から、子プロセスを起動する際、渡される引数の一部に抜けが生じる。
https://support.microsoft.com/ja-jp/help/2823587
文字列型も文字列型配列も、最長 511 文字まで指定可能です。

備考

ラベルを用いたサブルーチン (call) や、別ファイルを呼び出すインクルード(include)には、オプションを指定することができません。