Mewの検索エンジン設定方法

1 はじめに

私はWindows XPで Meadow 2.10 + Mew 6.x でメールを読んでいます。
Mewは、メール検索のために、今風の全文検索エンジンを使うことができます。 その設定方法などを、ここにまとめておきます。
検索方法は、Hyper Estraier がおすすめです。

戻る

2 CONTENTS


3 検索エンジン設定メモ

3.1 Hyper Estraierのインストール、設定

前提条件: cygwinをインストールしているものとする。
meadowからbashを実行する設定(mw32script)はしていなくてもよい。
  1. http://hyperestraier.sourceforge.net/から、hyperestraier の windows用バイナリ(hyperestraier-1.4.10-win32.zip)をDL。必要なライブラリ等は含まれています。
  2. どこか(たとえば C:\usr\hyperestraier\ 配下)に展開。
  3. 環境変数PATHに「C:\usr\hyperestraier」を追加。
  4. .emacsに下記を追加
    (setq mew-use-suffix t)       ;不要かも
    (setq mew-search-method 'est) ;使用する検索エンジンがhyperestraierのみであれば不要
  5. ~/.bashrc で、環境変数PATHに「/cygdrive/c/usr/hyperestraier」を追加。
  6. メール保存ディレクトリを変更している場合は、{$meadow}\bin\mewest の次の行を編集し、変数 BASEDIR と TGTDIRに、メール保存ディレクトリをセットする。
    メール保存ディレクトリがデフォルトのままならこれらは必要ない。
    BASEDIR=${HOME}/Mail2
    #TGTDIR=${1:-${HOME}/Mail}
    TGTDIR=$BASEDIR
  7. インデクシングの手動実行。cygwinで${meadow}/bin/mewest を実行。
    # /cygdrive/c/usr/meadow2/bin/mewest
    Purging old messages...
    Purging old messages...done
    Indexing new messages...
    Indexing new messages...done
    # 
    
  8. 検索のテスト
    C:\> estcmd search -max -1 -vu -ic sjis %HOME%/Mail/casket "検索ワード"
    --------[02D18ACF62E85FBE]--------
    VERSION 1.0
    NODE    local
    HIT     26
    HINT#1  検索ワード     26
    TIME    0.000000
    DOCNUM  4146
    WORDNUM 190766
    VIEW    URI
    
    --------[02D18ACF62E85FBE]--------
    4230    file:///c|/home/Mail/inbox/13343.mew
    4480    file:///c|/home/Mail/inbox/13833.mew
    ...
    --------[02D18ACF62E85FBE]--------:END
    
    C:\>
  9. 下記の内容でバッチファイル(est.bat)を作成し、タスクスケジューラで定期的に実行するようにし、定期的にインデクシングするようにする。
    c:\cygwin\bin\bash -i  /cygdrive/c/usr/meadow2/bin/mewest
    Meadowの中からkMでインデクシングできるようには私はしていません。
使い方
k/ で検索(全フォルダから)
C-uk/ で検索(フォルダ指定)

検索ワード入力は、全文検索の検索ワード入力と、ヘッダ情報の検索ワード入 力とに2段階に分かれています。どちらか一方だけ入力してもかまいません。
k/すると、「Hyper Estraier virtual pattern:」と聞いてくるので、全文検 索したい単語を入力する。複数単語指定可。例:「旅行」
次に「Hyper Estraier filter pattern:」と聞いてくるので、ヘッダ情報の検 索パターンを入力する。複数指定可。例:「from=yamada」
Filter patternの例
Hyperestraierの特徴

3.2 Windows Search 4.0 のインストール、設定

  1. Microsoft .NET Framework 2.0 以上をインストール
  2. Windows Search 4.0 WindowsSearch-KB940157-XP-x86-jpn をインストール。
  3. タスクバーが狭くなるので、タスクバーからWindows Searchを消す(お好みで)。
    タスクバー右クリック → 「ツールバー」→「Windows Search デスクバー」 をアンチェック
  4. 検索対象フォルダをメールフォルダとする。
    タスクトレイの「Windows Search」のアイコンを右クリック → 「Windows Search のオプション」
    「変更」→検索対象としたいフォルダをチェック。 たとえば、メールフォルダ「c:\home\MyName\Mail」のみをチェック
  5. wdsgrepをインストール。 ここからwdsgrepの最新版(wdsgrep-latest(2009-03-25))をDL。
    wdsgrep.exe と MicrosoftSearch.Interop.dll をPATH の通っているところ(c:\windows など)にコピー
  6. .emacsに次を追加
    (setq mew-use-suffix t)
    (setq mew-search-method 'wds)  ;使用する検索エンジンが Windows Search のみであれば不要
  7. 検索対象ファイルに拡張子 mew を登録
    C:\> wdsgrep.exe -R
  8. タスクトレイの「Windows Search」のアイコンを右クリック → 「Windows Search のオプション」
    「詳細設定」→「ファイルの種類」→「mew」が「mimefilt.dll」 となっていることを確認する。
  9. WDSの動作テスト
    タスクトレイの「Windows Search」をダブルクリック → 適当な検索ワードを入力し 「デスクトップ検索」を押す → 検索結果にメールファイル(*.mew)が出てくればOK
使い方
k/ で検索。
検索パターンの入力の仕方:
Windows Search の特徴

3.3 namazu/kakasi のインストール、設定

  1. ActivePerl 5.8.x をインストール。フリー版は「ActivePerl Community Edition」 という名前になっている。5.8.xでないと、namazu用モジュールが用意され ていない。
  2. kakasiをインストール
    1. ここから Windows用バイナリ kakasi-2.3.4.zip をDLし、展開する。たとえば、 C:/usr/kakasi に展開する。
    2. 環境変数PATHにC:\usr\kakasi\bin を追加
    3. 環境変数 KANWADICTPATH に C:\usr\kakasi\share\kakasi\kanwadict をセット
    4. 環境変数 ITAIJIDICTPATH に C:\usr\kakasi\share\kakasi\itaijidict をセット
  3. namazuをインストール。
    私がnamazuを使っていたときのバージョンは、namazu-2.0.14 だったので、 2.0.14の設定手順を書きます。(今は2.0.20が最新のようで、 インストール方法も多少変わっているようです)
    と、言いながら、実は、今namazuが動いている環境が無いので、 設定手順がこれで正しいか確認できません。自信がないです。。。。
    1. ここから Windows用 インストーラ nmz2014beta.exe をDLし、インストール。
      インストール先は、c:\usr\namazu 配下とする。
    2. c:/usr/namazu/ppm で、PPM-INSTALL.BATを実行する。
    3. 以下の環境変数がインストーラにより設定されていることを確認する。
      • PATHに c:\usr\namazu\bin を追加
      • 環境変数 LANG に ja_JP.SJIS をセット
      • 環境変数 NAMAZURC に C:\usr\namazu\etc\namazu\namazurc をセット
      • 環境変数 MKNMZRC に C:\usr\namazu\etc\namazu\mknmzrc をセット
      • 環境変数 NAMAZULOCALEDIR に C:\usr\namazu\share\locale をセット
      • 環境変数 pkgdatadir に C:\usr\namazu\share\namazu をセット
    4. C:\usr\namazu\etc\namazu\mknmzrc-sample.win32 からコピーして C:\usr\namazu\etc\namazu\mknmzrc を作成。
    5. C:\usr\namazu\etc\namazu\namazurc-sample.win32 からコピーして C:\usr\namazu\etc\namazu\namazurc を作成。
    6. namazuの動作テスト
      C:\> namazu --help
      C:\> mknmz --help
      C:\> mknmz -O C:\usr\namazu\var\namazu\index C:\usr\namazu\share\namazu\doc\
      C:\> dir C:\usr\\namazu\var\namazu\index
      C:\> namazu "Namazu を初めて使う" C:\usr\namazu\var\namazu\index
      検索式にマッチする 1 個の文書が見つかりました。
  4. ${namazu}/share/site-lisp/namazu.el を ${meadow}/site-lisp/namazu.el にコピー
  5. mew-nmz.elを置く。
    http://www.meadowy.org/~shirai/ から、mew-nmz.el.gz をDLし、展開して、${meadow}\site-list\mew\mew-nmz.el に置く。
  6. インデックス保存場所 ${HOME}/Namazu を作成
  7. .emacs に下記を書く。
    (autoload 'namazu "namazu" nil t)
    (eval-after-load "mew" '(require 'mew-nmz))
    (setq mew-search-method 'namazu)
    (setq mew-nmz-index-path (expand-file-name "~/Namazu")) ; mew-nmz-prog-mknmz-include と合わせる 
    (setq mew-nmz-index-mail "Mail")
    (setq mew-nmz-index-news "News")
    (setq mew-nmz-prog-mknmz "mknmz.bat")
  8. 定期インデクシングの設定 次の内容のバッチファイルを作り、タスクスケジューラで定期的に実行するようにする。
    call mknmz.bat --update=c:/home/MyName/Namazu/Mail/inbox
    call mknmz.bat --update=c:/home/MyName/Namazu/Mail/<folder-name>
    call gcnmz.bat c:/home/MyName/Namazu/Mail/inbox
    call gcnmz.bat c:/home/MyName/Namazu/Mail/<folder-name>
    <folder-name>の部分は、検索対象としたいmewのフォルダ を書いてください。
使い方
k / で検索。(mew-nmz-virtual)
k m でインデクシング。(mew-nmz-mknmz)
検索式の書き方:
その他
namazu/kakasi の特徴

戻る

Last modified: Fri Dec 31 19:12:47 JST 2010