namazu-ml(avocado)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: mailnews_citation_filter
高林です
Rei FURUKAWA <furukawa@xxxxxxxxxxxxxxxx> wrote:
>mknmz.pl に mailnews_citation_filter という便利な処理がありますが、こ
>こでカットされたデータが、全部そのまま $weighted_str に入ってしまうの
>で、例えば、
これはすごく大きなバグですね。気付きませんでした。ご報告ありがとう
ございます。
とりあえず sub namazu_core の
&document_filter($cfile, \$title, \$contents,
\$weighted_str, \$header, \$headings);
&finfoput($url, $title, $cfile_size, \$contents, \$header, \$headings);
&wordcounter($file_count, $file_segment, \$contents, \$weighted_str, $kanji);
を
&document_filter($cfile, \$title, \$contents,
\$weighted_str, \$header, \$headings);
&finfoput($url, $title, $cfile_size, \$contents, \$header, \$headings);
+ $contents .= $weighted_str; # 重みづけ情報を追加
&wordcounter($file_count, $file_segment, \$contents, \$weighted_str, $kanji);
に修正して sub wordcounter の
# 小文字に正規化
$$contents =~ tr/A-Z/a-z/;
$$weighted_str =~ tr/A-Z/a-z/;
# 記号を全て削除する -K オプション時
$$contents =~ tr/\xa1-\xfea-z0-9/ /c if $NoSymbolOpt;
$$weighted_str =~ tr/\xa1-\xfea-z0-9/ /c if $NoSymbolOpt;
# スコアの重みづけを行う
$$weighted_str =~ s/\t *(\d+) *\t([^\t]*)\t\/ *\d+ *\t/&wordcountsub($2, $1, \%word_count)/ge;
&wordcountsub($$contents, 1, \%word_count);
を
# 小文字に正規化
$$contents =~ tr/A-Z/a-z/;
- $$weighted_str =~ tr/A-Z/a-z/;
# 記号を全て削除する -K オプション時
$$contents =~ tr/\xa1-\xfea-z0-9/ /c if $NoSymbolOpt;
- $$weighted_str =~ tr/\xa1-\xfea-z0-9/ /c if $NoSymbolOpt;
# スコアの重みづけを行う
! $$contents =~ s/\t *(\d+) *\t([^\t]*)\t\/ *\d+ *\t/&wordcountsub($2, $1, \%word_count)/ge;
&wordcountsub($$contents, 1, \%word_count);
に修正してください。明日にでも暫定修正版を配布したいと思います。
>いずれにしても、現在、要約用のデータと検索用のデータは $contents が兼
>ねていますが、これは分離した方がスッキリするように思います。
これはそうかもしれません。よく考えてみることにします。
--
高林 哲 Satoru Takabayashi