namazu-ml(ring)


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

module for document loading



高林です

良いアイディアを思いつきました。忘れないうちにメモしておきま
す。野首さんと広瀬さんからヒントをもらいました。

ご意見歓迎です。


文書読み込み用モジュールの実装

現状の

  %HELPER_PROGRAMS = (
      'gz'  => 'zcat',
      'Z'   => 'zcat',
      'man' => 'groff -man ',
  );

の枠組みでは文書の読み込みに使えるフィルタが限られています。
そこで、文書読み込み専用のモジュールを作ろうと思います。

ようするに引数としてファイル名あるいは URLを渡すとそれぞれ拡
張子やプロトコルに応じてあれこれ処理して結果をテキストで返し
てくれるモジュールです。

たとえば http://foo.bar.jp/foobar.html なら lynx -source す
るとか、 *.pdf なら pdf2txt[*1]、*.doc なら MSWordView [*2]
を呼び出して処理してもらう、といった働きをします。

つまり、そのモジュールを拡張すればどんなファイル、URLでもイ
ンデックスできるわけです。拡張を容易にするためにきちんと API 
を設計する必要があります。

# lib/filter.pl の方も見直して拡張しやすい API にしよう


References

  1. pdf2txt
     <ftp://paprika.noc.intec.co.jp/pub/person/ishida/freeware/pdf2txt>
  2.  MSWordView
     <http://www.csn.ul.ie/~caolan/docs/MSWordView.html>


p.s.

Namazu は v1.x は v1.4 でおしまいにして、ゼロから v2.0 を作
り直す予定でしたが、 v2.0 と平行してしばらく v1.x の開発を続
けることにします。主に mknmz を改良するつもりです。

-- Satoru Takabayashi