マルチメディア拡張がされた Lookup と eblook を使う

いまさらな話なので鮮度の落ちた役に立たない内容のはず。

Emacs から Hyper Estraier を使いたいと思い、前から気になっていた Emacs 上の辞書引きソフトである Lookup から Hyper Estraier を呼べるようになる ndest エージェントをインストールしてみた。いまさらなのが。すみません。

インストール先は Linux なので、上記のページで配布されているものをごく普通の方法でインストールした。

設定は以下のような感じでいいのではないかな。手元の設定の抜粋である。実際に使っている設定ファイルには、もっとたくさんの ndeb エージェントが並んでいる。

;; ndest エージェント
(setq ndest-arrange-functions
      '(("^message/rfc822$" nil ndest-arrange-rfc822)
        ("^text/plain$" "/.navi2ch/.+.dat$" ndest-arrange-navi2ch-dat)))

;; 検索エージェントを設定
(setq lookup-search-agents
      '((ndest "~/Mail/casket")
        (ndest "~/.navi2ch/casket")
        (ndest "~/Dropbox/casket")
        (ndest "http://athlon64.fsij.org/~mikio/wikipedia/estfraud.cgi/casket")))

(add-hook 'lookup-load-hook
          '(lambda ()
             ;; オプション (e.g. :title) を設定する (id を知るには lookup-agent-list の値を見ればいい)
             (lookup-set-dictionary-option "ndest+~/Mail/casket:est" ':title "メール")
             (lookup-set-dictionary-option "ndest+~/.navi2ch/casket:est" ':title "2ch")
             (lookup-set-dictionary-option "ndest+~/Dropbox/casket:est" ':title "メモなど")
             (lookup-set-dictionary-option "ndest+http://athlon64.fsij.org/~mikio/wikipedia/estfraud.cgi/casket:est" ':title "Wikipedia")))

ndest で指定したインデックスは、それぞれ上からメール、navi2chDropbox 内の文章、Wikipedia となっている。

最後の lookup-load-hook で行っている設定は必須ではない。単に Lookup の *Entry* バッファに現れる辞書のタイトルを指定しているだけだ。また、lookup-load-hook で行わずに .lookup を使えばいいかもしれない。好みの問題だ。

ちなみに、ここで取り上げた Lookup は 1.4 系列のフォークだが、本家では 2.0 系列のベータ版がリリースされている。どちらがいいのかと問われてもよく分からない。そもそも 2.0 系列のベータテストが始まったのは 2000 年のことである。9 年以上たった現在において正式版がリリースされていない。なにかしらの理由があるわけだし、あまりに昔の話なので忘れてしまった。さして気にしても仕方のないことなのだが。