ChangeLog for Namazu このファイルは Namazu の変更履歴を記述しています。前のヴァー ジョンからの主な変更点は manual.html#VERSIONDIFF に説明してあ ります。 v1.2.0.1 [07/09/1998] * のように dbname の指定をカンマ区切りで複数指定できるようにしま した (CHECKBOXでも使えます)。 * NMZ.{body,msg} が EUC-JP で出力されるバグを修正 * Win32 と OS/2 の Makefile を新しいものにする (広瀬さん、清水さんによる Makefile です) v1.2.0 [06/22/1998] * (ちょっとあやしい) フレーズ検索を実装しました (古川@ヤマハさんにアイディアをいただきました Thanks!) * 正規表現/中間一致/後方一致の検索を可能としました (Rubyのコードを使わせていただきました、まつもとゆきひろさん Thanks!) * namazu のコマンドライン引数の順序を変えました 現在の % namazu [index dir(s)] "key string" から % namazu "key string" [index dir(s)] のようにキーワードと インデックスの指定の順序が逆になりました。ご注意ください。 * Language の指定を en, ja のようにしました * NMZ.(head|foot|body|msg) はファイル名の末尾に必ず .ja のような言 語指定をつけるようにしました * Language = 'en' のときは mknmz で nkf および KAKASI/ChaSen を使わないようにしました。ゆえに英語環境で も動くと思われます。 * 上記のモードで作ったインデックスは正規表現以外ならおそら く Latin 1 の右半分の文字も使えると思います。 (regex.c は EUC-JP に特化した処理を行っているので) * NMZ.(head|foot|body|msg).[a-z]{2} を mknmz から切り放し て LIBDIR に置くことにしました。 * 用意すれば NMZ.(head|foot|body|msg).[a-z]{2} が使えるようにしま した。やろうとと思えば のようにして言語を選択することもできます。 * 英語のドキュメントをつけてみました。まだまだ不十分なので 順次充実させていく予定です。 * 要約の中に罫線や '=========' のような無意味な文字列ができるだけ 含まれないようにしました (古川@ヤマハさんがコードをくださいました Thanks!) * TABLE要素の summary属性 や title属性を取り出してインデックス処理 するようにしました * wdnmz に NMZ.ii を使ってアクセスする -i オプションをつけました * インデックス中の URLを変換するプログラム clnmz を同梱しました (NMZ.f の中の URL部分を書き替えて NMZ.fi の整合も取ります) 行われていなかったバグを修正 * mknmz に -P オプションを追加しました -P: フレーズ検索用のインデックスを作成しない * mknmz に -R オプションを追加しました -R: 正規表現検索用のインデックスを作成しない * mknmz.pl を use strict にした * FastCGIの対応をやめました * HTMLの扱いをいくつか修正しました (石川@W3Cさんがコードをくださいました Thanks!) * Win32で URL の置き換えがうまくいかなかったバグを修正 (広瀬@NECエンジアリングさんご指摘ありがとうございます) * NMZ.lock が無視されていたバグを修正 v1.1.2.5 [06/11/1998] * NMZ.lock が無視されていたバグを修正 * 複数のインデックスを指定したときに
の中の dbname の継承が 行われていなかったバグを修正 v1.1.2.4 [05/27/1998] * mknmz に URLの encode をしない -U オプションを追加 (林@農林水産研究情報センターさんご意見ありがとうございます) * Tf Idfの計算に失敗していたバグを修正 * Win32 でドライヴが小文字の時に URL がおかしくなるバグを修正 (広瀬@NECエンジアリングさんご指摘ありがとうございます) v1.1.2.3 [05/20/1998] * namazu のコマンドラインオプションを -ahs のように一括指定できる ようにしました (もっと早くすれば良かった :-)) * make install から CGI のインストールを外して make install_cgi と別にしました。 * コマンドラインから namazu を実行したときに NMZ.slog のホストの欄 に LOCALHOST と記録することにしました。 (村下@池上通信機さんご意見ありがとうございます) * mknmz 実行中に NMZ.lock2 を置いてロックをかけることにしました * mknmz でループしたシンボリックリンクを検出するようにしました * mknmz でインデックスの追加ができなかった不具合を修正 (古川@ヤマハさんご報告ありがとうございます Thanks!) * dbname=foo で指定したときに NMZ.body が正しく読み込まれ ていなかったバグを修正 (やまだあきらさんご指摘ありがとうございます) * uuencode_filter の修正 (加藤@NTT DATA通信さん、古川@ヤマハさん Thanks!) * OS/2用の Makefile の不具合を修正 * mknmz -F オプションでインデックスを追加したときのバグを修正しま した。 (加藤裕史@NTT DATA通信さんご指摘ありがとうございます) * 複数のインデックスに検索をかけたときに前方一致検索ができなかった 不具合を修正。 (杉田@北大図書館さんご指摘ありがとうございます) * namazu の中で chdir(), getcwd() を一切使わないようにしました v1.1.2.2 [05/08/1998] * tf idf法を実装 (Makefileおよび .namzurc, コマンドラインから指 定できます) * 送り仮名の削除をするオプション -G をmknmz に追加 (古川@ヤマハさんのコードを元にしています Thanks!) * 両端の記号を削除をするオプション -E を mknmz に追加 (古川@ヤマハさんのコードを元にしています Thanks!) * ロボットよけされているファイルを除外するオプション -e を追加 (現在は のみ対応) * に対応しました * インデックス済ファイルの登録 (NMZ.r) をフルパスで記録することに しました * 出力する HTML を 4.0 Strict DTD に変更 * 年月日の表記を [04/25/1998] のようにした (Y2K problem) * NMZ.log の日付が gmtime だったのを localtime に変更 * HTMLタグの除去の処理を修正 (mknmz.pl) * dbname=foo で指定したときに NMZ.foot が読み込まれていなかったバ グを修正 (村田@牧丘町立病院内科さんご指摘ありがとうございます) * -C のメッセージに無意味な WAKATI_TMP が残っていたので削除 (v1.1.2.1 で直したつもりだったんだけど) * Makefile.OS2 が uuencode されたままだったのを修正 v1.1.2.1 [04/22/1998] * ${HOME}/.namazurc を参照するようにしました * 検索結果を単純なリスト表示にする -S オプションを追加 * いいかげんな man 用のフィルタを作成 (man_filter) *   を考慮するようにしました * -C のメッセージに無意味な WAKATI_TMP が残っていたので削除 * namazu.conf 中の WAKACHI を WAKATI に変更しました * Makefile中の parser.c の typo を paeser.o に修正 v1.1.2 [03/31/1998] * 複数のインデックスを検索できるようにしました * バイトオーダの違いを吸収するようにしました NMZ.le がれば little-endian なインデックス NMZ.be がれば big-endian なインデックスと判断する * インデックスのバイトオーダを変換するツールを作りました (rvnmz.pl) * Perl 版の検索クライントを contrib に収録しました (古川@ヤマハさん、村下@池上通信機さんが作ってくださいました Thanks!) * Tcl/Tk による GUI な検索ツールを contrib に収録しました (広瀬@NECエンジアリングさんが作ってくださいました Thanks!) * Java による GUI な検索ツールを contrib に収録しました (まつむらのぞみさんが作ってくださいました Thanks!) * メッセージを日本語/英語で選べるようにしました (森本@立命館大学さんに協力して頂きました Thanks!) * mknmz にファイルのリストを渡せるようにしました * インデックスを出力するディレクトリを指定するオプション -O を mknmz につけました (広瀬@NECエンジアリングさんに元となるコードを頂きました Thanks!) * WAKACHI -> WAKATI に表記を統一しました * $PROTOCOL を $URL_PREFIX に名前を変更しました v1.1.1.5 [03/09/1998] * OS/2 でドライヴの扱いに問題があった点を修正しました (清水@住友林業さんがパッチを作成してくださりました Thanks!) * NMZ.lock のロック機構が働いていなかったバグを修正 (Kenji@INSEKI さんご報告ありがとうございました) * 再帰下降パーザの括弧の扱いを修正 (閉じ括弧と開き括弧が連続している時に問題がありました。 たとえば "( foo ) ( bar )" のようなもの) v1.1.1.4 [03/02/1998] * namazu で日本語分解の際にテンポラリファイルを作らないようにしま した * Win32 用の Makefile (Makefile.W32) を添付しました (広瀬@NECエンジアリングさんが作成してくださりました Thanks!) * OS/2 でドライヴの扱いに問題があった点を修正しました (清水@住友林業さんがパッチを作成してくださりました Thanks!) v1.1.1.3 [02/27/1998] * OS/2 に対応しました (清水@住友林業さんがパッチを作成してくださいました Thanks!) * 環境変数 NAMAZUCONFPATH で namazu.conf のパスを指定できるように しました (清水@住友林業さんがパッチを作成してくださいました Thanks!) * .shtml, .phtml, .html.en, .html.ja といったファイルも HTML とし て扱うようにしました (小島@龍谷大学さんご指摘ありがとうございます) * wdnmz の出力を Win32, OS/2 のときは SJIS にしました (広瀬@NECエンジアリングさんご指摘ありがとうございます) * SunOS4 + Perl5.003 の環境でインデックスの更新がおかしくなる問題 を対処しました (日本語の文字列の比較が正しく行われない) (加藤@NTTDATA通信さん、古川@ヤマハさんご助言ありがとうございます) v1.1.1.2 [02/21/1998] * Makefile の DENY_FILES の指定で '#' の変わりに \\x23 で誤魔化す ことにした (古川@ヤマハさんご意見ありがとうございます) * MHonArc のファイルの扱いのバグを修正 (馬場@京大さんご指摘ありがとうございます) * URLに含まれる危険文字のエスケープ処理を修正 (森本@IMAGICAさんご指摘ありがとうございます) * DENY_FILES, TARGET_FILES の指定の正規表現の問題を修正 (國頭@東大さんご指摘ありがとうございます) * NMZ.head の出力で dbname に SELECTED をつける部分のバグ修正 (高山@NECソフトウェアさんパッチありがとうございます) * コマンドラインから実行したときに URL をデコードするはずだったの が実はしていなかったという不具合を修正 v1.1.1.1 [02/16/1998] * 検索結果をファイルに出力するオプション -o を namazu に追加 * ユーザ定義の設定などをまとめたファイルをインクルードするオプショ ン -I を mknmz に追加 (柴田(ひ)@福岡さんにご意見を頂きました Thanks!) * mknmz.pl の cp() で binmode を設定し忘れていた問題を修正 (Win32 の時だけ問題が起こりました) * srnmz.c の usage 文字列中の行末エスケープを修正 (gcc では問題なくコンパイルできてしまいますが) * Makefile の DENY_FILES の指定で '#' 記号を使うのをやめる (make の種類によってはうまく通らないようなので) (上の二つの問題は大黒@NECさんに報告して頂きました Thanks!) v1.1.1 [02/12/1998] * Mule から使える検索ツール (namazu.el) を同梱しました (まつもとゆきひろさん、やまだあきらさん、馬場肇さん、ありがとう ございました) * コマンドラインから使える検索ツール (bnamazu) を同梱しました (馬場肇さん、ありがとうございました) * NOT 演算 (2項演算子) を実装しました (演算子は ! です) * 演算子 & | ! の代わりに and, or, not でも指定できるようにした * Win32 用のコードを整理しました * GNU-Win32 がなくても Win32 で mknmz が動くようにしました * Win32用パッケージを広瀬さんに用意して頂きました * cp, pwd, date を使わなくしました * namazu.conf でいくつかの設定が行えるようにしました * Makefile を整備しました * インデクサから --WIN32 という実行時のオプションを廃止 * $PROTOCOL をディフォルトで \t にして、 \t の場合はターゲット・ ディレクトリのフルパスを元に設定するようにした。 * gzipped なファイルを扱えるようにした * MIME Multipart の Mail/News から text/plain 以外を除外するフィル タを作成 (元となるコードは古川@ヤマハさんに頂きました Thanks!) * Lynx の lynxcgi で使えるようにした (ドキュメントも用意した) * namazu.cgi だけでなく namazu という実行ファイルも作成するように した * URL 中の危険な文字をそれなりに encode するようにした * ディフォルトで MHonArc のファイルを扱うようにした (注意) * 結果表示の際に URL の置き換えをするための設定 "REPLACE" を namazu.conf にいれた * 結果表示の際に を出力するような設定 "BASE" を namazu.conf にいれた * テキストファイルの場合はパスからもキーワードを作るようにした * namazu.conf を指定するオプション -f を namazu につけた * コマンドラインから実行したとき、ディフォルトでは検索結果に ...
を表示しないようにした * コマンドラインから実行したとき、ディフォルトでは検索結果に [1] [2] [3]... といった無意味なリンクを表示しないようにした *
...
を強制表示させるオプション -F を namazu につけた * 先の検索結果を表示しないオプション -H を namazu につけた * コンフィギュレーション内容を表示するオプション -C を namazu につ けた * plain text の時に URL encode をデコードしないオプション -U をつけ た * RFC フィルタをちょっと修正 (あいかわらず ad hoc) * mailnews_citation_filter をちょっと修正 * 検索結果の HTML でヒット数の部分を で囲むようにした * $weighted_str をわかち書きするのを忘れていた重大なバグを修正 * 記号を含む単語の処理のバグを修正 * 行末の日本語連結処理を行の長さが 40bytes 以上の時のみ行うように した * uuencode_filter のバグ修正 (by古川@ヤマハさん Thanks!) * に改行コードが含まれていたときに検索結果の 表示で score の位置がずれてしまう不具合を修正 * Makefile 中の KAKASI, ChaSen のパスが srnmz.c に反映されていなかっ た不具合を修正 v1.1.0a [12/22/1997] * 省略できるファイル名の処理のバグを修正 (若林進@NTTさんご報告ありがとうございました) v1.1.0 [12/21/1997] * FastCGI へ対応しました (くわしくは manual.html を) * Makefile を作成しました (くわしくは manual.html を) (佐藤文優@cij.co.jp さんが原型を作ってくださいました) * Mail/News の要約をもう少し工夫しました (冒頭の名乗り出る部分や引用の部分をできるだけ要約に入れないよう にとの改良です。やまだあきらさんのアイディアを頂きました) * Win32 でコマンドラインから実行したときにメッセージを SJIS で 表示するようにしました * RFC 用の要約作成の機能をつけました (セコイけど) * Mail/News, MHonArc, HTML, RFC などのそれぞれのフィルタ処理をサブ ルーチンにすっきりまとめました * mknmz.pl を Perl5 風に書き替えました (まだまだだけど) (今頃になってやっと Perl5 の本を手に入れたという…) * mknmz.pl は細かい部分をいたるところリファインしました * uuencode の除外コードを修正 (微妙に仕様の違いがあるらしい) * 単語登録の部分に微妙な不具合をみつけたので修正しました * ファイルに漢字が含まれない場合はわかち書き処理しないようにした * 省略可能なファイル名の処理を修正しました (Kenji@INSEKI さんご報告ありがとうございました) * main() の keystring が初期化されていなかったバグを修正 * NMZ.head のカンマが抜けることがあったバグを修正 * ChangeLog の書式を変えてみました:-) v1.0.4b (patch) [11/20/1997] * Win32 対応用のコードのバグを修正 (広瀬さん (hirose@cp.neec.fc.nec.co.jp) からパッチを頂きました) v1.0.4a (patch) [11/14/1997] * ChaSen を用いる場合に小さなバグがあったのを修正 * mergesort() という関数名が衝突することがあるのでリネーム v1.0.4 [11/13/1997] * MHonArc で作成された HTML を処理するための仕掛けを入れた (友清孝志さん、村田@牧丘町立病院内科さんご意見ありがとうございます) * コマンドラインから実行したときに plain text の出力ができるようにした * Windows 95/NT で動作するようにした。ただしかなり大変 (林@富士ファコム制御さんにコードを頂きました。ありがとうございます) * Mail/News のファイルのヘッダ部分をうまく処理するための仕掛けを入れた * インデックス処理の際にファイルを数字を考慮してソートするようにした * BinHex の部分を無視するコードを組み込む (オプション指定) * 連番のファイルを新しい/古い順のソートで検索結果の表示を行えるよ うにした (上の 4 つは古川@ヤマハさんにコードを頂きました) * ファイルが大きすぎるときはスキップするようにした * NMZ.err にエラーの発生したファイルを記録するようにした * 単独の < > の処理をわずかに修正 * mknmz.pl の標準出力への出力をバッファリングしないようにした $|=1 (奥村@名工大さんご意見ありがとうございます) * $Heading に対して &entity_decode() を行うように修正した (春永@UPU さんご報告ありがとうございます) * の行に mailto: がなかった ので修正 v1.0.3 [09/28/1997] * HTML のヘディング () を元にした要約の作成を行うようにした (オプションによって従来通り文書の先頭から作成することも可能) * 日本語のわかち書きに ChaSen も利用できるようにした * ChaSen による品詞情報を利用した処理を行えるようにした (実験段階) * HTML タグを捨てる処理を改良した (manual.html#HTMLTAG 参照) * uuencode の部分を無視するコードを組み込む (オプション指定) (古川@ヤマハさんにコードを頂きました。ありがとうございます) * スコアの重みづけをする部分の効率を改善した (インデックス作成の処理が多少速くなりました) * ChaSen を用いるために 2 bytes 英数字*記号の 1 byte 変換のコード を組み込む (やまだあきらさんに頂きました。ありがとうございます) * ブラウザからの入力に " が含まれていたときの表示の不具合を修正 * 実体参照の復元を少し柔軟にした。 * が二つ以上存在しても大丈夫なようにした * ソースコードの書式を K&R 風に宗派変えした:-) v1.0.2 [09/15/1997] * 日本語、メールを考慮した行頭*行末の処理を行うようにした (古川@ヤマハさんにコードを頂きました。ありがとうございます) * 一部の perl で日本語 EUC が正しくソートされない問題を解決する ルーチンを組み込む (同じく古川@ヤマハさんにコードを頂きました) * インデックス作成の処理をわずかばかり効率化した * インデックス作成の際に処理中のファイルの通し番号を表示するようにした * コマンドラインから実行したときにヒット数が多いと core を吐くバ グを修正 * インデックスを更新すると検索結果に不整合が生じることがあるバグを修正 (千原@アドバンテスト研究所さんご報告ありがとうございます) * 結果表示のソート*ルーチンのバグ修正 (選択整列法はボツにした) v1.0.1 [09/07/1997] * 前方一致検索のバグ修正 (千原@アドバンテスト研究所さんご報告ありがとうございます) * 検索式の入力に < > & が含まれていたときの結果出力の不具合を修正 * 単独の '<', '>' の保護の処理を二重化した * インデックス更新時のファイルの書き換え処理を最後に一括で行うよ うにした (千原@アドバンテスト研究所さんご意見ありがとうございます) * ロック機構を実装した * dbname に渡される文字列に '/' が含まれていたら無効にするようにした v1.0.0 [08/31/1997] * インデックス作成時に実体参照 (named|numberd entity) を復元する ようにした * スコアの重み付けするタグを増やした ( ) * v0.3.3 でつけた nkf -jZ1 のオプションは無意味だと気づき、修正 (出力ではなく読み込む際につけるべきでした) * インデクサの kakasi -Ea -w の '0xa4' バグ吸収処理が無効だったと 気づき、削除 (nkf -eZ1 で読み込んでしまえば関係ないバグだから良しとします) * その他、ソースを読み直して気づいた点をいくつか修正 v0.3.3 [08/28/1997] * インデックス作成のバグ修正 (merge 処理および '0xa4' 吸収処理) * find.pl のシンボリックリンク対応のバグ修正 * アスタリスクの処理を変更 (correcteuc() に統合した) * nkf のオプションを -jZ から -jZ1 に変更 (2 bytes スペース -> 1 byte) v0.3.2 [08/22/1997] * のスコアが変更されていなかったのに気づき、修正 v0.3.1 [08/21/1997] * AND 検索時のスコア計算の方法を変更 ( A と B を比べて小さい方のスコアを採用するようにした) * ブラウザからデータベースを指定できるようにした * NMZ.slog の書式をわずかに変更 (順番を入れ替えた) * ヒットのオーヴァーフローの際の処理を優しくした * のスコアをそれぞれ 1 増やした * バイナリ*ファイルのチェックを 1 % 甘くした * インデックス作成時に処理中のファイルの URL を表示することにした * インデクサに kakasi -Ea -w の '0xa4' バグを吸収させるルーチンを 組み込む * ハッシュテーブル作成ルーチンのバグを修正 * アスタリスクの処理を修正 v0.3.0 [08/18/1997] * アスタリスクの指定による前方一致検索 (e.g. foo*) のサポート * 記号を含めた単語の検索 (e.g. tcp/ip) のサポート * HTML を処理する正規表現のバグを修正 * symbolic link なディレクトリをたどってくれるように find.pl を 改造して内蔵 * インデクサにいろいろ追加していたらインデックスの処理が遅くなっ てしまった * 記号の処理を追加したことが原因で、インデックスのサイズが大きくなった * インデックス作成の途中で強制終了された場合の処理を取り外した * NMZ.log のバグを修正 * NMZ.slog の書式を変更してヒット数と日時が残るようにした (清水@NTTソフトウェア研究所さんご意見ありがとうございます) v0.2.2 [08/15/1997] * が実は処理されていな かったというひどいバグを修正 * find, cat, mv, touch, chmod などを呼び出すのをやめて perl で処理するようにした * NMZ.h の作成にメモリを食いまくるのを修正 * インデックス作成の途中で強制終了された場合の処理を追加 v0.2.1 [08/11/1997] * ヴァージョン番号が変更されていなかったのを修正 * メッセージを一部修正 v0.2.0 [08/11/1997] * 検索範囲絞り込み用ハッシュテーブルを 2 bytes に拡張 * 二度目以降の検索の際に前回の表示件数と出力形式の設定が残るようにした * インデクサにバイナリファイルのチェックをするルーチンを組み込む * インデクサの正規表現を一部修正 * インデクサの変数の使い方を多少分かりやすくした v0.1.4 [08/03/1997] * 検索プログラムのメッセージを一部変更 * mknmz.pl のうっかりミスを修正 * コードを一部変更 v0.1.3 [08/01/1997] * cgiparamget() のバグ修正とページ表示の処理をちょこっと変更 * find の引数に -print を追加する (奥村@九州工業大学さん報告ありがとうございます) v0.1.2 [07/31/1997] * 細かい部分を修正した v0.1.1 [07/29/1997] * 古いパッチをあてた kakasi -Ea -w のときに起こる '0xa4' バグ を吸収するルーチンを srnmz.c に組み込む * mknmz.pl のログ出力の改善 * NMZ.head の自動更新のバグ修正 * NMZ.* の作成場所を実行時のカレントディレクトリに変更 * アンダースコア ('_') もキーワードの文字として求めるようにした * 二度目の検索の際に前回の INPUT が残るようにした * ブラウザから結果表示の件数と出力フォーマットの指定をできるようにした * srnmz.c に検索キーのログを保存するルーチンを組み込む * 登録単語リスト表示用ツール wdnmz.pl を作成 v0.1.0 [07/25/1997] * 最初のテスト版の完成 (馬場@京大さんとやまだあきらさんにテストしていただきました) [07/23/1997] * インデックスの追加をサポートした [07/17/1997] * インデックス作成の際に タグの ALT エレメントを取り出すよ うにした [07/16/1997] * データベースの内部構造を変えて、 AND/OR のマージの効率を改善した。 [07/16/1997] * タグによる重み付けのルールをカスタマイズ可能にした。 [07/16/1997] * に対応した。 [07/15/1997] * 結果表示の際に番号表示を行うようにした。 [07/15/1997] * AND/OR 時のスコア計算を変更した。 (OR のときは A と B を比べて大きいほうを、AND のときは A と B を足す) [07/12/1997] * テンポラリファイルを作成するルーチンをインデクサに組み込み、 巨大なデータソースにも対応できるようにした。 [07/07/1997] * とりあえず動く段階になった [06/30/1997] * コーディング開始