# 履歴 # '+': 新規仕様 # '?': 試験的仕様 # '-': 仕様の削除 # '*': 本体以外の仕様 # '!': 修正 # 2002.11.16 # ! 結果の文字コードとヘッダの charset 指定が一致しないことが # あったのを修正 (Thanks to 岡田憲己さん) # + NMZ.head.* が XHTML の場合でも、それなりに動くようになった # (Thanks to 岡田憲己さん) # ! 出力結果に意味不明のタグが出ることがあったのを修正 # (Thanks to 岡田憲己さん) # 2002.09.21 # ! 複数インデックスを検索して、NMZ.format.ja を使用した際に、 # 表示範囲 (xx 件 - yy 件) の計算がおかしかったのを修正 # + --no-reference オプションを実装 (Thanks to 野田欣宏さん) # * tiny_mknmz.cgi が、hns の board.txt を読むようにした # * tiny_mknmz.cgi が、hns の GRP 指定したセクションをインデックス # に含めないようにした # ! grep 機能において、日記ファイル (*.hnf) で GRP を見つけたら、 # それ以降を読まないようにした # ! replace がうまく動かないことがあったのを修正 # (Thanks to Hiroto TANOUE さん) # ! 出力の html 文法エラー、typo など修正 (Thanks to 岡田憲己さん) # * tiny_mknmz.cgi で、対象から外すディレクトリを # 設定できるようにした (Thanks to KONNO さん) # + 携帯電話モードでは、カタカナを X0201 に変換できるようにした # 2002.03.27 # ! NMZ.format.ja の中の説明について、typo を修正、および、 # 役立つコメントを追加 (hiro さん Thanks) # + NMZ.format.ja で eval が使えるようにした # + NMZ.format.ja で使える変数を追加 # 2002.03.23 # + NMZ.format の変数として、検索時間、日時を出力できるようにした # + NMZ.result に ${field::noescape} と書くと、gt, lt, amp, quot # の escape をしないようにした (Thanks to 北川風太さん) # + title の書き換えが、pconfig.pl または設定ファイルで # できるようになった。(Thanks to 岸田祐和さん) # * nmz-qfield.pl というツールを同梱 # + NMZ.qfield.* というファイルを使い、フィールド検索が少し速くなった # ! 出力の html 文法エラー、typo など修正 (Thanks to NORI さん) # ! NMZ.format をもう少し根気よく探すようにした (Thanks to 鈴森康弘さん) # ! PATH_INFO に SCRIPT_NAME のフルパスがセットされるのは # IIS だけではないらしいので、対応 (Thanks to 新谷円香さん) # 2001.12.01 # ! idxname を指定しない、デフォルトのインデックスを使う方法の # 検索ができなかったのを修正 (hiro さん Thanks) # 2001.11.30 # ! さらなる cross-site scripting 対策 # ! index が見つからない時に、関係ない index を使うことがあったのを修正 # 2001.11.28 # ! replace で \1, \2, ... が使えるようにした (Thanks to 佐久間浩彰さん) # ! IIS の PATH_INFO に SCRIPT_NAME のフルパスがセットされること # があるようなので、対応 (Thanks to Masahiko Sunami さん) # ! cross-site scripting 問題を修正 # 2001.11.03 # ! 出力を search-s に合わせた # * tiny_mknmz.cgi がハイパー日記システムに対応 # 2001.09.03 # * tiny_mknmz.cgi の速度改善、更新処理、時間制限設定 # 2001.08.29 # ! grep 機能にて '<', '>', '"', '&' を含む語がマッチしなかった # のを修正。(Thanks to 永田@福岡大学さん) # ! ${summary::size=XX} を簡易検索機能にも効くようにした # ! $RespTextOrig = 1 のときに、key が # 空文字列だとフォームが出力されない # '<', '>', '"', '&' を含むと、フォームに検索式が表示されない # のを修正 (Thanks to 佐久間浩彰さん) # ! マニュアル中で、v1 用と v2 用が混ざっていた部分を修正 # (Thanks to 上原善哲さん) # + tiny_mknmz.cgi というツールを同梱 # 2001.06.27 # ! print サブルーチンを定義されているときに、最後に undef # を渡すようにした # ! submit=jump の時に、検索結果が 0 件だと、サーバエラーに # なるのを修正 (hiro さん Thanks) # 2001.06.26 # + (ちょっとだけ) wrapper をやりやすくした # + カタカナフレーズモード # + sort パラメータに fstat:NAME と書くと NMZ.fstat.NAME という # ファイルを読むようにした # + ソートして順位が 1 位になった URI に直接飛べるようにした # + (遅ればせながら) tfidf に対応 # + 出力フォーマットに #include と書けるようにした # 2001.06.01 # + hns に ad hoc に対応 # + sort パラメータに +field:FIELDNAME と書くと、score に field # の値を加算するようにした (Thanks to 北川風太さん) # + NMZ.result.* に ${namazu::idxdir} や ${namazu::docid} と # 書けるようにした # + 出力フォーマットを NMZ.format.* で指定できるようにした # 2001.03.09 # * tool2/nmzcheck.pl を同梱。インデックスの文字化け、ftp 転送などに # よるエラーなどをチェックします # * tool2/nmz-mew-summary-fixer.pl を同梱。mew-nmz を使っていて、 # sort や pack したためにデータとインデックスの対応がとれなく # なった状態を修復します # * 「履歴」を namazu.pl から history.txt に移動 # + opmode に 'forward' を新設 # ! grep 機能時に、2 行にまたがるメールヘッダの処理を修正 # ! default の EmphasisTags が namazu と異なっていたのを修正 # (Kenji さん Thanks) # 2000.12.10 # ! Template のディレクトリに NMZ.result.* があると、v1.3 での表示が # うまくいかなかったのを修正 # 2000.11.21 # ! .namazurc の Replace (スペース区切り) が、大文字・小文字を区別 # しないようにした (Thanks to 山下誠二さん) # ! いくつかのオプションを C 言語版に合わせた # 2000.11.11 # ! cgi 動作時に、2 バイト文字でフィールド検索できなかったのを修正 # (Thanks to 山中茂樹さん) # ! .namazurc 中の Template 行の指定ディレクトリからインデックスを # 読もうとしてしまうことがあったのを修正 (Thanks to 山中茂樹さん) # * ツールをいくつか追加 # (namazu-devel-ja#868, namazu-users-ja#1055, 1064, 1067 参照) # ! コマンドラインから --help などとして実行する際、出力文字コード # の判定処理をしないまま表示していたために、ヘルプメッセージが # 文字化けしていたのを修正 (Thanks to 山下誠二さん) # ! --output オプションが無かったのを修正 (Thanks to 山下誠二さん) # ! フィールド検索時に、フィールド名を小文字に変換していなかった # のを修正 # 2000.10.07 # * tool2/ ディレクトリに lnnmz.pl というツールを同梱。html 文書中の # リンクを抜き出して、NMZ.field.link を作ります。 # (Osamu Okano さんの御提供です。Thanks!) # ! 検索結果のキーワード強調表示が、summary にしかなされていなかった。 # タイトルも対象にするように修正 (Thanks to 横山則夫さん) # ! 分かち書きが起きたときに、キーワード強調処理をフレーズ単位にした。 # 今までは単語単位だった (Thanks to 横山則夫さん) # ! 「ヒットしなかったひらがな語は、演算対象としない」仕様を、設定で # 切り替えられるようにした (Thanks to 横山則夫さん) # ! glob を呼ばないようにした (Thanks to Matsuoka Tetsuya さん) # ! 簡易キャッシュが効かないことがあったのを修正 # + NMZ.result.* に ${namazu::idxname} や ${namazu::query} と書ける # ようにした # 2000.09.22 # ! NMZ.head.* 中の {cgi} の置き換えに REQUEST_URI を使っていたが、 # これが無いと置き換えできないので、SCRIPT_NAME を使うようにした # (Thanks to Matsuoka Tetsuya さん) # ! ドキュメント中の記述を「検索クライアント」から「検索プログラム」 # に変更 # 2000.09.16 # ! 複数インデックス検索時に、親ディレクトリで NMZ.head が見つからない # と、各インデックスのディレクトリのものを複数表示してしまうのを修正 # (Thanks to 横山博彦さん) # ! .namazurc の Template 行を読んでいなかったのを修正 # (Thanks to 横山博彦さん) # 2000.09.08 # ! バグ修正 (Thanks to Matsuoka Tetsuya さん) # 2000.08.30 # ! QUERY_STRING が空のときは、NMZ.head.* のデフォルト値を書き換えない # ようにした (Thanks to 田辺晶史さん) # ! subquery が query を上書きしていたのを修正 (Thanks to 田辺晶史さん) # + NMZ.result.* に ${summary::size=XX} と書けるようにした # + user agent が携帯電話のときは、検索文字列を Shift_JIS として # 扱うようにした # 2000.06.19 # * QandA.html を同梱 # + 携帯電話モードを試作 # 2000.06.08 # * 附属ツール bwnmz.pl, tmnmz.pl が動かなくなっていたのを修正 # 2000.05.26 # + 演算子 '-' を新設 # + CGI 動作時の演算モードとして opmode という変数を新設 # + 検索時の制限値を導入 # + namazurc の EmphasisTags に対応したつもり (いいかげん) # ! Replace\t が、最後のものしか有効でなかったのを修正 # (Thanks to 良井竜さん) # ! ドキュメントの不備を修正 # (Thanks to 本橋誠司さん、小関吉則さん) # ! NMZ.head などを読むときに、nkf -Z1 相当の処理をしていたのをやめた # ! 検索文字列を EUC-JP 以外で送信するブラウザから、複数インデックス # を検索したときなどに、文字化けするケースがあったのを修正 # (Thanks to 本橋誠司さん) # 2000.05.21 # ! Win 上のサーバで CGI として動かなかったのを修正 # (Thanks to 横山博彦さん) # 2000.05.18 # ! 前方一致検索に失敗することがあったのを修正 # 2000.05.17 # ! META タグを挿入して、文字コードを明示するようにし、CGI 動作時の # デフォルト出力コードを ISO-2022-JP に戻した # (Thanks to 横山博彦さん) # ! Win 版からインデックスを持ってくると、編集などによって、 # NMZ.{head,body,..}.ja の文字コードが Shift_JIS になったり、 # 混在しがちになることに対応 (Thanks to 横山博彦さん) # ! namazurc が複数見つかるときの優先順位が好ましくなかったのを修正 # (Thanks to 横山博彦さん) # ! NMZ.result について、必ず英語のものが使われていたのを修正 # (Thanks to 横山博彦さん) # ! replace を設定した状態で、+field:uri がうまくいかないことがあった # のを修正 # 2000.05.08 # ! 簡易要約機能が有効になっていないと grep 機能が働かなかったのを修正 # ! NMZ.[ms]i? が無いときの後方・部分一致検索の動作を、本家と同じに # した(わかち書きをやめた)。また、簡易キャッシュを有効にした。 # ! 複数インデックス検索時に、NMZ.{head,foot}.* をもう少し根気よく # 探すようにした (Thanks to 小関吉則さん) # ! 正規表現検索が、うまくいかないことがあったのを修正 # + pnamazu 用の NMZ.tips.ja, NMZ.body.ja を同梱 # + HTTP_ACCEPT_LANGUAGE を見るようにした。 # ! 仕様の整理、バグ修正など # 2000.02.12 # + cgiwrap 対策 (Thanks to 田辺晶史さん) # - makepnmz.pl で 'nofield' を廃止した (Thanks to 小関吉則さん) # ! v1.3 形式の検索ができなくなっていたのを修正 (Thanks to 鶴岡英二さん) # 1999.12.07 # ! コマンドラインで veryshort の出力を修正 # + 要約を検索時に作成するときに、grep 的動作もできるようにした # + インデックスより古い簡易キャッシュファイルは作りなおすようにした # * nmzidx.pl の仕様検討中 # -> 検索クライアント自作のためのサンプル search.pl を添付 # 1999.11.01 # + v2 形式に対応 (自動判別) # 1999.07.04 # + 要約を検索時に作成することもできるようにした # ! フレーズ検索に失敗することがあったのを修正 # 1999.05.11 # ! 1 文字のみの中間/後方一致は、正規表現で検索するようにした。 # + タイムスタンプ検索 # 1999.04.06 # ! フィールド検索に "..." を使うパターン (+date:"Mar" など) が # うまくいかなかったのを修正 # ! わかち書きができないケースがあったのを修正 # 1999.03.09 # ! わかち書きができなかったときに、エラー終了するバグを修正 # ! 複数データベース検索でフィールド/正規表現のキャッシュが有効の # ときに、キャッシュが他のデータベースに効いてしまうバグを修正 # * url を "mailto:MlAdrs@domain?body=#get XXX" に変更するスクリプト # fmlget.pl を添付 # * 13to14.pl で、NMZ.{keys|total} を更新するようにバグ修正 # 1999.03.02 # + 簡易 cache 機能 # + v1.4 形式に対応 (自動判別) # * nmztxt.pl も v1.4 形式に対応 (自動判別) # * v1.3 形式を v1.4 形式に変換するスクリプト 13to14.pl を添付 # * HREF の中身を "news:..." の置き換えるスクリプト msgid.pl を添付 # * 最近 n 日以内に更新したファイルの要約に文字列を付加するスクリプト # addnew.pl を添付 # * kwnmz.pl で、キーワードの評価がおかしかったのを修正 # 1998.12.16 # ! 一度に 2byte 文字列の正規表現検索を 2 つ以上しようとすると、 # 2 つ目以降が見つからないバグを修正 # * nmztxt.pl が異様にメモリを喰うのを修正 # * nmztxt.pl が、NMZ.field.* を .BAK, .BAK.BAK … と増殖させてしまう # 不具合を、塩崎@ascii さんのパッチによって修正 # * kwnmz.pl で、キーワードを EUC でセーブしていたのを修正 # 1998.11.20 # ! and 検索ができないケースがあった # * nmztxt.pl を使う際、他にも db.pl などを require しなければならなかった # のを改め、nmztxt.pl だけ require すればよいようにした。 # * gcnmz.pl は、本家の src/ に昇格することになった。 # * nmztxt.pl を使ったサンプルとして、gcnmz.pl に代わり、 # 要約にキーワードを追加するスクリプト kwnmz.pl を添付 # + subquery 対応 # + 森本@イマジカさんのパッチをもとに、文書の存在するディレクトリ # へもリンクできるようにした # ! 村下@池上通信機さんのパッチをもとに、LANGUAGE 関連の設定を # v1.3.0.0 的にした # + [1][2]... の前後に [prev] [next] のリンクをつけた # 1998.10.01 # + field 検索に対応 # * データベースファイルを、テキストファイルと相互変換する # サブルーチン群 nmztxt.pl を作った # * nmztxt.pl を使ったサンプルとして、データベースのゴミ掃除をする # スクリプト gcnmz.pl を添付 (v1.3.* 以降用) # + 正規表現の変換処理を、かなりマシにした # - 正規表現検索に NMZ.(m|s)i? を使うのをやめた # + NMZ.w が無くても、正規表現/後方/中間一致検索ができるようになった # (NMZ.i, NMZ.ii を使う -> ただし、遅い) # ! 環境変数 NAMAZUCONF & NAMAZUCONFPATH を読んでいなかったのを修正 # + POST Method でも検索できるようにした # ! 初期状態でリモートアクセスを無効にしたつもりが、なっていなかった。 # ($RemoteEnable という変数は用意していたが、用意しただけだった) # - kakasi を呼ぶのをやめた (常に内蔵のわかち書きを使う) # 1998.08.31 # + NMZ.w を使っても、後方/中間一致検索ができるようになった # ? dbname=http:// とすると、他の host へ検索結果を聞きに行くようにした # 1998.07.30 # + 複数の dbname に対応 # + タイムスタンプを記録した 'NMZ.t' というファイルがあれば、 # 本当の時間ソートができるようにした。 # * そのためのデータベース作成スクリプト 'tmnmz.pl' 添付 # 1998.06.23 # ! 正規表現検索を同時に 2 つ以上したときの、参考ヒット数が間違って # いたのを修正。 # ! 正規表現検索が、ちょっとだけ高速になったかも # + .ja や .en といった言語指定 suffix のついたファイルを読むようにした # ! コマンドラインでの引数を v1.2 以降の順序で読めるようにした。 # 1998.06.17 # * wakati.pl < filename ができなかったのを修正 # + 村下@池上通信機さんのパッチをもとに、LANGUAGE および veryshort # に対応 # ? 正規表現に対応した。 # 2 バイト文字列はコンバートする # NMZ.w があれば、それを使う # + フレーズ検索対応 # 1998.05.14 # * サブルーチンを流用して、わかち書きスクリプト (wakati.pl) および、 # そのためのデータベース作成スクリプト (wktndx.pl) を作った # ! wsearch.pl の中で unsignedcmp を使っていたが、ここでの比較は、 # 1 バイト文字同士または 2 バイト文字同士だから、実は単純な cmp # でよいのではないか、と思い、unsignedcmp を使わないようにした # これで問題なければ、ちょっと速くなるかも # 1998.05.06 # ! 圧縮したデータベースが読めなくなっていたのを修正 # - カタカナ語の中間一致検索を廃止 # + 1 バイト文字列の後方/中間一致検索ができるようにした # * 中間一致検索用データベース作成スクリプトを統一 (bwnmz.pl) # 1998.04.27 (proto) # + 前方/中間/後方一致の展開結果を表示するようにした。 # ! バグ修正 # ? 一定時間経過したら、renice で priority を下げられるようにしてみた # * NMZ.m の効率を少し上げた (mbnmz.pl) # ! 細かい改良 # 1998.04.21 (proto) # ? 2 バイト文字列の後方/中間一致検索ができるようにした # * そのためのデータベース作成スクリプト 'mbnmz.pl' 添付 # 1998.04.17 # ! 検索結果が 0 件でも 1 件と表示されていたのを修正 # 1998.04.16 # ! 前方一致検索ができなくなっていたのを修正 # ! 単語分解がうまくいかないケースがあったのを修正 # ? ひらがな語の扱いを見直し # ? カタカナ語に限り、中間一致検索ができるようにした # * そのためのデータベース作成スクリプト 'ktnmz.pl' 添付 # 1998.04.09 # + NMZ.(be|le) に対応した。 # * それによって普通に使う分には設定を変更する必要は無くなったこと # に伴い、配付ディレクトリ構造などを見直し # ! ちょっとバグ修正 # * 大幅にドキュメント充実 # + NMZ.slog を残すようにした # 1998.03.25 # + 村下@池上通信機さんのパッチをもとに、コマンドライン # から使えるようにした # ? namazu.conf で指定されていれば kakasi を呼べるようにしてみた # ? ソースを分割した # * マージツール (makepnmz.pl) を作成 # 1998.03.16 # + 検索式が使えるようになった # + 圧縮したデータベースが使えるようになった # ! 全体的にコード見直し # 1998.03.06 # + 要約表示の ON/OFF を切り換えられるようにした # + NMZ.lock を見るようにした。 # ! 前方一致検索のバグを直した # ! 大文字小文字が区別されていたのを直した # ! 複合語処理は日本語のみに適用するようにした # ! 整数のタイプを変数にした # ! その他、細かいバグ修正 # + 村下@池上通信機さんのパッチをもとに、表示件数指定 # および dbname 指定をできるようにした。 # 1998.03.04 # + 初版