|
colderです。
変換モジュールのToUpper, ToLowerの動作確認中にfindspecialとカラーマーカーの
不具合を見つけました。
現在の文字コードと異なる文字コードで変換できない文字をfindspecialで検索する
と、間違って検索されることがあります。
カラーマーカーで着色している状態で文字コードを変更すると、
着色している場所がずれたり、文字化けすることがあるようです。
環境 秀丸8.50β12 win7
再現用マクロ
newfile;
setencode 1;
insert "\u0191,\u0192,\u0191,\u0192,\n";
gofiletop;
message "欧文で変換できない文字を着色";
while(1)
{
findspecial 0,8,0;
if(!result) break;
beginsel;
right;
endsel;
colormarker -1,0xffff80,11;
escape;
}
message "最初の\u0192が間違って着色される";
setencode 8,1;
message "文字コードを欧文に変更するとカラーマーカーがずれる";
deletecolormarkerall;
gofiletop;
while(1)
{
findspecial 0,8,0;
if(!result) break;
beginsel;
right;
endsel;
colormarker -1,0xffff80,11;
escape;
}
message "文字コードが欧文だと正しく着色される";
setencode 1,1;
message "文字コードをSHIFT-JISにすると文字化けする";
|
|