[mew-win32 04261] [test]GDS for Mew.
Shuichi KITAGUCHI
ki at example.com
2005年 6月 12日 (日) 00:23:01 JST
北口です。
まだ超いい加減なものなのですが、Google Desktop Search(以下GDS)をMew
からの検索に利用するRuby script(超テスト版)を書いてみました。
・重要な注意
まだ、とってもいい加減です。
特に、エラーチェックがほとんどないとか、文字コードの扱いが決め打ちとか、
見ると泣けてくると思います。とりあえず、GDSを利用するサンプルぐらいに
考えてくださいませ。
・必要なもの。
- Google Desktop Search
- Ruby 1.8以降
私は One-Click Ruby Installer (http://rubyforge.org/projects/rubyinstaller/)
使ってます。
- 今回作ってるコマンド
http://www.ysnb.net/kit/tmp/2005061102/gdsgrep.rb.gz
・インストール&設定
- gdsgrep.rb をパスの通った場所(Meadow/binあたりが妥当と思う)に入れる。
- Mewの設定を追加(または変更)
(setq mew-prog-vgrep "gdsgrep.rb")
(setq mew-prog-vgrep-opts '("--mew" "-q"))
・データベース作成手順(例)
- コンポーネント登録
> ruby c:\Meadow2.1\bin\gdsgrep.rb -r
(コンポーネントを登録するかと聞かれるので、OKを押す)
- インデックス登録
> ruby c:\Meadow2.1\bin\gdsgrep.rb -i d:\home\kit\Mail\mew\dist\y2005 -v
(ディレクトリ以下の、全て数字のファイル名が登録されます。なお、すぐに
データベースに登録されるのではなく、少し待つと登録されるような感じです)
- コンポーネント登録解除
> ruby c:\Meadow2.1\bin\gdsgrep.rb -u
・検索(例)
- Mewを起動
- 'g' で +mew/dist/y2005 へ移動
- C-u / でgrepしつつvirtual mode作成
・諸々
- エラーチェックはほとんどありません。指定には注意してください。
- 文字コードは、SJIS(決め打ち)に変換してから登録しています。
- メールの解析は、mailreadモジュールがやってくれる簡易なものだけです。
- 登録行数、検索数等、細かい部分は固定です。必要に応じ適当に増やして
ください。
↑ここまでは、そのうちに直す予定です。
- インデックス作成時は一旦COMのコンポーネントの登録をやりますので、解除を
忘れずにやりましょう。
- GDSの検索自体は、HTTP+XMLなのでelispでも組めると思います(検索用キーの
取得にレジストリから値を取ってくる必要があるのですが、Meadowにはレジ
ストリ取得用APIがありますし)。
- GDSは登録や検索に使えるキーが少なくて割と悲しいです。なので結果を取得
してから必要なものをフィルタする必要があって、この処理に結構時間を食わ
れてます。
- 拡張子なしのファイルが大量に登録されるので、本来のGDSから扱いにくいも
のが大量に増えて悲しくなります。せめてパス名でフィルタして検索できれば...
--
Shuichi Kitaguchi // kit at example.com / ki at example.com
Mew-win32 メーリングリストの案内