[Namazu-devel-ja 1191] Re: 文字 N-gram ぽい実験 (Re: フレーズ検索って N-gram ですよね
Tadamasa Teranishi
yw3t-trns @ asahi-net.or.jp
2006年 8月 29日 (火) 18:51:16 JST
寺西です。
Yukio USUDA wrote:
>
> > # 2回判定する可能性があるのは無駄かな
> >
> 判定が不確かで複数候補が出る場合に utf-8-strict 単独で現れることは
> ないように思えるので複数候補が出る場合の処理は utf8 を押さえてあれば
> 大丈夫ではないかと思います。
確か "utf-8-strict" は "utf8" の部分集合(というよりは、"utf8" が拡大
されているわけだが)のはずなのに、"utf8" とか "utf-8-strict or utf8"
と判定されるのはどういった理由なのか謎ですね。
まぁ、フラグでチェックすればいいだけなので、単体であらわれないみたい
ですが、"utf-8-strict" のチェックを念のためしておいてもいいですね。
my $flag = 0;
while (...) {
if ($flag == 0 && $enc =~ /^(utf-?8|utf-8-stric)$/i) {
:
$flag = 1;
}
}
この程度ですしね。
> Text::Iconv は使ったことがないのですが、 iconv() を呼び出していることから
> glibc や libiconv の環境依存になると思います。対応状況によって
> 未定義コードにあたってエラーになったりならなかったりするのではと
> 思っています。
トラブルを避けるために、GNU libiconv のみの対応と考えています。
GNU libiconv に関しては namazu, namazu.cgi で利用するため、mknmz
でも利用するため利用者にそれほど大きな負担はかけないと考えて
います。(また、マッピングが一致するので、マッピングに関するトラブル
が少しだけ減るはずです。)
Perl 5.8 より前のバージョンでは何らかのコード変換ツールは必要になり
ますから。(nkf は日本語限定なので、日本語以外では Encode の代わりに
はなりません。)
また、サポートしているエンコーディング名のチェックだとか、
CP932 が Shift_JIS のエリアスとなっていないかどうか実際に
テストするとかは、Autoconf か、簡単に pltests でチェックしないと
いけないだろうとは考えています。
現状、gettext も GNU gettext のみサポート(SUN の gettext は対象外)
となっているのと同じと考えてください。(ただ、困ったことに他の iconv
でもそれなりに動作してしまうかもしれないのが、厄介ですが。)
--
=====================================================================
寺西 忠勝(TADAMASA TERANISHI) yw3t-trns @ asahi-net.or.jp
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint = 474E 4D93 8E97 11F6 662D 8A42 17F5 52F4 10E7 D14E
Namazu-devel-ja メーリングリストの案内