namazu と w3m のコンビで、パーソナル全文検索データベースが簡単に作れます。データベースを更新するスクリプト updatenmz と検索用のスクリプト mynmz を作成するだけです。
まず、スクリプトを納める ~/bin 、文書を納める ~/mydoc 、namazu が作成するインデックスを納める ~/myindex の3つのディレクトリーを作成します。
$ mkdir ~/bin ~/mydoc ~/myindex
~/bin ディレクトリーのスクリプトをどのカレント・ワーキング・ディレクトリーからでも実行できるようにパスを通しておきます。
$ PATH=$PATH:~/bin
次に、namazu のインデックスを作成するスクリプト updatenmz を~/bin ディレクトリーに作成します。updatenmz の中身は次のようになります。また、chmod 755 updatenmz でパーミッションを実行可能にしておきます。
#!/bin/sh exec mknmz -O ~/myindex ~/mydoc
namazu で検索するスクリプト mynmz も ~/bin ディレクトリーに作成します。このファイルも、chmod 755 mynmz でパーミッションを実行可能にします。
#!/bin/sh exec namazu -h $@ ~/myindex | w3m -T text/html
準備ができたら、~/mydoc ディレクトリーに、適当に文書をコピーします。mknmz でインデックスを作ることのできる文書は、拡張子で認識されます。ここでは、テキストファイルは hoge.txt のように、.txt をファイル名の最期につけます。HTML文書の場合は hoge.html のようにします。その他色々な形式のファイルを指定できますが、詳しくは Namazu のホームページ を参照してください。次に、インデックスファイルを作成するために、コマンドラインから updatenmz を起動します。
$ updatenmz
これだけで準備 OK です。次のように mynmz で検索すると、w3m が立ち上がり、検索結果と元の文書へのリンクを表示します。
$ mynmz アイディア
これだけでは1件から20件目までの文書しか表示されません。全ての検索結果を表示させるためには -a コマンドラインオプションを使います。
$ mynmz -a アイディア
検索結果を11件目から10件表示させたいときは、-w オプションと -n オプションを使って次のように入力します。
$ mynmz -w 10 -n 10 アイディア
簡単でしょう。
mynmz は lynx を使っても作れます。
#!/bin/sh namazu -h $@ ~/myindex > ~/.mynmz.html exec lynx ~/.mynmz.html