;;; dot.wl -- sample setting file for Wanderlust -*- emacs-lisp -*- ;; [[ SEMI の設定 ]] ;; HTML パートを表示しない ;; (require 'mime-setup) より先に記述する必要があります。 (setq mime-setup-enable-inline-html nil) ;; 大きいメッセージを送信時に分割しない (setq mime-edit-split-message nil) ;; 大きいメッセージとみなす行数の設定 ;(setq mime-edit-message-default-max-lines 1000) ;; [[ 動作に必要な設定 ]] ;; まず、次の設定を ~/.emacs などに書いてください。 ;; ここから (require 'mime-setup) (autoload 'wl "wl" "Wanderlust" t) (autoload 'wl-draft "wl-draft" "Write draft with Wanderlust." t) ;; ここまで ;; アイコンを置くディレクトリ (XEmacs, Emacs21 のみ) ;; XEmacs の package としてインストールされている場合は必要ありません。 ;(setq wl-icon-dir "/usr/local/lib/emacs/etc") ;;; [[ 個人情報の設定 ]] ;; From: の設定 ;(setq wl-from "Your Name ") ;; 自分のメールアドレスのリスト (setq wl-user-mail-address-list (list (wl-address-header-extract-address wl-from) ;; "e-mail2@example.com" ;; "e-mail3@example.net" ... )) ;; 自分の参加しているメーリングリストのリスト (setq wl-subscribed-mailing-list '("wl@lists.airs.net" "apel-ja@m17n.org" "emacs-mime-ja@m17n.org" ;; "ml@example.com" ... )) ;; (system-name) が FQDN を返さない場合、 ;; `wl-local-domain' にホスト名を除いたドメイン名を設定してください。 ;; (system-name) "." wl-local-domain が Message-ID に使用されます。 ;(setq wl-local-domain "example.com") ;; Message-ID のドメインパートを強制的に指定 ;(setq wl-message-id-domain "hostname.example.com") ;;; [[ サーバの設定 ]] ;; IMAP サーバの設定 (setq elmo-imap4-default-server "localhost") ;; POP サーバの設定 (setq elmo-pop3-default-server "localhost") ;; SMTP サーバの設定 (setq wl-smtp-posting-server "localhost") ;; ニュースサーバの設定 (setq elmo-nntp-default-server "localhost") ;; 投稿先のニュースサーバ (setq wl-nntp-posting-server elmo-nntp-default-server) ;; IMAP サーバの認証方式の設定 (setq elmo-imap4-default-authenticate-type 'clear) ; 生パスワード ;(setq elmo-imap4-default-authenticate-type 'cram-md5) ; CRAM-MD5 ;; POP-before-SMTP ;(setq wl-draft-send-mail-function 'wl-draft-send-mail-with-pop-before-smtp) ;;; [[ 基本的な設定 ]] ;; `wl-summary-goto-folder' の時に選択するデフォルトのフォルダ ;(setq wl-default-folder "+inbox") ;; フォルダ名補完時に使用するデフォルトのスペック ;(setq wl-default-spec "+") ;; Folder Carbon Copy ;(setq wl-fcc "+outbox") ;; 終了時に確認する (setq wl-interactive-exit t) ;; メール送信時には確認する (setq wl-interactive-send t) ;; スレッドは常に開く ;(setq wl-thread-insert-opened t) ;; サマリバッファの左にフォルダバッファを表示する (3ペイン表示) ;(setq wl-stay-folder-window t) ;; ドラフトを新しいフレームで書く ;(setq wl-draft-use-frame t) ;; サブジェクトが変わったらスレッドを切って表示 ;(setq wl-summary-divide-thread-when-subject-changed t) ;; スレッドの見た目を変える ;(setq wl-thread-indent-level 2) ;(setq wl-thread-have-younger-brother-str "+" ; wl-thread-youngest-child-str "+" ; wl-thread-vertical-str "|" ; wl-thread-horizontal-str "-" ; wl-thread-space-str " ") ;; サマリ移動後に先頭メッセージを表示する ;(setq wl-auto-select-first t) ;; サマリ内の移動で未読メッセージがないと次のフォルダに移動する ;(setq wl-auto-select-next t) ;; 未読がないフォルダは飛ばす(SPCキーだけで読み進める場合は便利) ;(setq wl-auto-select-next 'skip-no-unread) ;; 未読メッセージを優先的に読む ;(setq wl-summary-move-order 'unread) ;; 着信通知の設定 ;(setq wl-biff-check-folder-list '("%inbox")) ;(setq wl-biff-notify-hook '(beep)) ;;; [[ ネットワーク ]] ;; フォルダ種別ごとのキャッシュの設定 ;; (localdir, localnews, maildir はキャッシュできない) ;(setq elmo-archive-use-cache nil) ;(setq elmo-nntp-use-cache t) ;(setq elmo-imap4-use-cache t) ;(setq elmo-pop3-use-cache t) ;; オフライン(unplugged)操作を有効にする(現在はIMAPフォルダのみ) ;(setq elmo-enable-disconnected-operation t) ;; unplugged 状態で送信すると,キュー(`wl-queue-folder')に格納する (setq wl-draft-enable-queuing t) ;; unplugged から plugged に変えたときに,キューにあるメッセージを送信する (setq wl-auto-flush-queue t) ;; 起動時はオフライン状態にする ;(setq wl-plugged nil) ;; 起動時にポートごとのplug状態を変更する ;(add-hook 'wl-make-plugged-hook ; '(lambda () ; ;; server,portのplug状態を新規追加もしくは変更する ; (elmo-set-plugged plugged値(t/nil) server port) ; ;; port を省略するとserverの全portが変更される ; ;; (port を省略して新規の追加はできない) ; (elmo-set-plugged plugged値(t/nil) server) ; )) ;;; [[ 特殊な設定 ]] ;; グループをcheckした後に未読があるフォルダのグループを自動的に開く ;(add-hook 'wl-folder-check-entity-hook ; '(lambda () ; (wl-folder-open-unread-folder entity) ; )) ;; サマリ表示関数を変更する ;; サマリ表示において使用する情報を持つフィールドをoverview情報に ;; 入れる設定(ただし,localフォルダのみ) ;; 自動リファイルに必要なフィールドも設定 (setq elmo-msgdb-extra-fields '("newsgroups" "list-id" "x-ml-name" "mailing-list" "x-mail-count" "x-ml-count" "x-sequence")) ;; ML のメッセージであれば,サマリの Subject 表示に ;; ML名 や MLにおけるメッセージ番号も表示する (setq wl-summary-subject-function 'my-wl-summary-subject-func-ml) (defun my-wl-summary-subject-func-ml (subject-string) (let ((folder wl-summary-buffer-folder-name) (subj subject-string) (sequence) (ml-name) (ml-count)) (setq sequence (elmo-msgdb-overview-entity-get-extra-field entity "x-sequence") ml-name (or (elmo-msgdb-overview-entity-get-extra-field entity "x-ml-name") (and sequence (car (split-string sequence " ")))) ml-count (or (elmo-msgdb-overview-entity-get-extra-field entity "x-mail-count") (elmo-msgdb-overview-entity-get-extra-field entity "x-ml-count") (and sequence (cadr (split-string sequence " "))))) (if (string-match "^\\s(\\(\\S)+\\)[ :]\\([0-9]+\\)\\s)[ \t]*" subject-string) (progn (setq subj (substring subject-string (match-end 0))) (if (not ml-name) (setq ml-name (match-string 1 subject-string))) (if (not ml-count) (setq ml-count (match-string 2 subject-string))))) (if (and ml-name ml-count) (if (string= folder wl-default-folder) (format "(%s %05d) %s" (car (split-string ml-name " ")) (string-to-int ml-count) subj) (format "#%05d %s" (string-to-int ml-count) subj)) subj))) ;; imput により非同期で送信する ;; (utils/im-wl.el をインストールしておく必要があります。 ;; また,~/.im/Config の設定(Smtpservers)を忘れないことと, ;; wl-draft-enable-queuing の機能が働かなくなることに注意。) ;(autoload 'wl-draft-send-with-imput-async "im-wl") ;(setq wl-draft-send-function 'wl-draft-send-with-imput-async) ;; 短い User-Agent: フィールドを使う ;(setq wl-generate-mailer-string-function ; (function ; (lambda () ; (concat "User-Agent: " ; (wl-generate-user-agent-string-1 nil))))) ;;; [[ テンプレート ]] ;; テンプレートの設定 (setq wl-template-alist '(("default" ("From" . wl-from) ("Organization" . "~/.wl sample") (body . " ○○です。\n")) ; 本文 ("report" ("To" . "boss@example.com") ("Subject" . "報告") (top . "今週の報告です。\n") ; 本文先頭への挿入 ;; (bottom-file . "~/work/report.txt") ; 本文末尾へファイルの挿入 ) )) ;; ドラフトバッファの内容により From や Organization などのヘッダを自 ;; 動的に変更する (setq wl-draft-config-alist '((reply ;; 返信元のバッファを見る "^To: .*\\(test-notsend-wl@lists.airs.net\\)" (template . "default")) ; テンプレート ("^To: .*\\(test-notsend-wl@lists.airs.net\\)" wl-ml-draft-config-function ; 関数 ("From" . wl-from) ; 変数 ("Organization" . "~/.wl sample")) ; 文字列 ("^Newsgroups: test.*" ("Organization" . "ニュース投稿時の組織名")) )) ;; ドラフト作成時(返信時)に,自動的にヘッダを変更する ;(add-hook 'wl-mail-setup-hook ; '(lambda () ; (unless wl-draft-reedit ; 再編集時は適用しない ; (wl-draft-config-exec wl-draft-config-alist)))) ;;; [[ 返信時の設定 ]] ;; 返信時のウィンドウを広くする ;(setq wl-draft-reply-buffer-style 'full) ;; 返信時のヘッダに相手の名前を入れない。 ;(setq wl-draft-reply-use-address-with-full-name nil) ;; メールの返信時に宛先を付ける方針の設定 ;; 下記変数の alist の要素 ;; ("返信元に存在するフィールド" . ;; ('Toフィールド' 'Ccフィールド' 'Newsgroupsフィールド')) ;; "a" (without-argument)では Reply-To: や From: などで指定された唯一人 ;; または唯一つの投稿先に返信する。また,X-ML-Name: と Reply-To: がつい ;; ているなら Reply-To: 宛にする。 (setq wl-draft-reply-without-argument-list '((("X-ML-Name" "Reply-To") . (("Reply-To") nil nil)) ("X-ML-Name" . (("To" "Cc") nil nil)) ("Followup-To" . (nil nil ("Followup-To"))) ("Newsgroups" . (nil nil ("Newsgroups"))) ("Reply-To" . (("Reply-To") nil nil)) ("Mail-Reply-To" . (("Mail-Reply-To") nil nil)) ("From" . (("From") nil nil)))) ;; "C-u a" (with-argument)であれば関係する全ての人・投稿先に返信する。 (setq wl-draft-reply-with-argument-list '(("Followup-To" . (("From") nil ("Followup-To"))) ("Newsgroups" . (("From") nil ("Newsgroups"))) ("Mail-Followup-To" . (("Mail-Followup-To") nil ("Newsgroups"))) ("From" . (("From") ("To" "Cc") ("Newsgroups"))))) ;;; [[ メッセージ表示の設定 ]] ;; 隠したいヘッダの設定 (setq wl-message-ignored-field-list '(".*Received:" ".*Path:" ".*Id:" "^References:" "^Replied:" "^Errors-To:" "^Lines:" "^Sender:" ".*Host:" "^Xref:" "^Content-Type:" "^Precedence:" "^Status:" "^X-VM-.*:")) ;; 表示するヘッダの設定 ;; 'wl-message-ignored-field-list' より優先される (setq wl-view-visible-field-list '("^Message-Id:")) ;; X-Face を表示する (要 x-face or bitamap-mule) (when window-system (cond ((and (featurep 'xemacs) ; for XEmacs (module-installed-p 'x-face)) (autoload 'x-face-xmas-wl-display-x-face "x-face") (setq wl-highlight-x-face-function 'x-face-xmas-wl-display-x-face)) ;; for Mule (GNU Emacs) ((module-installed-p 'x-face-mule) ;; for x-face-mule distributed with bitmap-mule 8.0 or later (autoload 'x-face-decode-message-header "x-face-mule") (setq wl-highlight-x-face-function 'x-face-decode-message-header)) )) ;; スコア機能の設定 ;; `wl-score-folder-alist' の設定に関わらず必ず "all.SCORE" は使用される。 ;(setq wl-score-folder-alist ; '(("^-comp\\." ; "news.comp.SCORE" ; "news.SCORE") ; ("^-" ; "news.SCORE"))) ;; 自動リファイルのルール設定 ;(setq wl-refile-rule-alist ; '( ; ("x-ml-name" ; ("^Wanderlust" . "+wl") ; ("^Elisp" . "+elisp")) ; ("From" ; ("teranisi@isl.ntt.co.jp" . "+teranisi")))) ;; 自動リファイルしない永続マークを設定 ;; 標準では "N" "U" "!" になっており、未読メッセージを自動リファイルし ;; ません。nil ですべてのメッセージが対象になります。 ;(setq wl-summary-auto-refile-skip-marks nil) ;;; dot.wl ends here