findspecialとカラーマーカーの不具合No.08463
colder さん 14/11/03 23:28
 
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にすると文字化けする";

[ ]
RE:08463 findspecialとカラーマーカーのNo.08465
秀丸担当 さん 14/11/04 09:58
 

バグ情報ありがとうございます。
それぞれの問題、マクロで再現できて確認することができました。
調べて修正させていただきます。

[ ]