PREFIX検索でのERR_TOO_MUCH_MATCH ― 2005年11月01日 01時02分32秒
PREFIX 検索( xxx* ) において、nmz_get_maxhit() のチェックで、ERR_TOO_MUCH_MATCH としていた部分を ERR_TOO_MUCH_HIT に変更しました。(HEAD, stable-2-0)
どうも PREFIX 検索だと ERR_TOO_MUCH_HIT は発生させずに、すべてERR_TOO_MUCH_MATCH にしようという趣旨で作られているようなのですが、やはり不自然なので、以下のように整理しました。
- ERR_TOO_MUCH_MATCH は、マッチする単語数が指定した値より多い場合。
- ERR_TOO_MUCH_HIT は、ヒットする文書数が指定した値より多い場合。
どうも PREFIX 検索だと ERR_TOO_MUCH_HIT は発生させずに、すべてERR_TOO_MUCH_MATCH にしようという趣旨で作られているようなのですが、やはり不自然なので、以下のように整理しました。
- ERR_TOO_MUCH_MATCH は、マッチする単語数が指定した値より多い場合。
- ERR_TOO_MUCH_HIT は、ヒットする文書数が指定した値より多い場合。
HEAD: query="" の時の処理 ― 2005年11月01日 01時03分48秒
query="" の時に例外扱いだった一部の処理を見直しました。
* テンプレートの <input type="text" name="query" value="ooo"> の value="ooo" を無条件で削除し、value="xxx" を追加して出力するように しました。
-> 従来は query が "" の場合は削除せず、追加もしませんでしたが、
この修正により、常に value 属性がタグに含まれるようになります。
また、重複することもありません。
* テンプレートの <option> の select 属性を無条件で削除するようにしました。
-> 従来は query が "" の場合は削除しませんでしたが、max, result, sort はデフォルト値を持っているので、削除する必要があります。
(HEAD のみ)
* テンプレートの <input type="text" name="query" value="ooo"> の value="ooo" を無条件で削除し、value="xxx" を追加して出力するように しました。
-> 従来は query が "" の場合は削除せず、追加もしませんでしたが、
この修正により、常に value 属性がタグに含まれるようになります。
また、重複することもありません。
* テンプレートの <option> の select 属性を無条件で削除するようにしました。
-> 従来は query が "" の場合は削除しませんでしたが、max, result, sort はデフォルト値を持っているので、削除する必要があります。
(HEAD のみ)
Win95Cmd.exe ― 2005年11月01日 04時29分02秒
Windows 95/98/Me 環境では、Namazu 2.0.15 からWin95Cmd.exeが必要になります。
入手先:
http://cygutils.fruitbat.org/consize/Win95Cmd.exe
nmz/nmz_regex_grep() を分割 ― 2005年11月01日 14時20分40秒
regex 検索と field 検索の両方をまとめて処理していた nmz/nmz_regex_grep() を2つに分割し、ソースを整理しました。
テキスト整形に関して ― 2005年11月01日 14時38分18秒
> 前処理として分かち書きの前にテキストを整形します。
>
> また、
> ・行頭、行末の空白文字を削除
> ・改行は日本語の単語の区切とは見なさない。(改行を連結)
> ・空白行は単語の区切とする
> というようにしました。
という上記に関係する処理ですが、実は gfilter::line_adjust_filter と思想的には同じものでした。(処理は多少異なる)
gfilter::line_adjust_filter と重複するのは何ですので、将来的にはgfilter::line_adjust_filter を廃止し、mknmz 側で処理するようにしたいと思います。
これは、
- plain テキストでは処理が通らないのはまずい
- 全てのフィルタで処理するものを各フィルタから呼び出さないといけないのは面倒
という理由によるものです。
>
> また、
> ・行頭、行末の空白文字を削除
> ・改行は日本語の単語の区切とは見なさない。(改行を連結)
> ・空白行は単語の区切とする
> というようにしました。
という上記に関係する処理ですが、実は gfilter::line_adjust_filter と思想的には同じものでした。(処理は多少異なる)
gfilter::line_adjust_filter と重複するのは何ですので、将来的にはgfilter::line_adjust_filter を廃止し、mknmz 側で処理するようにしたいと思います。
これは、
- plain テキストでは処理が通らないのはまずい
- 全てのフィルタで処理するものを各フィルタから呼び出さないといけないのは面倒
という理由によるものです。
アサブロ検索バージョンアップ ― 2005年11月02日 00時37分55秒
アサブロのコメントやトラックバックの日付表示を記事本体と同じものに揃えてもらったので、それに対応してアサブロフィルタを修正しました。
(要望を出していました。)
トラックバック元のリンクも追加されたので、フィルタに手を加えました。
(何故か、この修正情報は開示されていませんが...)
また、「番台」のブログを検索したところ、「by 著者」のところが省略されているものがあり、カテゴリの取得に不具合が生じるのを発見しました。そのため、省略されている場合にも対応しました。(この場合は、著者は「不明」になります。)
この不具合は、11/1の修正によるものか、それ以前からのものかは不明です。
(要望を出していました。)
トラックバック元のリンクも追加されたので、フィルタに手を加えました。
(何故か、この修正情報は開示されていませんが...)
また、「番台」のブログを検索したところ、「by 著者」のところが省略されているものがあり、カテゴリの取得に不具合が生じるのを発見しました。そのため、省略されている場合にも対応しました。(この場合は、著者は「不明」になります。)
この不具合は、11/1の修正によるものか、それ以前からのものかは不明です。
なまず避難セット2 ― 2005年11月02日 16時01分11秒
ブログに無料アクセスカウンタ付けました ― 2005年11月02日 17時29分52秒
Re: HEAD: query="" の時の処理 ― 2005年11月02日 19時00分23秒
* テンプレートの <input type="checkbox" name="idxname"> の checked を削除する条件を変更しました。
stable-2-0 と同じようにQUERY_STRING の値をチェックするように修正しました。
(HEAD のみ)
stable-2-0 と同じようにQUERY_STRING の値をチェックするように修正しました。
(HEAD のみ)
Re: URI属性値のセミコロン記号 ― 2005年11月03日 02時50分11秒
フォームの項目区切りに「&」の代用としての「;」をサポートする修正をstable-2-0 にも行いました。
最近のコメント