秀丸マクロの概要(Ver8.71対応版)
目次− 秀丸マクロの概要
 秀丸マクロは、「マクロ登録」でファイルを登録して、それを呼び出す形で使います。マクロは拡張子がMACのファイルでなければいけません。
 マクロファイルはShift-JISで保存していただく必要があります。
 V8.00以降はUTF-16(BOM付き)も対応しています。
 V8.50以降はUTF-8(BOM付き)も対応しています。

 マクロファイルは[その他]→[動作環境]→[環境]で指定される「マクロファイル用のフォルダ」に置いておく必要があります。
 「マクロファイル用のフォルダ」は、マイドキュメント配下のフォルダなど、分かりやすい場所をあらかじめ指定されることをお勧めします。
 「マクロファイル用のフォルダ」が指定されていない場合は、秀丸エディタ本体(HIDEMARU.EXE)と同じフォルダになりますが、推奨はされません。

 マクロは80個まで登録することができます。また、「マクロ実行」コマンドや「キー操作の読み込み」と「キー操作の再生」コマンドなどを使って実行することができます。

 秀丸マクロは、各種の動作を実行する文と、流れを制御する制御文からなります。文はセミコロンで区切らなければいけません。セミコロンが無い場合は、「セミコロンが無い」とは別のエラーが出るので注意してください。

正しい例
gofiletop;
insert "A";
down; right; insert "A";

正しくない例
gofiletop
insert "A"
 制御文は、例えばif文などのようにC言語とよく似たものがあります。この場合、セミコロンはいりません。
制御文
if( x != 0 ) {
    golinetop;
}
 秀丸マクロの文やキーワードは、すべて小文字だけで記述します。

 コメントを入れるにはC++言語と同様に//が使えます。

 V6.00より、/*〜*/もコメントとして記述できます。
 ただし秀丸エディタV6.00未満や、それ未満相当の秀丸メールの場合はできないので、汎用的なマクロを作る場合は/*〜*/は使わないほうがいいです。
 標準のカラー表示でも/*〜*/はできません。カラー表示したい場合は、C言語用のカラー表示か、ユーザー定義で指定してください。

 秀丸マクロでは変数を使うことができます。変数には数値変数と文字列変数があり、これらを使って各種の演算をすることができます。数値変数は#で始まり、文字列変数は$で始まります。

変数の型
#n = 100 * 50 + 10 + strlen( $x );
$s = rightstr( "斉藤" + $x + "これはこれは", 20 );
 callとreturnを使ってサブルーチンを作ることもできます。サブルーチン内でローカル変数を使いたい場合は、##または$$で始まる変数を使います。

 変数のほか、秀丸エディタにはいくつかの内部的な値を表現するキーワードが存在します。例えば、question文を実行するとその結果(「はい」を選んだか「いいえ」を選んだか)がresultという値として表現されます。これらを使って条件分岐なども可能です。

注意
 マクロは動作環境やファイルタイプ別の設定によって挙動が変わることがあります。
 他の人にマクロを渡したりする場合は、設定に依存性が無いか十分な注意が必要です。
 依存性が現れやすい主なものとして、検索する文(searchdown等)や貼り付け(paste文)などがあります。
 参照:マクロの設定依存性について


戻る