プログラム学習室 http://studyhallweb.com/

秀丸マクロ 指定行位置に挿入

指定行位置に文字列挿入

// サブルーチンの呼び出し(例)
// 引数: 挿入する行位置, 挿入する文字列
call subInsertLine 5, "挿入する文字列\n";
endmacro;

subInsertLine:
	// 指定位置にカーソル移動
	gofiletop;
	down ##1 - 1;

	// 文字列の挿入
	insertfix $$2;
	return;
				

第1引数で指定した行位置に文字列を挿入します。
文字列を行として挿入するには最後に\nを付けて改行します。

特定の文字列がある行の下の行に文字列を挿入

// サブルーチンの呼び出し(例)
// 引数:特定文字列(第一候補)、特定文字列(第二候補), 挿入文字列
call subAddBelow "<layout", "<update",
	"<sidemenu>menu.xml</sidemenu>\n";
endmacro;

subAddBelow:
	gofiletop;
	searchdown $$1;
	if(result) {
		down;
		insert $$3;
	} else {
		searchdown $$2;
		down;
		insert $$3;
	}
	return;
				
ターゲットとなる文字列がある行の次の行に文字列を挿入します。
XMLにタグを追加するとき等に使用しています。
ターゲットとなる文字列は第二候補まで指定できるようにしてあります。