|
setcompatiblemode 0x00120000;
$layer="templayer";
if ( !selecting ) selectline;
colormarker 0xff,-1,3,0,0,$layer;
settargetcolormarker $layer;
replaceall " ", "☆■☆", incolormarker;//inselect2; //
#cnt = result;
selectcolormarker $layer;
filter "" , "ToHankakuAlnum"; //英数字/記号/空白のみ半角に
if ( #cnt >= 1 ) {
question "全角スペースをどうしますか?\n\n" +
"Y=全角\n" +
"N=半角";
#yn = result;
settargetcolormarker $layer;
if ( #yn ) replaceall "☆■☆", " ", incolormarker;//inselect2;//ア
else replaceall "☆■☆", " ", incolormarker;//inselect2;//イ
}
deletecolormarkerall $layer;
endmacro;
filterを使って、全角スペースは半角にしたくない時があるので、上記のようなマ
クロで作りました。
テストした文字列は、「AB C」で、
filter "" , "ToHankakuAlnum"; //英数字/記号/空白のみ半角に
この行をコメントすると、//アイの行で、置換されます。("☆■☆"がスペースに
なる)
コメントを外し、filterが実行されると、置換されません。("☆■☆"がスペース
にならない)
filterで、incolormarkerが上手く行かない気がします。
ご確認頂けないでしょうか?
使い方が違っていたら、ご指摘願います。
因みに、アイの行のincolormarkerをinselect2にして、実行すると上手く行きます。
(filter実行後、"☆■☆"がスペースになる)
他にもっと良いやり方があれば、ご教授お願い致します。
|
|