トップ «前の日記(2005-08-06) 最新 次の日記(2005-08-08)» 編集

Public Diary

For antenna, use RSS(RDF) or LIRS.


2005-08-07

tDiary Namazu による日記内全文検索

日記内の全文検索を復活させました。はてなダイアリー版との統合も間近です。

作業内容

1) squeeze.rb で、tDiaryデータのhtml版を作成

namazuは、独自フォーマットに対応していない(対応させたいなぁ)ので、HTMLに変換させてインデックスを作成する必要があります。HTMLの書き出しは squeeze.rb (tDiary標準) を使います。

shell> cd ~/tdiary
shell> mkdir -p cache/html/
shell> /usr/bin/ruby misc/plugin/squeeze.rb cache/html/
2) mknmz でインデックスを作成
shell> mkdir namazu/
shell> /usr/bin/mknmz -k -O namazu/ cache/html/
3) .namazurc を設置
shell> cat > .namazurc
Index    ~/tdiary/namazu/
Template ~/tdiary/namazu/
Replace  ~/tdiary/cache/html/(\d+)/(\d+) http://diary/?date=\1\2
Lang     ja
^D
4) namazu.cgi を設置
shell> cp /usr/lib/cgi-bin/namazu.cgi .
5) プラグインを有効にする

tdiary で search_form.rb と squeeze.rb を有効に。

今後の課題

個人的に、tDiary独自のデータフォーマット、tDiaryのキャッシュに加えて、さらに namazu 用のインデックス、ということで3種類のほぼ同じファイルができあがっているのが気に入りません。前者2つはしょうがないとしても、namazuのインデックスを作るだけのためにhtmlを新たに書き出すのはあまり好きではないので、なんとかしたいものです。

  • namazu のハック
  • HTML を一時的に書き出すかパイプの活用


1980|03|
1986|04|
1998|04|
2002|01|11|
2003|03|04|05|07|08|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|02|03|04|06|07|08|11|12|
2008|01|02|03|04|06|07|08|09|