|
ZERRY さん今日は、ひろです。
> 現在、IEでソース表示をHidemaruを指定していますが、
> 自動的に文字コードを正しく認識できない場合があります。
完全に正しく自動認識するのは不可能ですが、秀丸が対応している文字コー
ドならば、「動作環境」→「編集」の「文字コードの自動認識をする」を ON
にしておくと、誤認識が減ると思います。
> 表示後に文字コードを変換する
> 方法
「コマンド一覧」→「ファイル系」→「ファイルを閉じて開く」でもでき
ます。ファイルを再度選ぶのが面倒なら、末尾のマクロを試してください。
//文字 code 自動変更 macro
main:
disabledraw;
if(!selecting)call select;
searchdown "\x1B",inselect;
if(result)##charset=4;
else{
call check_charset;
##charset=##return;
}if(updated==1){
message "ファイルが更新されています\n" +
"複数の文字コード混在すると、復旧できなくなる恐れがあるので、" +
"マクロを終了します。";
goto ending;
}call save_search;
##org_line=lineno;
##org_column=column;
##handle = hidemaruhandle(0);
$$option = "/(" + str(windowposx) + "," + str(windowposy) + ","
+ str(windowcx) + "," + str(windowcy) + ") ";
$$filename = filename2;
openfile $$option;
closehidemaru ##handle;
if(##charset==1) openfile $$filename,euc;
else if(##charset==3) openfile $$filename,sjis;
else if(##charset==4) openfile $$filename,jis;
movetolineno ##org_column,##org_line;
goto ending;
save_search:
$search=searchbuffer;
#search=searchoption;
return;
check_charset:
##charset=(charset&63);
if(##charset==2){
message "文字化けしている理由が不明(;_;)";
goto ending;
}else if(##charset==4){
##return_code=(charset&192)/64;
if(##return_code==1)return 1;
else return 3;
}else return ##charset;
ending:
setsearch $search, #search;
endmacro;
select:// escape sequence を探す
beginsel;
##num=0;
while(##num<30){
down;
if(!result){
gofileend;
##num=30;
}else ##num=##num+1;
}return;
|
|