|
うふさん今日は、Iranoan です。
念の為お断りしておくと、開発者とは何の関わりも無い単なる一ユーザです。
> > 簡単な置換マクロの例をここに載せておきます。機種依存文字といっても、実
> >際に普段使うのは、丸付き数字と(株)、(有)くらいだと思うので、以下のマ
> >クロで十分だと思います。
>
> 頂いたマクロ、そのまんまで希望している動作となりました。
> 有り難う御座います。
秀まるおさんのマクロ以外に、末尾のマクロもあります。
このマクロの場合、マクロを保存した場所に、depcode.ini という名前で、
;--------------------------------------------------------------------
[WORDS]
@="(1)"
A="(2)"
B="(3)"
;--------------------------------------------------------------------
という内容のファイルを作っておけばよいです。
またこちらだと、変換する文字が増えても速度が殆ど変わりません。
//--------------------------------------------------------------------
call GetCharaset;
if( $$return != "iso-2022-jp" && $$return != "" )endmacro;
#reg_search = searchmode;
$search = searchbuffer;
#search = searchoption;
if( !#reg_search ){
openreg "CURRENTUSER", "Software\\Hidemaruo\\Hidemaru\\Env";
writeregnum "SelectFound",1;
envchanged;
closereg;
}
call Depcode;
//検索を初期状態に戻す
setsearch $search, #search;
if( !#reg_search ){
openreg "CURRENTUSER", "Software\\Hidemaruo\\Hidemaru\\Env";
writeregnum "SelectFound",#reg_search;
envchanged;
closereg;
}
endmacro;
GetCharaset:
loaddll "tkinfo.dll";
$$charaset = dllfuncstr( "CurrentHeader", "Content-Type");
if( $$charaset != ""){
##charaset = strstr($$charaset, "charset");
if( ##charaset != -1)
$$charaset = midstr($$charaset, ##charaset + 8, 256);
}
freedll;
return $$charaset;
Depcode://機種依存文字変換部分
gofileend;
$$ini = currentmacrodirectory + "\\depcode.ini";
setsearch "[\\x87\\x40-\\x87\\x9C\\xFA\\x40-\\xFC\\x4B]",16;
//[@-∪@-K] では上手くいかない
loaddll "tkinfo.dll";
##Hilight = getconfig( "Hilight" );
config "xHilight:0";
while(1){
findup;
if(!result)break;
if( colorcode|0x1FE0^0x1FE0 != 15 ){
$$str = getinistr($$ini,"WORDS",
gettext(seltopx,seltopy,selendx,selendy));
if( $$str != ""){
delete;
insert $$str;
}
}
else moveto seltopx, seltopy;
}
config "xHilight:"+ str( ##Hilight );
return;
|
|