• 差分
  • リロード
  • 一覧
  • 最終更新のRSS

Wanderlustに関するメモ

Wanderlustとは?

WanderlustはEmacs上で動くメールクライアントソフトウェア。

  • POP3, IMAPに対応。ニュースグループも読める。
  • SSL, TLSによる暗号化通信ができる(SMTP, POP3, IMAPそれぞれ対応)
    • gnutls-binパッケージが必要。
  • メッセージのヘッダや本文で検索ができる(Thunderbirdに比べると、ちょっと遅いかな?)
  • フィルタによるメッセージの振り分けが可能
  • グローバルフラグ(Thunderbirdにおける"タグ"のような、任意文字列によるラベル)をメッセージにつけられる
  • 定期的にサーバにアクセスして新規メールがないか確認できる
wl1.png

ThunderbirdのメールデータをWanderlustに移行する

ThunderbirdとWanderlustではメールの格納の仕方が異なるため、変換する必要がある。 これには、mewに付属のプログラム"incm"を使うといい。

$ mkdir mew-bin
$ aptitude download mew-bin
$ dpkg-deb -x mew-bin*.deb mew-bin

としてパーケージを展開すれば、mew-bin/usr/bin/incmとしてゲットできる。

使い方は

$ incm -b -d mboxファイル -i 変換先のディレクトリ

筆者の場合、さらにWindowsでThunderbirdを使っていたころのメールデータが混ざっていたおかげで、 一部のメールファイルの改行コードがCR+LFになっていた。 こうなるとWanderlustで正しく認識できないようなので、dos2unixコマンドをかけておく。

参考: http://nabeo.blogspot.com/2007/10/thunderbirdwalnderlust-1.html

.wl設定メモ

SMTPサーバ設定例

  • TLSを使い、パスワード認証を行う場合
    (setq wl-smtp-posting-server "mail.example.com")
    (setq wl-smtp-posting-port 587) ;; サブミッションポートを使う場合
    (setq wl-smtp-posting-user "your_name")
    (setq wl-smtp-authenticate-type "plain")
    (setq wl-smtp-connection-type 'starttls)  ;; "starttls"ではなく'starttlsでないといけない。。

TLS/SSL周りでトラブったら

  • とりあえずssl-program-namessl-program-argumentsをチェック。

送信メールを既読メールとして保存する(Folder Carbon Copy)

(setq wl-fcc "+sent")
(setq wl-fcc-force-as-read t)

ドラフトを自動保存しない

(setq wl-auto-save-drafts-interval nil)

サマリのデフォルト表示をスレッドから逐次表示へ

(setq wl-summary-default-view 'sequential)

サマリ終了時に次のフォルダに移る動きを抑制

(setq wl-summary-exit-next-move nil)

サマリモードで難しいことは考えずに読み進める

(setq wl-summary-move-order nil)

サマリモードに入った直後に最下部にカーソルを移動する

(add-hook 'wl-summary-prepared-hook 'wl-summary-display-bottom)

転送時の件名プレフィクスを設定する

(setq wl-forward-subject-prefix "Fwd: ")

サマリラインの設定(お好みで)

(setq wl-summary-line-format "%n%T%P%1@%Y/%M/%D(%W)%h:%m %t%[%17(%c %f%) %] %s")
(setq wl-summary-showto-folder-regexp "^\\+sent$") ;; sentディレクトリでは差出人表示を宛先に差し替える
  • サマリラインフォーマットの"%@"は、添付ファイルや転送メールに"@"マークをつけるというもの。
    • 正確に言うと、Content-Typeフィールドがmultipart/mixedかどうかで判断している。
    • そのため、以下の設定を行うなどして、elmo-msgdb-extra-fieldsに"content-type"が含まれるようにする必要がある。
      (setq elmo-msgdb-extra-fields
            '("content-type")
            )

署名をメッセージの最後、添付ファイルや転送メッセージの前に挿入する

  • ~/Mail/signature.txtに保存した署名を挿入する。
    ;; 現在のパートの最後に指定したファイルを挿入するコンフィグ関数を定義。
    (defun mywl-draft-config-sub-part-bottom-file (content)
      (goto-char (mime-edit-content-end))
      (wl-draft-config-sub-file content)
      )
    (add-to-list 'wl-draft-config-sub-func-alist '(part-bottom-file . mywl-draft-config-sub-part-bottom-file))
    
    ;; 署名挿入テンプレートを定義する
    (setq wl-template-alist
          '(
            ;; 署名を自動的に挿入する。
            ;; bottom-fileで挿入を行うと、転送する際に署名が転送メールのパートの最後に挿入される。
            ;; それはまずいのでpart-bottomに挿入する。
            ("default" (part-bottom-file . "~/Mail/signature.txt") )
            )
          )
    
    ;; ドラフト作成時に予めテンプレートを適用する
    (add-hook 'wl-mail-setup-hook
              '(lambda ()
                 (unless wl-draft-reedit
                   (wl-template-apply "default")
                   )
                 )
              )

返信時のウィンドウを広くする

(setq wl-draft-reply-buffer-style 'full)

添付ファイルのデフォルトの保存先を設定

(setq mime-save-directory "~/dl/")

自分宛のメールに対する返信時に、To: Cc:フィールドに自分のアドレスを含めない

(setq wl-draft-always-delete-myself t)

メッセージバッファのヘッダ表示カスタマイズ

  • 指定ヘッダ以外はデフォルトで隠しておく
    ;; 隠したいヘッダの設定
    (setq wl-message-ignored-field-list '("^.*:") )
    
    ;; 表示するヘッダの設定
    ;; 'wl-message-ignored-field-list' より優先される
    (setq wl-message-visible-field-list
          '("^To:" "^From:" "^Date:" "^Cc:" "^Subject:" "^X-SC-.*:")
          )

サマリとメッセージのウィンドウサイズの比率を設定

(setq wl-message-window-size '(1 . 4))

サマリの表示状況を更新する時のフック

(add-hook 'wl-summary-sync-updated-hook 'some-function)

グローバルフラグの色とマークをカスタマイズ

(setq wl-summary-flag-alist
      '((important "purple")
        (register  "red" "R")
        (transactions "green" "T")
        (presen_demo  "orange" "P")
        )
      )

日本語の添付ファイル名を読んだり書いたりできるようにする。

  • 参考
    • http://rally.jp/comp/archives/2006/10/wanderlust_2.php
    • http://emacs-21.ki.nu/application/wl.html
    • http://ubulog.blogspot.com/2008/02/emacsgmail.html
      ;; ファイル名が日本語の添付ファイルをデコードする [semi-gnus-ja: 4332]
      (eval-after-load "mime"
        '(defadvice mime-entity-filename
           (after eword-decode-for-broken-MUA activate)
           "Decode eworded file name for *BROKEN* MUA."
           (when (stringp ad-return-value)
             (setq ad-return-value (eword-decode-string ad-return-value t)))))
      ;; ファイル名が日本語の添付ファイルをエンコードする [semi-gnus-ja: 6046]
      (eval-after-load "std11"
        '(defadvice std11-wrap-as-quoted-string (before encode-string activate)
           "Encode a string."
           (require 'eword-encode)
           (ad-set-arg 0 (or (eword-encode-string (ad-get-arg 0)) "" )) ))

ヘッダの省略表示をしない

(setq wl-message-use-header-narrowing nil)

サマリ行を切り詰めない

(setq wl-summary-width nil)

User-Agentヘッダを短くする

(setq wl-generate-mailer-string-function
     'wl-generate-user-agent-string-1)

HTMLメールを読めるようにする

  • w3m-el-snapshotをインストールする。(Emacs23の場合)
    $ sudo aptitude install w3m-el-snapshot
  • で、以下を.wlに記述。
    require 'w3m-load
    require 'mime-w3m

text/htmlよりもtext/plainを優先表示する。

(set-alist 'mime-view-type-subtype-score-alist '(text . html) 0)

MHC

  • Wanderlust(やMewなど)で動作するスケジュール管理プログラム
  • メールの文面を解析してタスクを生成・登録する強力なテキスト分析機能を搭載
  • 登録スケジュールはメールと同様のテキストフォーマットなので、サードパーティのプログラムで扱うのも簡単
  • コマンドラインからスケジュールを閲覧するプログラムなども同梱されている
wl2.png

添付ファイル: filewl2.png 491件 [詳細] filewl1.png 459件 [詳細]
Last-modified: 2012-09-30 (日) 17:49:30 (2458d)