Wanderlust

1. Wanderlust とは

Wanderlust とは寺西様が作られた、Emacs の上で動作するメーラ/ニュース管理システムです。 使用感は Mew に似ています。 個人的には以前は Mew を使わせてもらってたのですが、Mailing List とかに入ると、スレッド対応や未読管理がしっかりをしているものが欲しくなり、Wanderlust に浮気しました。その他にも自動リファイルなどいろいろ嬉しい機能満載です。

Mew と違って MIME 対応は tm/semi にまかせています。また Nemacs などのかなり古い Emacs でも使えます。詳しくは本家のページや info を参照して下さい。

2. インストール

本家のページからファイルをダウンロードして展開し、INSTALL.ja の指示に従うだけです。GNU Emacs なら、基本的には make; make install ですむはずです。 ただし、あらかじめ、semi ないしは tm を入れておく必要があります。これらの場所も上のページに書かれています。

neumann には既に Wanderlust-1.1.0 と tm-8.8 が入れてあるので、後は次節で述べる設定で使えるようになります。

3. 設定

個人での設定はホームディレクトリの .emacs, .wl, .folders, また必要に応じて .addresses などで行います。

これらの書き方は info に丁寧に説明されていますし、個人の環境によってかなり違うので、ここでは local 向けに neumann での私の設定を書いておくにとどめます。いろいろ余計なことも書いてますが、コメントを参考に必要なものをお書き下さい。

また、もっとガリガリ設定したい方は info を参照して下さい。

3.1 .emacs

ここでは最低限のことを記述し、残りは .wl に書くといいです。

;; 無ければ追加しておく。
(load "mime-setup")
;; 下は最近の Emacs では必要ないです。でも neumann では必要。
(setq load-path
      (append (list "/usr/local/lib/mule/site-lisp/wl") load-path))
(autoload 'wl "wl" "Wanderlust" t)
(autoload 'wl-draft "wl" "Write draft with Wanderlust." t)

3.2 .wl

Wanderlust 起動時に自動的に読み込まれるファイルです。Wanderlust 関係の設定は .emacs ではなくこちらに書くようにするとよいでしょう。

neumann では IMAP4 サーバーは動いてないので、以下は基本的に MH フォルダのための設定です。私は News は semi-gnus 派になってしまったので、News 関係は最低限の設定だけです。

なお、受け取ったメールを最初から各フォルダに振り分けたい場合は procmail などを使うようにするといいでしょう。

;;; mail
;; send (実際のサーバーは環境に合わせて適宜変更して下さい。)
(setq wl-smtp-posting-server "euler.math.s.chiba-u.ac.jp")
;; (system-name) が fqdn を返さない場合に限り下のような domain 名を設定する。
;(setq smtp-local-domain "math.s.chiba-u.ac.jp")

;; read
(setq wl-message-id-domain "math.s.chiba-u.ac.jp"
      wl-from "matsu@math.s.nantoka-u.ac.jp")
(setq wl-default-folder "+inbox" ;; デフォルトは MH の inbox フォルダ
      wl-default-spec "+")       ;; フォルダ移動は MH 形式のフォルダに
(setq wl-alias-file "~/Mail/myaliases")
(setq wl-interactive-send t) ;; C-cC-c で送信する前に確認
(setq wl-highlight-background-mode  'light) ;; 背景色は明るい色に
;; draft バッファ作成時に、特定の条件の下で動作変更
(setq wl-draft-config-alist
      '((reply
         "Reply-To: vine-users@ml.ryukyu.ne.jp"
         ("To" . "vine-users@ml.ryukyu.ne.jp")
         ("Cc" . "")
         )))
(add-hook 'wl-mail-setup-hook 'wl-draft-config-exec)
;; M-i で MH の inc を起動して、summary を sync
(defun TT:wl-inc-mail ()
    (interactive)
    (message "Incing ... ")
    (call-process "inc" nil nil nil)
    (if (and (boundp 'wl-summary-buffer-folder-name)
             (eq wl-summary-buffer-folder-name wl-default-folder))
        (wl-summary-sync-force-update)
      (wl-summary-goto-folder-subr wl-default-folder 'force-update nil nil)))
(add-hook 'wl-folder-mode-hook
            (function
             (lambda ()
               (define-key wl-folder-mode-map "\M-i" 'TT:wl-inc-mail)
               (define-key wl-summary-mode-map "\M-i" 'TT:wl-inc-mail))))
;; refile rules
;; (差し支えない範囲に削ってます。)
(setq wl-refile-rule-alist
      '(
        ("Cc"
         ("vine-users@ml.ryukyu.ne.jp" . "+ML/vine-users")
         ("skk@ring.gr.jp" . "+ML/skk"))
        ("To"
         ("yatex@yatex.org" . "+ML/yatex")
         ("skk@ring.gr.jp" . "+ML/skk")
         ("vine-users@ml.ryukyu.ne.jp" . "+ML/vine-users"))
        ))
;; 記事を expire する期間の設定
(setq wl-expire-alist
              '(("^\\+trash$" (date 7) remove)
              ("^\\+Kondara/Users$" (number 200) remove)))
;;; news
(setq elmo-default-nntp-server "news.s.chiba-u.ac.jp")
(setq wl-nntp-posting-server "news.s.chiba-u.ac.jp")
;; 日本語ファイル名で送って来るメーラ向け対策
(eval-after-load "mime"
  '(defadvice mime-entity-filename (around mime-decode activate)
     ad-do-it
     (and ad-return-value 
          (setq ad-return-value 
                (eword-decode-string (decode-mime-charset-string
                                      ad-return-value
                                      'iso-2022-jp))))))

3.3 .folders

Wanderlust では、IMAP や MH などのフォルダ、NNTP などを全てフォルダとして抽象化して統一的に扱えるようになっています。 1.1.0 では IMAP, NNTP, LocalDir(MH), Maildir, News Spool, POP, Archive, Multi, Filter, Pipe, Internal の 10 種類のフォルダを扱えます。詳しい説明は info を読んでいただくとして、ここでは個人的な例から抜粋しておきます。MH フォルダを中心に NEWS をちょこっと。

+inbox  "受信箱"
ML{
    +ML/vine-users "Vine ML"
    +ML/yatex "野鳥 ML"
}
+chiba "千葉"
+jimu "事務"
+trash  "ゴミ箱"
+drafts
FJ{
    -fj.editor.emacs
    -fj.editor.mule
    -fj.editor.misc
}

3.4 .addresses

foo@bar.nanto.ka                "家"            "松田茂樹"

という感じのものをずらずら並べれば OK です。左から順に
メールアドレス、あだ名、本名
です。 これを設定しておくと draft モードで From を書く時に補完できるようになります。 また wl-alias-file で MH のアドレス帳が設定されてれば、それも使われるようです。


[Mule のページに戻る]