Namazu-users-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 要約にsubjectを含まない方法-具体的な記述方法?



> > お聞きしたいのは、要約にsubjectを含まない方法です。
> >
> > 例えば、下記の「Namazu: FAQ」はタイトルと要約にも現れています。
> > これをタイトルだけにして、要約には含めたくないのです。
>
> 残念ながらそのような機能はありません。
> フィルタを改造すれば可能ですが、すべての種類のドキュメントに対応する
> のは、少々面倒かもしれません。
> (そもそもドキュメントの種類によっては、subject に含まれないものも
> あります。)
>
> ここでは HTML についての改造方法を示します。
> html.pl の weight_element() で $$headings に追加する部分を改造
> すれば良いでしょう。$element が TITLE なら追加しないという処理を
> 加えれば目的は果たせるものと思います。

早速の回答、ありがとうございます。
フィルタの改造で対応が可能とのこと、希望が沸いてきました。
Namazuの使用は、htm、htmlファイルのみです。

ただ、html.pl の weight_element() 関数の記述をどのように追加、変更すればいい
のか、
ご教授いただければ有難いです。

sub weight_element ($$$ ) {
    my ($contref, $weighted_str, $headings) = @_;

    for my $element (sort keys(%{$conf::Weight{'html'}})) {
 my $tmp = "";
 $$contref =~ s!<($element)>(.*?)</$element>!weight_element_sub($1, $2,
\$tmp)!gies;
 $$headings .= $tmp if $element =~ /^H[1-6]$/i && ! $var::Opt{'noheadabst'}
     && $tmp;
 my $weight = $element =~ /^H[1-6]$/i && ! $var::Opt{'noheadabst'} ?
     $conf::Weight{'html'}->{$element} : $conf::Weight{'html'}->{$element} -
1;
 $$weighted_str .= "\x7f$weight\x7f$tmp\x7f/$weight\x7f\n" if $tmp;
    }
}