Update.
[elisp/wanderlust.git] / samples / en / dot.wl
index bad17f4..cedef09 100644 (file)
@@ -3,15 +3,27 @@
 ;; [[ 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