改行マクロについてNo.05873
南天 さん 08/06/18 14:15
 
以前、改行マクロを教えてもらったのですが
「すべて選択」するとエラーが出ますのでご指導願います。

現行のマクロ
(一定の文字数を超えて指定文字があると改行するマクロ)
setcompatiblemode 0x10F;
disabledraw;
#sel=selecting;
if(#sel){
    rangeeditin;
    gofiletop;
}
while(1){
    searchdown "(?<=[、。][  ]*)(?=[^  \\n])",regular,nohilight;
    if(!result) break;
    if(column>65) insert "\n";
}
if(#sel) rangeeditout;

[ ]
RE:05873 改行マクロについてNo.05874
秀丸担当 さん 08/06/18 17:54
 

>以前、改行マクロを教えてもらったのですが
>「すべて選択」するとエラーが出ますのでご指導願います。

もともとこのマクロは範囲選択をしていなければカーソル以降の全てを対象とし
ているようで、ファイル先頭にカーソル移動させてから実行すればいいようです。

すべて選択中でも、選択していなくてもすべてを対象とするには、以下のように
するといいと思います。

    if(#sel){
        rangeeditin;
        gofiletop;
    }

の部分を

    if(#sel){
        if(seltoplineno==1&&selendlineno>=(linecount2-1)){
          //すべて選択中
          escape;
        } else {
          rangeeditin;
        }
    }
    gofiletop;

に修正

[ ]
RE:05874 改行マクロについてNo.05875
南天 さん 08/06/19 02:22
 
秀丸担当さま
上手くいきました。
いつも、教えてもらってありがとうございます。
助かりました。

[ ]