韓国語での検索No.06263
いいじま さん 09/11/25 12:39
 
いつもお世話になっております。

現在、秀丸 Ver.7.11 を使っているのですが、韓国語のファイルでの検索で
不具合が発生しております。

具体的には、ASCII文字しか入っていないことになっているファイルを
開いて、タイトルバーに[Shift-JIS]と出るのを期待していたところ、
[EUC]と出たので、[^\x01-\x7E]という正規表現で検索をしたところ、
該当の箇所が見つかって強調表示(黄色の背景に黒い文字)されました。

で、その部分は意味不明な漢字列に文字化けしていて、正体は韓国語だと
見当がついたので、韓国語のテキストとして読み込み直し、再度上記の
正規表現で検索したところ、該当部分が、

  ・ハングル1文字があるはずの箇所には、左半分は黄色の半角サイズの四角
   右半分は真っ白に表示され、文字は表示されない

  ・ただし、カーソルはきちんと全角文字として動く

という状態になってしまいました。

なんとかならないものでしょうか。

[ ]
RE:06263 韓国語での検索No.06265
秀丸担当 さん 09/11/25 13:31
 

>  ・ハングル1文字があるはずの箇所には、左半分は黄色の半角サイズの四角
>   右半分は真っ白に表示され、文字は表示されない
>
>  ・ただし、カーソルはきちんと全角文字として動く

おそらく同じ条件を作って試してみて、再現できなかったのですが、いろいろ確
認してみたところ、正規表現DLLがjre32.dllの場合にそうなることが確認できま
した。
jre32.dllは多言語に対応していないためそうなってしまうのだと思います。
[その他]→[動作環境]→[環境]→[正規表現]より、正規表現DLLをHmJre.dllにす
ると問題無いのではないかと思います。

jre32.dllはV3.00以前の互換のために用意されていますが、もし特別な事情が無
いのであれば、HmJre.dllでもほぼ問題無いはずなので、HmJre.dllにされること
をお勧めします。

[ ]
RE:06265 韓国語での検索No.06266
いいじま さん 09/11/25 14:04
 
お返事ありがとうございます。

>>  ・ハングル1文字があるはずの箇所には、左半分は黄色の半角サイズの四角
>>   右半分は真っ白に表示され、文字は表示されない
>>
>>  ・ただし、カーソルはきちんと全角文字として動く
>
> おそらく同じ条件を作って試してみて、再現できなかったのですが、いろいろ確
> 認してみたところ、正規表現DLLがjre32.dllの場合にそうなることが確認できま
> した。

うーむ…手元の環境では、HmJre.dll 1.92 と出ています。
もう少しこちらで調べてみます。

[ ]
RE:06266 韓国語での検索No.06267
秀丸担当 さん 09/11/25 14:40
 

>うーむ…手元の環境では、HmJre.dll 1.92 と出ています。

そうでしたか。
失礼しました。
また試してみたところ、違うケースでも確認できました。
いったんShift-JIS等で読み込んで文字化けした状態で検索し、そのまま[ファイ
ル]→[エンコードの種類]より韓国語にして再読込みした直後、そのように表示さ
れることが確認できました。
再読込みする前の情報が残ったままになってしまっていました。
もう一度F3等で検索すると回復しました。
とりあえずはV7.11においてはもう一度検索することで回避できるのではないかと
思います。

現在開発中のV8.00βのほうで、再読込みしたら検索文字列の強調は解除するよう
に修正させていただきます。

[ ]
RE:06267 韓国語での検索No.06268
いいじま さん 09/11/25 15:00
 
いいじまです。お返事ありがとうございます。

> また試してみたところ、違うケースでも確認できました。
> いったんShift-JIS等で読み込んで文字化けした状態で検索し、そのまま[ファイ
> ル]→[エンコードの種類]より韓国語にして再読込みした直後、そのように表示さ
> れることが確認できました。
> 再読込みする前の情報が残ったままになってしまっていました。
> もう一度F3等で検索すると回復しました。
> とりあえずはV7.11においてはもう一度検索することで回避できるのではないかと
> 思います。

はい。
こちらでも同様の現象を確認しました。

> 現在開発中のV8.00βのほうで、再読込みしたら検索文字列の強調は解除するよう
> に修正させていただきます。

よろしくお願いいたします。

[ ]