namazu-ml(avocado)


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

Re: How to index updated files



Kenji Suzuki <kenji@xxxxxxxxxxxxxxxx> wrote:

>> Namazuの説明書にも「インデックスは追加のみ可能」と書かれていますが、対象
>> ディレクトリの中の一部のファイルだけ中身が更新されている場合は、全部をや
>> り直すしかないのでしょうか?
>
>現状ではそうですね.

確かにその通りです。文書の更新に合わせたインデックスのアップデート
は以前から方法だけは決まっていて

[namazu:00027] Plan for Namazu next version では

| (前略)
| NMZ.i に『日付』を記録するのは効率が悪いので、 NMZ.d などとして別
| に保存した方が良さそうです。そして、日付でソートする必要があった時
| はこれを参照するという具合いです。
| 
| さらに、この NMZ.d の値が -1 だった場合はその『ファイル ID』は「欠
| 番」として扱うという利用方法も考えられます。つまり、インデックスか
| ら特定のファイルの登録を削除したい場合は NMZ.d の該当部分を -1 に
| 書き替えて、 NMZ.r からそのファイルの名前を削除するだけで完了する
| わけです。
| 
| ただし、これを繰り返していくとインデックスが穴だらけになってくるの
| で、この穴をつめるツールを別に用意する必要がでてきます。まあこれは
| 一度全体をインデックスしなおせば良いので穴をつめるツールをわざわざ
| 用意しなくてもいいかもしれません。
| 
| # この「欠番」のアイディアは HP (Hewlett-Packard) のある方から頂き
| # ました。
| (後略)

と書いています。ようするに欠番の情報を記録するファイルを用意して、
検索時にそれを参照して欠番だったら結果表示に出さないという単純な仕
組みです。

文書の更新に対応する場合はその文書の登録を欠番にして、新しい情報を
追加するという方法を取ります。古い方の情報も残ってしまいますが、欠
番になっているので検索結果には表示されません。

…というわけで、実装は割に手軽と思われるので、 v1.2.1.x の次の版で
実現しようと考えています。気長にお待ちください。

-- Satoru Takabayashi