;; [[ Requirement Setting ]]
;; Following must be included in ~/.emacs
-;; for .emacs begin
-(require 'mime-setup)
+;; (No need if installed as XEmacs package.)
(autoload 'wl "wl" "Wanderlust" t)
+(autoload 'wl-other-frame "wl" "Wanderlust on new frame." t)
(autoload 'wl-draft "wl-draft" "Write draft with Wanderlust." t)
-;; for .emacs end
-;; Icon directory (XEmacs and Emacs21 only)
+;; Icon directory
;; (No need if installed as XEmacs package.)
-;(setq wl-icon-dir "/usr/local/lib/emacs/etc")
+;(setq wl-icon-directory "/usr/local/lib/emacs/etc")
+
+
+;; [[ SEMI Setting ]]
+
+;; Disable inline display of HTML part.
+;; Put before load `mime-setup'
+(setq mime-setup-enable-inline-html nil)
+
+;; Don't split large message.
+(setq mime-edit-split-message nil)
+
+;; If lines of message are larger than this value, treat it as `large'.
+;(setq mime-edit-message-default-max-lines 1000)
;;; [[ Private Setting ]]
;; Header From:
;(setq wl-from "Your Name <e-mail@example.com>")
+;; If (system-name) does not return FQDN,
+;; set following as a local domain name without hostname.
+;(setq wl-local-domain "example.com")
+
;; User's mail addresses.
(setq wl-user-mail-address-list
(list (wl-address-header-extract-address wl-from)
(setq wl-subscribed-mailing-list
'("wl@lists.airs.net"
"apel-ja@m17n.org"
- ;;"ml@example.com" ...
+ "emacs-mime-ja@m17n.org"
+ ;; "ml@example.com" ...
))
-
;;; [[ Server Setting ]]
;; Default IMAP4 server
-(setq elmo-default-imap4-server "localhost")
+(setq elmo-imap4-default-server "localhost")
;; Default POP server
-(setq elmo-default-pop3-server "localhost")
+(setq elmo-pop3-default-server "localhost")
;; SMTP server
(setq wl-smtp-posting-server "localhost")
;; Default NNTP server
-(setq elmo-default-nntp-server "localhost")
+(setq elmo-nntp-default-server "localhost")
;; NNTP server name for posting
-(setq wl-nntp-posting-server elmo-default-nntp-server)
-
-;; If (system-name) does not return FQDN,
-;; set following as a local domain name without hostname.
-;; ((system-name) "." wl-local-domain is used as domain part of Message-ID
-;; and an argument of HELO in SMTP.
-;(setq wl-local-domain "example.com")
-
-;; Specific domain part for message-id.
-;(setq wl-message-id-domain "hostname.example.com")
+(setq wl-nntp-posting-server elmo-nntp-default-server)
;; IMAP authenticate type setting
-(setq elmo-default-imap4-authenticate-type 'clear) ; raw
-;(setq elmo-default-imap4-authenticate-type 'cram-md5) ; CRAM-MD5
+(setq elmo-imap4-default-authenticate-type 'clear) ; raw
+;(setq elmo-imap4-default-authenticate-type 'cram-md5) ; CRAM-MD5
;; POP-before-SMTP
-;(setq wl-draft-send-mail-func 'wl-draft-send-mail-with-pop-before-smtp)
+;(setq wl-draft-send-mail-function 'wl-draft-send-mail-with-pop-before-smtp)
;;; [[ Basic Setting ]]
;; Folder Carbon Copy
;(setq wl-fcc "+outbox")
-;; Confirm at exit time.
+;; Confirm before exitting Wanderlust.
(setq wl-interactive-exit t)
-;; Confirm at message sending time.
+;; Confirm before sending message.
(setq wl-interactive-send t)
;; Create opened thread.
;(setq wl-thread-insert-opened t)
-;; folder mode and summary mode is displayed at the same time. (3pane)
+;; Keep folder window beside summary. (3 pane)
;(setq wl-stay-folder-window t)
+;; Truncate long lines.
+;(setq wl-message-truncate-lines t)
+;(setq wl-draft-truncate-lines t)
+;; Following line is needed for XEmacs older than 21.4.6.
+;(setq truncate-partial-width-windows nil)
+
;; Open new frame for draft buffer.
;(setq wl-draft-use-frame t)
-;; Disable inline display HTML part.
-;(setq mime-setup-enable-inline-html nil)
+;; Don't limit indent for thread view
+;(setq wl-summary-indent-length-limit nil)
+;(setq wl-summary-width nil)
-;; Don't split large message.
-;(setq mime-edit-split-message nil)
-
-;; Thread divide when change subject.
+;; Divide thread by change of subject.
;(setq wl-summary-divide-thread-when-subject-changed t)
-;; Thread view
+;; Change format of thread view
+;(setq wl-thread-indent-level 2)
;(setq wl-thread-have-younger-brother-str "+"
; wl-thread-youngest-child-str "+"
; wl-thread-vertical-str "|"
;; goto next folder when exit from summary.
;(setq wl-auto-select-next t)
-;; folder is skipped if there is no unread.
-;(setq wl-summary-next-no-unread 'skip-no-unread)
+;; skip folder if there is no unread message.
+;(setq wl-auto-select-next 'skip-no-unread)
;; jump to unread message in 'N' or 'P'.
;(setq wl-summary-move-order 'unread)
+;; notify mail arrival
+;(setq wl-biff-check-folder-list '("%inbox"))
+;(setq wl-biff-notify-hook '(ding))
+
;;; [[ Network ]]
;(setq elmo-pop3-use-cache t)
;; Enable disconnected operation in IMAP folder.
-;(setq elmo-enable-disconnected-operation t)
+(setq elmo-enable-disconnected-operation t)
;; Store draft message in queue folder if message is sent in unplugged status.
(setq wl-draft-enable-queuing t)
;; change plug status by server or port at startup.
;(add-hook 'wl-make-plugged-hook
; '(lambda ()
+; ;; Add or Change plug status for SERVER and PORT.
; (elmo-set-plugged plugged(t/nil) server port)
+; ;; When omit port, SEVERS all port was changes.
+; ;; (Can't add plug status without PORT)
; (elmo-set-plugged plugged(t/nil) server)
; ))
;;; [[ Special Setting ]]
+;; bind "b" in Summary to resend-message (ala mutt's "b"ounce)
+;(add-hook 'wl-summary-mode-hook
+; '(lambda ()
+; (define-key wl-summary-mode-map "b" 'wl-summary-resend-message)
+; ))
+
;; open unread group folder after checking.
;(add-hook 'wl-folder-check-entity-hook
; '(lambda ()
;; Change summary display function.
-;; get extra field values as overview information (only localdir folder).
-(setq elmo-msgdb-extra-fields '("newsgroups"
- "x-ml-name" "list-id"
- "x-mail-count" "x-ml-count" "x-sequence"
- "mailing-list"))
+;; Set extra field use with `elmo-msgdb-overview-entity-get-extra-field'.
+;; And use with auto-refile.
+(setq elmo-msgdb-extra-fields
+ '("newsgroups"
+ "list-id" "x-ml-name" "mailing-list"
+ "x-mail-count" "x-ml-count" "x-sequence"))
;; ML message displays ML name and ML sequence number in subject.
-(setq wl-summary-subject-func '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(\\(.+\\)[ :]\\([0-9]+\\)\\s)[ \t]*"
- "^\\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)))
+(setq wl-summary-line-format "%n%T%P%M/%D(%W)%h:%m %t%[%17(%c %f%) %] %#%~%s")
+;; Set summary line format according to folder name.
+;(setq wl-folder-summary-line-format-alist
+; '(("^%inbox\\.emacs\\.wl$" .
+; "%-5l%T%P%M/%D %h:%m %-4S %[ %17f %] %t%C%s")
+; ("^%" . "%T%P%M/%D %h:%m %-4S %[ %17f %] %t%C%s")
+; ("^+" . "%n%T%P%M/%D %h:%m %-4S %[ %17f %] %t%C%s")))
;; imput asynchronously.
;; (utils/im-wl.el is needed to be installed.
;; Don't forget setting ~/.im/Config (Smtpservers).
;; note that wl-draft-enable-queuing is not valid.)
;(autoload 'wl-draft-send-with-imput-async "im-wl")
-;(setq wl-draft-send-func 'wl-draft-send-with-imput-async)
+;(setq wl-draft-send-function 'wl-draft-send-with-imput-async)
;; non-verbose User-Agent: field
-;(setq wl-generate-mailer-string-func
-; (function
-; (lambda ()
-; (wl-generate-user-agent-string-1 nil))))
+;(setq wl-generate-mailer-string-function
+; 'wl-generate-user-agent-string-1)
+
+
+;; Automatically save modified draft buffers in every 20 seconds.
+;(defun my-wl-auto-save-draft-buffers ()
+; (let ((buffers (wl-collect-draft)))
+; (save-excursion
+; (while buffers
+; (set-buffer (car buffers))
+; (if (buffer-modified-p) (wl-draft-save))
+; (setq buffers (cdr buffers))))))
+;(run-with-idle-timer 20 t 'my-wl-auto-save-draft-buffers)
+
+;; When you encrypt message by PGP, include your public key.
+;; (to make the message visible from yourself)
+;(setq pgg-encrypt-for-me t)
;;; [[ Template ]]
;; template
-(setq wl-template-alist
- '(("default"
- ("From" . wl-from)
- ("Organization" . "~/.wl sample")
- (body . "Hello, this is XXX \n")) ;; body
- ("report"
- ("To" . "boss@example.com")
- ("Subject" . "Report")
- (top . "Sir, here is my report\n") ;; insert in top.
-;; (bottom-file . "~/work/report.txt") ;; insert file in bottom
- )
- ))
+;(setq wl-template-alist
+; '(("default"
+; ("From" . wl-from)
+; ("Organization" . "organization for default")
+; (body . "Hello, this is XXX \n")) ; body
+; ("report"
+; ("To" . "boss@example.com")
+; ("Subject" . "Report")
+; (top . "Sir, here is my report\n") ; insert in top.
+; (bottom-file . "~/work/report.txt") ; insert file in bottom
+; )
+; ))
+
;; Change headers in draft sending time.
-(setq wl-draft-config-alist
- '((reply ;; see reply buffer
- "^To: .*\\(test-notsend-wl@lists.airs.net\\)"
- (template . "default")) ;; template
- ("^To: .*\\(test-notsend-wl@lists.airs.net\\)"
- wl-ml-draft-config-func ;; function
- ("From" . wl-from) ;; variable
- ("Organization" . "~/.wl sample")) ;; string
- ("^Newsgroups: test.*"
- ("Organization" . "organization for nntp."))
- ))
+;(setq wl-draft-config-alist
+; '((reply ; see reply buffer
+; "^To: .*test-notsend-wl@lists\\.airs\\.net"
+; (template . "default")) ; template
+; ("^To: .*test-notsend-wl@lists\\.airs\\.net"
+; ding ; function
+; ("From" . wl-from) ; variable
+; ("Organization" . "organization")) ; string
+; ("^Newsgroups: test.*"
+; ("Organization" . "organization for nntp."))
+; ))
;; Change headers in draft preparation time.
;(add-hook 'wl-mail-setup-hook
;; "a" (without-argument) reply to author (Reply-To or From).
;; if 'X-ML-Name' and 'Reply-To' exists, 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) reply to all.
-(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")))))
-
-
-;; X-Face (requires x-face (and x-face-mule))
-(when (and window-system
- (module-installed-p 'x-face))
- (cond (wl-on-xemacs ;; for XEmacs
- (autoload 'x-face-xmas-wl-display-x-face "x-face" nil t)
- (setq wl-highlight-x-face-func
- 'x-face-xmas-wl-display-x-face))
- ;; for Mule (GNU Emacs)
+;(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))
+; (wl-draft-self-reply-p . (("To") ("Cc") nil))
+; ("From" . (("From") nil nil))))
+
+;; old defaults < 2.11.0
+;(setq wl-draft-reply-without-argument-list
+; '(((wl-draft-self-reply-p
+; "Followup-To") . (("To") ("Cc") ("Followup-To")))
+; ((wl-draft-self-reply-p
+; "Newsgroups") . (("To") ("Cc") ("Newsgroups")))
+; ((wl-draft-self-reply-p
+; "From") . (("To") ("Cc") nil))
+; ("Followup-To" . (nil nil ("Followup-To")))
+; ("Mail-Followup-To" . (("Mail-Followup-To") nil ("Newsgroups")))
+; ("Reply-To" . (("Reply-To") ("To" "Cc" "From") ("Newsgroups")))
+; ("From" . (("From") ("To" "Cc") ("Newsgroups")))))
+;(setq wl-draft-reply-with-argument-list
+; '(((wl-draft-self-reply-p
+; "Followup-To") . (("To") ("Cc") ("Followup-To")))
+; ((wl-draft-self-reply-p
+; "Newsgroups") . (("To") ("Cc") ("Newsgroups")))
+; ((wl-draft-self-reply-p
+; "From") . (("To") ("Cc") nil))
+; ("Reply-To" . (("Reply-To") nil nil))
+; ("Mail-Reply-To" . (("Mail-Reply-To") nil nil))
+; ("From" . (("From") nil nil))))
+
+
+;;; [[ Message Display Settings ]]
+
+;; Hidden header field in message buffer.
+(setq wl-message-ignored-field-list
+ '(".*Received:" ".*Path:" ".*Id:" "^References:"
+ "^Replied:" "^Errors-To:"
+ "^Lines:" "^Sender:" ".*Host:" "^Xref:"
+ "^Content-Type:" "^Precedence:"
+ "^Status:" "^X-VM-.*:"))
+
+;; Displayed header field in message buffer.
+;; This value precedes `wl-message-ignored-field-list'
+(setq wl-message-visible-field-list '("^Message-Id:"))
+
+;; X-Face
+(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 Emacs21
+ ((and (not (featurep 'xemacs))
+ (= emacs-major-version 21)
+ (module-installed-p 'x-face-e21))
+ (autoload 'x-face-decode-message-header "x-face-e21")
+ (setq wl-highlight-x-face-function 'x-face-decode-message-header))
+
+ ;; for Emacs 19.34, Emacs 20.x
((module-installed-p 'x-face-mule)
- ;; x-face-mule 0.20\e$B0J8e\e(B
- (setq wl-highlight-x-face-func
- (function
- (lambda (&rest dummy)
- (x-face-decode-message-header))))
- (require 'x-face-mule)
- )))
-
-;; rule for auto refile.
-;(setq wl-refile-rule-alist
-; '(
-; ("x-ml-name"
-; ("^Wanderlust" . "+wl")
-; ("^Elisp" . "+elisp"))
-; ("From"
-; ("teranisi@isl.ntt.co.jp" . "+teranisi"))))
-
-;; Marks to skip auto-refile (default is "N" "U" "!").
-;; nil means all message is auto-refiled.
-;(setq wl-summary-auto-refile-skip-marks nil)
+ ;; 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))
+ ))
;; Scoring.
;; "all.SCORE" file is used regardless of wl-score-folder-alist.
; ("^-"
; "news.SCORE")))
-;; directory for storing score files.
-; (setq wl-score-files-directory "~/.elmo/")
+;; rule for auto refile.
+;(setq wl-refile-rule-alist
+; '(
+; ("x-ml-name"
+; ("^Wanderlust" . "+wl")
+; ("^Elisp" . "+elisp"))
+; ("From"
+; ("foo@example\\.com" . "+foo"))))
+
+;; Marks to skip auto-refile (default is "N" "U" "!").
+;; nil means all message is auto-refiled.
+;(setq wl-summary-auto-refile-skip-marks nil)
;;; dot.wl ends here