なまず2ndEdition

とりあえず、前回のふざけきった態度を一新し、
今一度我がPCでなまずを飼い馴らしてみようとおもいました。

あ、ちなみに前回なまずに関してなにかやったときから、
すでに二、三回PCの再セットアップをやってるような気がします(;´Д`)

*必要なファイル
まず必要なファイルから

・namazu 今回のメイン。無いと話が進まない
・kakasi 日本語、ローマ字変換系、とのこと。必須
・Perl namazuの機能の一部がPerlで書かれているらしく、必須。

と、いうことでこの三つを用意してください。
で、Windows用のPerlであるActivePerlをインストールするには
MSIというソフトが必要になります。これ、MSが提供してる
インストーラっぽいんですが、何故わざわざこんなのを
用いるのか不明。でもまぁ入れないことには
始まらないのでこれもあわせて落してください。

結局必要なのは

namazu
kakasi
ActivePerl
MSI(Perlのとこからたどってください)

となります。


*インストール
**Perlのインストール
ではまずPerlのインストールから。
Perlをインストールするには前述のようにMSIのインストールが
必要になるのでコレから先にいれまひょ。
つっても、PerlもMSIもインストーラをダボークリックで
おけーなので特に考える必要はないと思います。
で、再起動後、AUTOEXEC.BATにPerlへのパス、たとえば

set PATH=c:\perl\bin

みたいのが追加されているか否か確認してください。

**kakasiのインストール
つぎにkakasiのインストールです。
落してきたファイルを解凍したら、出てきたものを
そのままどこか適当な場所(インストール先にしたいところ)
に移動。その後でAUTOEXEC.BATに

set path=set PATH=%PATH%;C:\program\util\kakasi\bin\;
SET KANWADICTPATH=C:\program\util\kakasi\share\kakasi\kanwadict
SET ITAIJIDICTPATH=C:\program\util\kakasi\share\kakasi\itaijidict

みたいなかんじでパスを追加。
ちなみに"%PATH"ってのは他の行で指定したパスにプラスして、
ってな感じのアレなので、忘れないでください。
これつけわすれるとそれ以前に設定したパスが無効になります。

で、パスを有効にするためにも、ここらで念の為に一回リブート。

**namazuのインストール
で、メインのnamazuです。いろんなドキュメントを読んでみると
こいつはドライブの頭にインストールするのが無難のようですが、
検索ソフト風情(超失礼)がドライブの頭にディレクトリを置くというのは
個人的に非常に嫌なので、今回は敢えて

c:\program\util\namazu

という、何の変てつもないディレクトリにぶち込みました。
あ、ちなみにkakasiも同じくutil以下です。

では、インストール。
namazuを展開してでてきたディレクトリを前述のutil以下に移動。
中に入ってる"NMZSETUP.BAT"を実行〜。

で、途中でなんか聞かれたのでなんとなく[Y]を選択。
その後、読んでねファイルが開かれ、
AUTOEXEC.BATにnamazu関係が追加され終了&再起動。

ちなみにここで「shift押しながら再起動」をやると
環境変数が更新されないので、面倒でもしっかり再起動しましょう > オレ

**確認とその後の設定
***パスの確認
まずパスが通っているか調べるついでにヘルプでもみます
"ファイル名を指定して実行"(面倒なので以下Win+R)やDOS窓などから

namazu --help

などとやってみてください。Win+Rでやるとすぐに窓が消えますが、
「そんなもんねぇぞヽ(`Д´)ノゴルァ」
と言われない限りおっけーです。

***動作確認
で、とりあえず検索に必要なindexファイルをつくってみます。
書式は

mknmz オプション 対象ディレクトリ

となっているので、今回はDOS窓なんかから

mknmz -O C:\namazu\var\namazu\index C:\namazu\share\namazu\doc\

とします。mknmzはindex作成コマンド。-Oは出力先の指定オプションで
続くディレクトリが出力先。お次がindexの作成対象で、
指定したディレクトリ以下の全てのファイルを対象とします。
#後で気づきましたが、これ、あきらかにディレクトリの指定が間違ってます(汗)

で、やってみたんですが、どうです?いけました?
オレはいけませんでした(;´Д`)

Can't locate File/MMagic.pm in @INC 
(@INC contains:C:/program/perl/lib C:/program/perl/site/lib) at 
C:\PROGRAM\UTIL\NAMAZU\BIN/mknmz line 34.
BEGIN failed--compilation aborted at C:\PROGRAM\UTIL\NAMAZU\BIN/mknmz line 34.

とのことで、どうやらMmagic.pmっつーモジュールが見つからんようです。
で、mknmz.plの34行目をみてみたら、たしかに

use File::MMagic;

とあります。で、Perlディレクトリ以下に検索かけてみたのですが、
ねぇよ、そんなの

#その後、namazuディレクトリを覗いていてわかったんですが、
#この後無い無いいって騒いでるアレ、namazuディレクトリのなかに
#ありました ノ(´д`)スンマセン
#というか、素直にC直下に置けば問題なしです(;´Д`)

他のFindとかLocalってのはあったんですが、Mmagicてのはないです。
でもないとこまるのでgoogleで

mmagic pm

で検索したらわっしわっし引っかかりました。
IT万歳ヽ(´ー`)ノいえーい
とおもったら今度は

gettext.plがねぇよ

と言われたので再度探索&ハッケン。
で、もしオレのように"xxがねぇよこのスカポンタン"とか言われたら
(http://cvs.namazu.org/namazu/#dirlist)
で探してみてください。多分ここで見つかると思います。

で、結局その後10個くらいファイル落してエラーメッセージに
したがってちまちまファイル書き直してうんざりレベルが
臨界にに達したところで

mknmz: C:\namazu\var\namazu\index: 無効な出力ディレクトリ指定

のメッセージ。やった!ついにPerl集め終了!
ディレクトリかえたんだからエラー出てあたりまえ!ヽ(´ー`)ノいえーい
ってことで

mknmz -O C:\program\util\namazu\var\namazu\index C:\program\util\namazu\share\namazu\doc\

とやって、わーい成功、とおもったらなにやら「未対応の形式」
といわれて無視されました(ρ_;)ヒドイヨ
つーか、まじでどういうわけでしょう(;´Д`)

で、その後あちこちいじっていやになって、
結局ディレクトリの頭にインストールすることにしました(;´Д`)アホ
と、ここでインストール中にとんでもないことに気がつきました。

オレ、前回セットアップ途中で終わらせてるよ、おい

と、いうのも、NMZSETUPが何の動きもなくぼーっとしてたので
終了したものと思いこみC-cで終わらせてたんですねぇーあはは(;´Д`)あはは

じゃぁもっぺんやってみよー、とおもってやってみたのですが、
やっぱりだめでした(;´Д`)

で、結局ドライブのてっぺんにもってきて万事解決(;´Д`)

***初期設定
namazuとmknmzの設定は/namazu/etc/namazu以下に有る
mknmzrcとnamazurcで行えます。
namazurcのindexファイルあたりを指定しておくと便利かもしれません。

***検索してみる
んじゃぁ検索してみましょう。
検索の仕方は

namazu 検索文字列 対象indexファイル

です。ANDやOR、正規表現もつかえます。
詳しくは(http://search.namazu.org/)をみてください。
また、対象indexファイルを省略した場合は/namazu/var/namazu/index
を対象とします。


*実際に使う
**indexづくり
さて、気を取り直して実際に使用するためのindexでも作ってみます。
つっても、前回のアレと同じです。って、それだけじゃアレなので

-F --target-list=file インデックス対象のファイルのリストを読み込む 
-t --media-type=mtype 対象ファイルの文書形式を指定する 
   --allow=PATTERN  対象ファイル名の正規表現を指定する 
   --deny=PATTERN  除外するファイル名の正規表現を指定する 
   --exclude=PATTERN 除外するパス名の正規表現を指定する 
-a --all すべてのファイルを対象とする

最初に使った-O意外にもこんな感じのオプションがあります。
詳しくは"mknmz --help"コマンドを参照してください。
で、今回は豪快に

mknmz F:\

としてみました。
が、なにやら2MBくらいの物になると大きすぎて読めないとのこと。
が、それはこまる。こっちが読ませたいものの大半は2MB以上なんだから。
が、解決策が早急には思い浮かばないので、
チッこいファイルのほうから処理することにしました。
またindex作成先も変更。
それと、デフォルトではテキストファイルなどを読んでくれないようなので
-aオプションで少々乱暴ながら全部検索対象にします。

mknmz -a -O f:\index f:\ドキュメント\

ちなみに、index作成を強制終了させるとlockファイルを作り出すので
次回作成時にはコレを消してから臨んでください。
まぁちゃんと警告してくれますが。

で、これでうまくいくと思ったのですが、なぜか途中から、
つか、かなり早い段階からHTMLに向かって
未対応だからオマエ無視する
とか抜かしやがります。
ってことで

mknmz -t text/html -O f:\index f:\ドキュメント\

みたいにしてみました。これでtext/htmlは読んでくれるかなー、
とおもってたらどうやらうまい具合に読んでくれたようですヽ(´ー`)ノわーい

**で、サーチ
それじゃぁ実際に検索してみます。
今回は↑で作ったindexに検索かけるので

namazu 検索文字列 f:\index(indexの場所)

とします、が、毎回これは面倒なので前述のnamazurcを書き換えて
indexのデフォルト位置をf:\indexに変更しました。

で、検索したらうまい具合にいきましたヽ(´ー`)ノいえーい

のこる課題はでっかいファイルの検索。
コレはまた今度ということで...

*便利アイテム
**search-s for Namazu
namazuの検索をGUIで行えるソフト。
新バージョンではインデックス作成機能もついたようです。
DOS窓の使い心地の悪さは異常なので便利なCUI持ってない人や
CUIが苦手な人のみならずCUIがすきだーーー、
ツー人にもおすすめ。GUIがシンプルできにいってます。



*参考サイト
全文検索システム Namazu
同 for win32
namazu FAQ
Windows 2000のIIS 5.0でNamazu for Win32 Version 2.xを動かすには
kakasi




上にもどる
トップに戻る
 

テレワークならECナビ Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!
無料ホームページ 無料のクレジットカード 海外格安航空券 海外旅行保険が無料! 海外ホテル