* wl-summary.el (wl-summary-line-list-count): New function, merged
[elisp/wanderlust.git] / samples / en / dot.wl
1 ;;; dot.wl -- sample setting file for Wanderlust        -*- emacs-lisp -*-
2
3 ;; [[ Requirement Setting ]]
4
5 ;; Following must be included in ~/.emacs
6 ;; (No need if installed as XEmacs package.)
7 (autoload 'wl "wl" "Wanderlust" t)
8 (autoload 'wl-other-frame "wl" "Wanderlust on new frame." t)
9 (autoload 'wl-draft "wl-draft" "Write draft with Wanderlust." t)
10
11 ;; Icon directory
12 ;; (No need if installed as XEmacs package.)
13 ;(setq wl-icon-directory "/usr/local/lib/emacs/etc")
14
15
16 ;; [[ SEMI Setting ]]
17
18 ;; Disable inline display of HTML part.
19 ;; Put before load `mime-setup'
20 (setq mime-setup-enable-inline-html nil)
21
22 ;; Don't split large message.
23 (setq mime-edit-split-message nil)
24
25 ;; If lines of message are larger than this value, treat it as `large'.
26 ;(setq mime-edit-message-default-max-lines 1000)
27
28
29 ;;; [[ Private Setting ]]
30
31 ;; Header From:
32 ;(setq wl-from "Your Name <e-mail@example.com>")
33
34 ;; User's mail addresses.
35 (setq wl-user-mail-address-list
36       (list (wl-address-header-extract-address wl-from)
37             ;; "e-mail2@example.com"
38             ;; "e-mail3@example.net" ...
39             ))
40
41 ;; Subscribed mailing list.
42 (setq wl-subscribed-mailing-list
43       '("wl@lists.airs.net"
44         "apel-ja@m17n.org"
45         "emacs-mime-ja@m17n.org"
46         ;; "ml@example.com" ...
47         ))
48
49 ;; If (system-name) does not return FQDN,
50 ;; set following as a local domain name without hostname.
51 ;; ((system-name) "." wl-local-domain is used as domain part of Message-ID
52 ;; and an argument of HELO in SMTP.
53 ;(setq wl-local-domain "example.com")
54
55 ;; Specific domain part for message-id.
56 ;(setq wl-message-id-domain "hostname.example.com")
57
58 ;; Use wl-from for generating message-id.
59 ;; wl-message-id-use-wl-from precedes wl-local-domain and wl-message-id-domain.
60 ;(setq wl-message-id-use-wl-from t)
61
62 ;;; [[ Server Setting ]]
63
64 ;; Default IMAP4 server
65 (setq elmo-imap4-default-server "localhost")
66 ;; Default POP server
67 (setq elmo-pop3-default-server "localhost")
68 ;; SMTP server
69 (setq wl-smtp-posting-server "localhost")
70 ;; Default NNTP server
71 (setq elmo-nntp-default-server "localhost")
72 ;; NNTP server name for posting
73 (setq wl-nntp-posting-server elmo-nntp-default-server)
74
75 ;; IMAP authenticate type setting
76 (setq elmo-imap4-default-authenticate-type 'clear) ; raw
77 ;(setq elmo-imap4-default-authenticate-type 'cram-md5) ; CRAM-MD5
78
79 ;; POP-before-SMTP
80 ;(setq wl-draft-send-mail-function 'wl-draft-send-mail-with-pop-before-smtp)
81
82
83 ;;; [[ Basic Setting ]]
84
85 ;; Default folder for `wl-summary-goto-folder'.
86 ;(setq wl-default-folder "+inbox")
87
88 ;; Default string for folder name completion.
89 ;(setq wl-default-spec "+")
90
91 ;; Folder Carbon Copy
92 ;(setq wl-fcc "+outbox")
93
94 ;; Confirm before exitting Wanderlust.
95 (setq wl-interactive-exit t)
96
97 ;; Confirm before sending message.
98 (setq wl-interactive-send t)
99
100 ;; Create opened thread.
101 ;(setq wl-thread-insert-opened t)
102
103 ;; Keep folder window beside summary. (3 pane)
104 ;(setq wl-stay-folder-window t)
105
106 ;; Truncate long lines.
107 ;(setq wl-message-truncate-lines t)
108 ;(setq wl-draft-truncate-lines t)
109 ;; Following line is needed for XEmacs older than 21.4.6.
110 ;(setq truncate-partial-width-windows nil)
111
112 ;; Open new frame for draft buffer.
113 ;(setq wl-draft-use-frame t)
114
115 ;; Don't limit indent for thread view
116 ;(setq wl-summary-indent-length-limit nil)
117 ;(setq wl-summary-width nil)
118
119 ;; Divide thread by change of subject.
120 ;(setq wl-summary-divide-thread-when-subject-changed t)
121
122 ;; Change format of thread view
123 ;(setq wl-thread-indent-level 2)
124 ;(setq wl-thread-have-younger-brother-str "+"
125 ;      wl-thread-youngest-child-str      "+"
126 ;      wl-thread-vertical-str            "|"
127 ;      wl-thread-horizontal-str          "-"
128 ;      wl-thread-space-str               " ")
129
130 ;; display first message automatically.
131 ;(setq wl-auto-select-first t)
132
133 ;; goto next folder when exit from summary.
134 ;(setq wl-auto-select-next t)
135
136 ;; skip folder if there is no unread message.
137 ;(setq wl-auto-select-next 'skip-no-unread)
138
139 ;; jump to unread message in 'N' or 'P'.
140 ;(setq wl-summary-move-order 'unread)
141
142 ;; notify mail arrival
143 ;(setq wl-biff-check-folder-list '("%inbox"))
144 ;(setq wl-biff-notify-hook '(ding))
145
146
147 ;;; [[ Network ]]
148
149 ;; cache setting.
150 ;; (messages in localdir, localnews, maildir are not cached.)
151 ;(setq elmo-archive-use-cache nil)
152 ;(setq elmo-nntp-use-cache t)
153 ;(setq elmo-imap4-use-cache t)
154 ;(setq elmo-pop3-use-cache t)
155
156 ;; Enable disconnected operation in IMAP folder.
157 (setq elmo-enable-disconnected-operation t)
158
159 ;; Store draft message in queue folder if message is sent in unplugged status.
160 (setq wl-draft-enable-queuing t)
161 ;; when plug status is changed from unplugged to plugged,
162 ;; queued message is flushed automatically.
163 (setq wl-auto-flush-queue t)
164
165 ;; offline at startup.
166 ;(setq wl-plugged nil)
167 ;; change plug status by server or port at startup.
168 ;(add-hook 'wl-make-plugged-hook
169 ;         '(lambda ()
170 ;            ;; Add or Change plug status for SERVER and PORT.
171 ;            (elmo-set-plugged plugged(t/nil) server port)
172 ;            ;; When omit port, SEVERS all port was changes.
173 ;            ;; (Can't add plug status without PORT)
174 ;            (elmo-set-plugged plugged(t/nil) server)
175 ;            ))
176
177
178 ;;; [[ Special Setting ]]
179
180 ;; open unread group folder after checking.
181 ;(add-hook 'wl-folder-check-entity-hook
182 ;         '(lambda ()
183 ;            (wl-folder-open-unread-folder entity)
184 ;            ))
185
186 ;; Change summary display function.
187
188 ;; Set extra field use with `elmo-msgdb-overview-entity-get-extra-field'.
189 ;; And use with auto-refile.
190 (setq elmo-msgdb-extra-fields
191       '("newsgroups"
192         "list-id" "x-ml-name" "mailing-list"
193         "x-mail-count" "x-ml-count" "x-sequence"))
194
195 ;; ML message displays ML name and ML sequence number in subject.
196 (setq wl-summary-line-format "%M/%D(%W)%h:%m %t%[%17F %] %# %s")
197
198 ;; imput asynchronously.
199 ;; (utils/im-wl.el is needed to be installed.
200 ;;  Don't forget setting ~/.im/Config (Smtpservers).
201 ;;  note that wl-draft-enable-queuing is not valid.)
202 ;(autoload 'wl-draft-send-with-imput-async "im-wl")
203 ;(setq wl-draft-send-function 'wl-draft-send-with-imput-async)
204
205
206 ;; non-verbose User-Agent: field
207 ;(setq wl-generate-mailer-string-function
208 ;      'wl-generate-user-agent-string-1)
209
210
211 ;; Automatically save modified draft buffers in every 20 seconds.
212 ;(defun my-wl-auto-save-draft-buffers ()
213 ;  (let ((buffers (wl-collect-draft)))
214 ;    (save-excursion
215 ;      (while buffers
216 ;       (set-buffer (car buffers))
217 ;       (if (buffer-modified-p) (wl-draft-save))
218 ;       (setq buffers (cdr buffers))))))
219 ;(run-with-idle-timer 20 t 'my-wl-auto-save-draft-buffers)
220
221
222 ;;; [[ Template ]]
223
224 ;; template
225 ;(setq wl-template-alist
226 ;      '(("default"
227 ;        ("From" . wl-from)
228 ;        ("Organization" . "organization for default")
229 ;        (body . "Hello, this is XXX \n")) ; body
230 ;       ("report"
231 ;        ("To" . "boss@example.com")
232 ;        ("Subject" . "Report")
233 ;        (top . "Sir, here is my report\n") ; insert in top.
234 ;        (bottom-file . "~/work/report.txt") ; insert file in bottom
235 ;        )
236 ;       ))
237
238 ;; Change headers in draft sending time.
239 ;(setq wl-draft-config-alist
240 ;      '((reply                         ; see reply buffer
241 ;        "^To: .*test-notsend-wl@lists\\.airs\\.net"
242 ;        (template . "default"))        ; template
243 ;       ("^To: .*test-notsend-wl@lists\\.airs\\.net"
244 ;        ding                           ; function
245 ;        ("From" . wl-from)             ; variable
246 ;        ("Organization" . "organization")) ; string
247 ;       ("^Newsgroups: test.*"
248 ;        ("Organization" . "organization for nntp."))
249 ;       ))
250
251 ;; Change headers in draft preparation time.
252 ;(add-hook 'wl-mail-setup-hook
253 ;         '(lambda ()
254 ;            (unless wl-draft-reedit;   ; don't apply when reedit.
255 ;              (wl-draft-config-exec wl-draft-config-alist))))
256
257
258 ;; [[ Reply ]]
259 ;; header value setting for mail reply.
260
261 ;; Wide window for draft buffer.
262 ;(setq wl-draft-reply-buffer-style 'full)
263
264 ;; Remove fullname in reply message header.
265 ;(setq wl-draft-reply-use-address-with-full-name nil)
266
267 ;; "a" (without-argument) reply to author (Reply-To or From).
268 ;; if 'X-ML-Name' and 'Reply-To' exists, reply to 'Reply-To'.
269 ;(setq wl-draft-reply-without-argument-list
270 ;      '((("X-ML-Name" "Reply-To") . (("Reply-To") nil nil))
271 ;       ("X-ML-Name" . (("To" "Cc") nil nil))
272 ;       ("Followup-To" . (nil nil ("Followup-To")))
273 ;       ("Newsgroups" . (nil nil ("Newsgroups")))
274 ;       ("Reply-To" . (("Reply-To") nil nil))
275 ;       ("Mail-Reply-To" . (("Mail-Reply-To") nil nil))
276 ;       ("From" . (("From") nil nil))))
277
278 ;; "C-u a" (with-argument) reply to all.
279 ;(setq wl-draft-reply-with-argument-list
280 ;      '(("Followup-To" . (("From") nil ("Followup-To")))
281 ;       ("Newsgroups" . (("From") nil ("Newsgroups")))
282 ;       ("Mail-Followup-To" . (("Mail-Followup-To") nil ("Newsgroups")))
283 ;       ("From" . (("From") ("To" "Cc") ("Newsgroups")))))
284
285
286 ;;; [[ Message Display Settings ]]
287
288 ;; Hidden header field in message buffer.
289 (setq wl-message-ignored-field-list
290       '(".*Received:" ".*Path:" ".*Id:" "^References:"
291         "^Replied:" "^Errors-To:"
292         "^Lines:" "^Sender:" ".*Host:" "^Xref:"
293         "^Content-Type:" "^Precedence:"
294         "^Status:" "^X-VM-.*:"))
295
296 ;; Displayed header field in message buffer.
297 ;; This value precedes `wl-message-ignored-field-list'
298 (setq wl-message-visible-field-list '("^Message-Id:"))
299
300 ;; X-Face
301 (when window-system
302   (cond ((and (featurep 'xemacs)        ; for XEmacs
303               (module-installed-p 'x-face))
304          (autoload 'x-face-xmas-wl-display-x-face "x-face")
305          (setq wl-highlight-x-face-function 'x-face-xmas-wl-display-x-face))
306
307         ;; for Emacs21
308         ((and (not (featurep 'xemacs))
309               (= emacs-major-version 21)
310               (module-installed-p 'x-face-e21))
311          (autoload 'x-face-decode-message-header "x-face-e21")
312          (setq wl-highlight-x-face-function 'x-face-decode-message-header))
313
314         ;; for Emacs 19.34, Emacs 20.x
315         ((module-installed-p 'x-face-mule)
316          ;; x-face-mule distributed with bitmap-mule 8.0 or later
317          (autoload 'x-face-decode-message-header "x-face-mule")
318          (setq wl-highlight-x-face-function 'x-face-decode-message-header))
319         ))
320
321 ;; Scoring.
322 ;; "all.SCORE" file is used regardless of wl-score-folder-alist.
323 ;(setq wl-score-folder-alist
324 ;      '(("^-comp\\."
325 ;        "news.comp.SCORE"
326 ;        "news.SCORE")
327 ;       ("^-"
328 ;        "news.SCORE")))
329
330 ;; rule for auto refile.
331 ;(setq wl-refile-rule-alist
332 ;      '(
333 ;       ("x-ml-name"
334 ;        ("^Wanderlust" . "+wl")
335 ;        ("^Elisp" . "+elisp"))
336 ;       ("From"
337 ;        ("foo@example\\.com" . "+foo"))))
338
339 ;; Marks to skip auto-refile (default is "N" "U" "!").
340 ;; nil means all message is auto-refiled.
341 ;(setq wl-summary-auto-refile-skip-marks nil)
342
343 ;;; dot.wl ends here