選択状態が対応範囲外のときの処理とか、いちおう少し行儀よくして みました。こっちを使ってください。(最初からちゃんと条件分岐が 考えられれば、何度も書き込まずにすむんですが、なかなか。)
'すぐ下に1行追加でアンダーライン 2001/09/20 Kabuneko
proc main if @hwnd = 0 then exit proc '1行が長すぎるとき中止 if lenb(@TextCr$(@Line)) > 80 then print "ERROR: 1行が長すぎます" exit proc end if '未選択または改行をまたいでいるときは中止 if @TextSelect$ = "" then print "ERROR: 1行以内で選択してから実行してください" exit proc end if dim m, n '選択文字列のバイト数を取得 m = lenb(@TextSelect$) @UndoBlock = 1 '行のなかでの選択開始位置を取得 n = instrb(@TextCr$(@Line),@TextSelect$) @Select = 0 @MoveEndLine @CharReturn2 @Insert space$(n-1) @Insert string$(m,`^`) @UndoBlock = 0 end proc |