/////////////////////////// // ◆ユーザ設定 // 行頭に挿入する文字列 $header = "["; // 行末に挿入する文字列 $footer = "]"; ///////////////////////////
#tmplineno = seltopy; #endline = selendy;
// #endline まで繰り返し while (code != eof) {
// 行頭 moveto 0, #tmplineno; insert $header; // 行末 moveto linelen, #tmplineno; insert $footer;
//次の行へ #tmplineno = #tmplineno + 1; movetolineno 1, #tmplineno + 1; if (#tmplineno > #endline) break; }
2つめのマクロを少し変更してみました。
範囲指定してから、上記のマクロを呼び出すと、期待通りの動作をするかと思います。
▽2
●
空腹おやじ ●90ポイント ベストアンサー |
挿入の基準が「行」となるようなので、
1行のみを対象とするような場合に
「文字を選択していないくてもキャレットがあればその行を選択している」
とみなして良いのであれば、次のような感じで。
キャレットが行頭にある場合について
$BegininiOfLine = ">>"; $EndOfLine = "<<"; if ( selecting == 1 ) { escape; #TargetLine = seltopy + 1; if ( selendx == 0 ) { #EndLine = selendy; } else { #EndLine = selendy + 1; } movetolineno 1, seltopy + 1; } else { #TargetLine = lineno; #EndLine = lineno; } gofileend; #FileEndLine = lineno; movetolineno 1, #TargetLine; while ( #TargetLine != #EndLine + 1 ) { golinetop; insert $BegininiOfLine; golineend; insert $EndOfLine; #TargetLine = #TargetLine + 1; if ( #TargetLine >= #FileEndLine ) { break; } movetolineno 1, #TargetLine; }