* Disconnected Operations:: Off-Line management
* Expire and Archive:: Automatic expiration and archiving of messages
* Scoring:: Score of the messages
-* Split messages:: Splitting messages
* Address Book:: Management of Address Book
* Spam Filter:: Spam filtering
-* Batch Processing:: Invoke commands in batch mode
-* Customization:: Customizing Wanderlust
+* Advanced Issues:: Advanced Issues
* Migration:: Switch from older version of Wanderlust
* Terminology:: Terminologies
* Mailing List:: Wanderlust mailing list
Wanderlust uses ELMO as it's interface, so you can use every folder types
supported by ELMO.
-As of version @value{VERSION}, 14 types of folders are predefined. These
+As of version @value{VERSION}, 15 types of folders are predefined. These
are IMAP, NNTP, LocalDir(MH), Maildir, News Spool, Archive, POP,
-Shimbun, Namazu, Multi, Filter, Pipe, Internal and File folder types.
+Shimbun, Search, Multi, Filter, Pipe, File, Access and Internal folder
+types.
@menu
* IMAP Folder:: @samp{%} -- IMAP folder
* Archive Folder:: @samp{$} -- Archive folder
* POP Folder:: @samp{&} -- POP folder
* Shimbun Folder:: @samp{@@} -- Shimbun Folder
-* Namazu Folder:: @samp{[} -- Namazu Folder
+* Search Folder:: @samp{[} -- Search Folder
* Multi Folder:: @samp{*} -- Multi folder
* Filter Folder:: @samp{/} -- Filter folder
* Pipe Folder:: @samp{|} -- Pipe folder
* Internal Folder:: @samp{'} -- Internal folder
* File Folder:: -- File folder
+* Access Folder:: -- Access folder
@end menu
@example
@group
-@samp{-} @var{newsgroup} [[@samp{:} @var{username}][@samp{@@} @var{hostname}][@samp{:} @var{port}]][@samp{!}]
+@samp{-} @var{newsgroup} [@samp{:} @var{username}][@samp{@@} @var{hostname}][@samp{:} @var{port}][@samp{!}]
@end group
@end example
@example
@group
-@samp{&} [@var{username}][[@samp{/} @var{authenticate-type}][@samp{:} @var{numbering-method}][@samp{@@} @var{hostname}][@samp{:} @var{port}]][@samp{!}]
+@samp{&} [@var{username}][@samp{/} @var{authenticate-type}][@samp{:} @var{numbering-method}][@samp{@@} @var{hostname}][@samp{:} @var{port}][@samp{!}]
@end group
@end example
folder name.
-@node Shimbun Folder, Namazu Folder, POP Folder, Folders
+@node Shimbun Folder, Search Folder, POP Folder, Folders
@section Shimbun Folder
@cindex @samp{@@}
@cindex Shimbun Folder
'("^@@airs\\." "^@@namazu\\."))
@end example
-@kbd{s rescan} is needed after fetching to update summary view.
+Update summary view automatically after fetching.
@end table
-@node Namazu Folder, Multi Folder, Shimbun Folder, Folders
-@section Namazu Folder
+@node Search Folder, Multi Folder, Shimbun Folder, Folders
+@section Search Folder
@cindex @samp{[}
-@cindex Namazu Folder
-@cindex Folder, Namazu
+@cindex Search Folder
+@cindex Folder, Search
@cindex Folder, Text Search
-@pindex Namazu
-@pindex nmz
-A folder to access messages found in namazu-index with some condition.
-It uses namazu (@uref{http://www.namazu.org/}) for search.
+
+A folder to access messages found by an external program with some
+condition.
Format:
@example
@group
-@samp{[} @var{search condition} @samp{]} [ @var{absolute path of namazu index} ]
+@samp{[} @var{search condition} @samp{]} [ @var{search target} [ @samp{!} @var{search engine} ] ]
@end group
@end example
-Default value of the path of namazu index can be assigned by @code{elmo-nmz-default-index-path}.
+The format of the @var{search condition} and @var{search target} depend
+on the @var{search engine}.
+
+@subsection Supported search engines
+
+Supported search engines are following ones. Default search engine can
+be assigned by @code{elmo-search-default-engine}.
+
+@menu
+* namazu:: namazu
+* grep:: grep
+@end menu
+
+
+@node namazu, grep, Search Folder, Search Folder
+@subsection namazu
+@pindex namazu
+
+The messages registered in the namazu-index is found by using namazu
+(@uref{http://www.namazu.org/}).
+
+@var{search condition} is a query of namazu. Please refer to the
+document of the attached to namazu for details.
+
+@var{search target} is a namazu-index used for search. The directory
+with the index or the alias that explain in the following can be
+specified. Default value of the path of namazu index can be assigned by
+@code{elmo-search-namazu-default-index-path}.
Example:
@end group
@end example
-@subsection TIPS
+@c @subsection TIPS
@subsubsection Enter space to separate keywords
Example:
@example
-(setq elmo-nmz-index-alias-alist
+(setq elmo-search-namazu-index-alias-alist
'(("cache" . "~/.elmo/cache")
("docs" . "~/documents")))
@end example
@subsubsection Multiple indices
-You can specify a list for @code{elmo-nmz-default-index-path} and
-@code{elmo-nmz-index-alias-alist}.
+You can specify a list for @code{elmo-search-namazu-default-index-path} and
+@code{elmo-search-namazu-index-alias-alist}.
When list is specified, all index contained in the list is used as the
namazu indices.
Example:
@example
-(setq elmo-nmz-index-alias-alist
+(setq elmo-search-namazu-index-alias-alist
'(("all" . ("~/.elmo/cache" "~/documents"))
("cache" . "~/.elmo/cache")))
@end example
to execute a namazu search with keyword @samp{wanderlust} using indices in the
directory @file{~/.elmo/cache} and @file{~/documents}.
-@node Multi Folder, Filter Folder, Namazu Folder, Folders
+@node grep, , namazu, Search Folder
+@subsection grep
+@pindex grep
+
+The files that exists in the directory specified with the @var{search
+target} are found by using grep.
+
+@var{search condition} is a regular expression of grep. The directory
+as @var{search target} cannot be omitted.
+
+Example:
+
+@example
+@group
+[wanderlust]~/Mail/inbox!grep
+ -> search messages matched with "wanderlust"
+ from the directory "~/Mail/inbox"
+
+["[sr]emi"]~/Mail/semi!grep
+ -> If @samp{]} is included in regular expression,
+ @var{search condition} should be enclosed with @samp{"}.
+@end group
+@end example
+
+
+@node Multi Folder, Filter Folder, Search Folder, Folders
@section Multi Folder
@cindex @samp{*}
@cindex Multi Folder
@item
Date filter: @samp{since:@var{date}}, @samp{before:@var{date}}
-since: only messages arrived since @var{date} are picked.
-before: only messages arrived before @var{date} are picked.
+since: only messages arrived since @var{date} are picked (@var{date} is included).
+before: only messages arrived before @var{date} are picked (@var{date} is not included).
You can specify following as @var{date}.
unread -> unread
important -> important
answered -> replied
+forwarded -> forwarded
digest -> unread or important
-any -> unread or important or replied
+any -> unread or replied or forwarded or global-flag.
@end group
@end example
-You can also use flags which you have set as global flag.
+You can also use flags which you have set as `global-flag'. global-flag
+is a flag which has arbitrary name. You can put global-flag on messages
+by invoking @code{wl-summary-set-flags} (Key @key{F}). By default,
+@samp{important} flag is prepared. You can view messages with
+global-flag by visiting the subfolder of @samp{'flag} folder.
+
@xref{Internal Folder}.
Example:
(@file{~/.elmo/cache}).
-@node File Folder, , Internal Folder, Folders
+@node File Folder, Access Folder, Internal Folder, Folders
@section File folder
@cindex File Folder
@end example
+@node Access Folder, , File Folder, Folders
+@section Access folder
+@cindex Access Folder
+
+A folder to access virtual folder which collects messages from a root
+folder and subfolders of one. The add and remove of the subfolder is
+automatically reflected.
+
+
+Format:
+
+@example
+@samp{access:} @var{root-folder}
+@end example
+
+Example:
+
+@example
+@group
+access:%INBOX -> All subfolders of IMAP mailbox "inbox".
+access:'cache -> All of 'cache folder
+@end group
+@end example
+
+
@node Folder, Summary, Folders, Top
@chapter Folder mode
@cindex Folder
@subsection Temporary Marks
@cindex Mark, Temporary
-There are four temporary marks,
+There are seven temporary marks,
@samp{*}, @samp{d}, @samp{D}, @samp{o}, @samp{O}, @samp{i} and @samp{~}.
Temporary marks indicates message operations.
@subsection Persistent Marks
-There are five persistent marks, @samp{N}, @samp{?}, @samp{U}, @samp{!},
-@samp{u}, @samp{A}, @samp{&} and @samp{$}.
+There are ten persistent marks, @samp{!}, @samp{N}, @samp{n}, @samp{U},
+@samp{u}, @samp{A}, @samp{a}, @samp{F}, @samp{f} and @samp{$}.
The persistent mark indicates the message's status and it is saved.
Each persistent mark indicates:
@table @samp
@item N
It is new message.
-@item ?
-It is new but cached message.
+@item n
+It is new message. It differs from @samp{N} that message with @samp{n}
+is already cached.
@item U
It is unread message.
-@item !
-It is unread but cached message.
@item u
-It is read but it is not cached.
+It is unread message. It differs from @samp{U} that message with @samp{u}
+is already cached.
+@item !
+It is message already read. It differs from message without mark that
+message with @samp{!} is not cached yet.
@item A
It is already replied message.
-@item &
-It is already replied but cached message.
+@item a
+It is already replied message. It differs from @samp{A} that message
+with @samp{a} is already cached.
+@item F
+It is already forwarded message.
+@item f
+It is already forwarded message. It differs from @samp{F} that message
+with @samp{f} is already cached.
@item $
It is a message with some global flag. It is convenient to put this
mark on the messages to remember (If you want to remember to write a
persistent mark.
@end table
-@samp{N}, @samp{U}, @samp{u}, @samp{A} indicates that the message have
-no cache. Messages with the marks other than these, you can read them
-in the offline status even they are in the IMAP folder or netnews
-folder.
+@samp{N}, @samp{U}, @samp{!}, @samp{A}, @samp{F} indicates that the
+message have no cache. Messages with the marks other than these, you
+can read them in the offline status even they are in the IMAP folder or
+netnews folder.
Among messages with persistent marks, ones with marks specified by
@code{wl-summary-expire-reserve-marks} are excluded from the expiration
@table @code
@item wl-message-buffer-prefetch-folder-type-list
@vindex wl-message-buffer-prefetch-folder-type-list
-The initial setting is @code{t}. In this case, prefetch messages in all
-folders.
-If it is a list of folder types, it specifies the folder types in which
-message prefetching is enabled.
-Following is an example (prefetch messages in nntp and imap4 folders)
-
-@lisp
-@group
-(setq wl-message-buffer-prefetch-folder-type-list
- '(nntp imap4))
-@end group
-@end lisp
-
-In this case, multi folder that contains localdir and imap4 prefetches
-only imap4 messages. This variable precedes the value of
+The initial setting is @code{'(imap4 nntp)}. If it is a list of folder
+types, it specifies the folder types in which message prefetching is
+enabled. In initial setting, messages are prefetch only in the nntp and
+imap4 folders. In this case, multi folder that contains localdir and
+imap4 prefetches only imap4 messages. This variable precedes the value of
@code{wl-message-buffer-prefetch-folder-list}.
+To prefetch messages in all folder types, specify @code{t}.
@item wl-message-buffer-prefetch-folder-list
@vindex wl-message-buffer-prefetch-folder-list
@item wl-message-buffer-prefetch-depth
@vindex wl-message-buffer-prefetch-depth
-The initial setting is 3. The number of messages for automatical prefetch.
+The initial setting is 1. The number of messages for automatical prefetch.
@item wl-message-buffer-prefetch-idle-time
@vindex wl-message-buffer-prefetch-idle-time
-The initial setting is 0.2 (in seconds). The period of automatical prefetch.
+The initial setting is 1 (in seconds). The period of automatical prefetch.
@item wl-message-buffer-prefetch-threshold
@vindex wl-message-buffer-prefetch-threshold
@end group
@end lisp
-Where the number set the column number of the field (for negative value,
-filled from right)
+Where the number set the column number of the field. If negative value,
+the column is filled from right. If the number begins with @samp{0},
+@samp{0} is used for filling columns instead of @samp{ }.
+
+Example:
+
+@example
+@group
+%5n -> `1 '
+%-05n -> `00001'
+@end group
+@end example
+
Major control strings defined by @code{wl-summary-line-format-spec-alist}
are displayed in the following list.
@example
@group
%n message number
+%T temporary mark
+%P persistent mark
%Y year
%M month
%D day
%S size
%c +number-of-children: (display only for opened thread)
%C [+number-of-children] (display only for opened thread)
-%T temporary mark (mandatory)
-%P persistent mark (mandatory)
+%# mailing list information (`(' ML-name [ ` ' ML-number ] `)')
+%l number in the mailing list
+%@@ `@@' only if the first MIME part is multipart/mixed
+%~ ` ' only if previous column is not empty
@end group
@end example
-@code{wl-summary-line-format} must contain temporary mark (@samp{%T})
-and persistent mark (@samp{%P}). Furthermore, these marks must appear at
-the constant column. For example, if you specify @samp{%T} or
+The temporary mark (@samp{%T}) and persistent mark (@samp{%P}) must
+appear at the constant column. For example, if you specify @samp{%T} or
@samp{%P} after the @samp{%t}, which changes its length by thread
position, marks are not treated correctly.
@item .
@kindex . (Summary)
@findex wl-summary-redisplay
-Redisplay a message at the current cursor point.
-If this command is called with prefix argument,
-Redisplay message regardless of the message cache (message is re-loaded
-from source).
-(@code{wl-summary-redisplay})
+Redisplay a message at the current cursor point with default display
+type. If this command is called with prefix argument, reload and redisplay
+message regardless of the message cache.
+If this command is called with twice multiples @kbd{C-u} as @kbd{C-u C-u .},
+reload and redisplay message with current display type regardless of the
+message cache. (@code{wl-summary-redisplay})
@item <
@kindex < (Summary)
@item @key{RET}
@kindex @key{RET} (Summary)
-@findex wl-summary-next-line-content
+@findex wl-summary-enter-handler
Display the next line of the message at the current cursor point.
-Display the message at the current cursor point if it is not displayed yet.
-(@code{wl-summary-next-line-content})
+Display the message at the current cursor point if it is not displayed
+yet. (@code{wl-summary-next-line-content}) If prefix argument is
+specified, message is scrolled up by one line.
+(@code{wl-summary-prev-line-content}) If prefix argument is numeric,
+cursor is jumped to the message with specified number.
@item -
@itemx M-@key{RET}
@kindex / (Summary)
@findex wl-thread-open-close
Toggle open or close the thread at the current cursor point.
+With prefix argument, open all children threads.
(@code{wl-thread-open-close})
@item [
@item H
@kindex H (Summary)
-@findex wl-summary-redisplay-all-header
-Redisplay the message at current cursor point with all header fields.
-(@code{wl-summary-redisplay-all-header})
+@findex wl-summary-toggle-all-header
+Toggle display type between all and partial header fields and redisplay
+the message at current cursor point. If this command is called with
+prefix argument, reload and redisplay message regardless of the message cache.
+If this command is called with twice multiples @kbd{C-u} as @kbd{C-u C-u H},
+set default display type of summary by current display type of header fields.
+(@code{wl-summary-toggle-all-header})
@item M
@kindex M (Summary)
-@findex wl-summary-redisplay-no-mime
-Redisplay the message at current cursor point without MIME analysis.
-(@code{wl-summary-redisplay-no-mime})
+@findex wl-summary-toggle-mime
+Toggle display type for MIME analysis and redisplay the message at
+current cursor point. A change is performed in the order set as
+@code{wl-summary-display-mime-mode-list}. If this command is called
+with numeric prefix argument, it switch directly as follows.
+
+@example
+@group
+1: Enable MIME analysis.
+2: Enable MIME analysis only for header fields.
+3: Disable MIME analysis.
+@end group
+@end example
+
+If this command is called with twice multiples @kbd{C-u} as @kbd{C-u C-u
+M}, set default display type of summary by current display type of MIME
+analysis. (@code{wl-summary-toggle-mime})
+
+@item C-c C-f
+@kindex C-c C-f (Summary)
+@findex wl-summary-toggle-header-narrowing
+Toggle header body narrowing of the message at current cursor point.
+(@code{wl-summary-toggle-header-narrowing})
@item B
@kindex B (Summary)
rescan Redisplay summary by rescanning present msgdb.
rescan-noscore Redisplay summary by rescanning present msgdb.
Display messages killed by score, too.
+rescan-thread Redisplay summary by rescanning present msgdb.
+ Reconstruct thread, too.
cache-status Sync the all marks with the real status of cache.
mark Update marks.
no-sync Do nothing.
Sort summary order.
You can sort by @samp{date}, @samp{from}, @samp{number}, @samp{subject},
@samp{size} and @samp{list-info}.
+With prefix argument, sort summary lines into descending order.
(@code{wl-summary-sort})
@item T
@item ?
@kindex ? (Summary)
Put @samp{*} mark on the messages that satisfies the specified condition.
+If messages already have @samp{*} mark, new @samp{*} marks are overridden.
+If prefix argument is specified, current @samp{*} marks are removed and
+new @samp{*} marks are appended.
+
@findex wl-summary-pick
(@code{wl-summary-pick})
The initial setting is @code{t}.
If non-nil, message is split as pages by @samp{^L}.
-@item wl-message-window-size
-@vindex wl-message-window-size
-The initial setting is '(1 . 4).
-A cons cell to specify the rate of summary and message window.
-car:cdr corresponds summary:message.
-
@item wl-summary-from-function
@vindex wl-summary-from-function
Format function to display sender in summary.
The initial setting is t.
If non-nil, cursor point is moved to the center of the summary window.
+@item wl-summary-max-thread-depth
+@vindex wl-summary-max-thread-depth
+The initial setting is 30.
+If thread depth is larger than this value, divide it.
+
@item wl-summary-divide-thread-when-subject-changed
@vindex wl-summary-divide-thread-when-subject-changed
The initial setting is @code{nil}. If non-nil, thread is split if
The initial setting is @code{t}. If non-nil, messages read in Shimbun
folders are cached.
+@item wl-summary-resend-use-cache
+@vindex wl-summary-resend-use-cache
+The initial setting is @code{nil}¡£If non-nil, messages are resend
+using cache even in the offline status. Note that if you use cache,
+the message identity is not guaranteed.
+
@item wl-folder-process-duplicates-alist
@vindex wl-folder-process-duplicates-alist
The initial setting is @code{nil}.
@end group
@end lisp
-Specify the color of message in summary buffer with flag. If multiple
-global flags are on one message, the former flag in this list is
-preferred.
+Specify the color and the mark of message in summary buffer with flag.
+If the mark are omitted, the mark specified in the variable
+@code{wl-summary-flag-mark} is assumed. If multiple global flags are on
+one message, the former flag in this list is preferred.
+
+Example:
+
+@lisp
+@group
+(setq wl-summary-flag-alist
+ '((important "purple")
+ (todo "red")
+ (business "green" "B")
+ (private "blue" "X")))
+@end group
+@end lisp
+
+@item wl-summary-display-mime-mode-list
+@vindex wl-summary-display-mime-mode-list
+The initial setting is the list shown below:
+
+@lisp
+@group
+(mime as-is)
+@end group
+@end lisp
+
+@noindent
+The function @code{wl-summary-toggle-mime} switch specification of MIME
+analysis in the order of this list. You can specify one of the follows.
+
+@example
+@code{mime} : Header and body are decoded.
+@code{header-only} : Only header is decoded.
+@code{as-is} : Header and body are not decoded.
+@end example
@end table
@table @code
@item wl-message-window-size
@vindex wl-message-window-size
-Initial setting is @code{'(1 . 4)}. It is a cons cell and the ratio of
+Initial setting is @code{(1 . 4)}. It is a cons cell and the ratio of
its car and cdr value corresponds to the ratio of Summary and Message
windows.
@vindex wl-message-truncate-lines
The initial value is the value of @code{default-truncate-lines}.
If it is non-nil, truncate long lines in message buffer.
+
+@item wl-message-auto-reassemble-message/partial
+@vindex wl-message-auto-reassemble-message/partial
+The initial setting is @code{nil}.
+If non-nil, automatically reassemble fragments of the message on
+displaying when its MIME media type is message/partial.
@end table
@node Draft, Disconnected Operations, Message, Top
Basically it is Emacs-standard mail mode.
@menu
+* Parameters for Sending::
* Editing Header::
* Editing Message Body and Sending::
* Dynamical Message Re-arrangement::
* POP-before-SMTP::
@end menu
-@node Editing Header, Editing Message Body and Sending, Usage of Draft Mode, Usage of Draft Mode
+@node Parameters for Sending, Editing Header, Usage of Draft Mode, Usage of Draft Mode
+@subsection Parameters for Sending
+
+According to the information of servers to send messages, configure
+following variables.
+
+@table @code
+@item wl-smtp-posting-server
+The name of the SMTP server used for mail transmission.
+
+@item wl-smtp-posting-port
+The SMTP port number for mail transmission.
+Without configuration, use default SMTP port number (25).
+
+@item wl-nntp-posting-server
+The name of NNTP server used for news submission.
+Without configuration, use @code{elmo-nntp-default-server}.
+
+@item wl-nntp-posting-port
+The NNTP port number for news submission.
+Without configuration, use @code{elmo-nntp-default-port}.
+@end table
+
+You may configure following variables on demand. See section
+Variables of Draft Mode for detail @xref{Variables of Draft Mode}.
+
+@table @code
+@item wl-smtp-posting-user
+User name for authentication by SMTP AUTH.
+
+@item wl-smtp-authenticate-type
+The authentication method for SMTP AUTH.
+Without configuration, authentication will not be carried out.
+
+@item wl-smtp-authenticate-realm
+The authentication realm for SMTP AUTH.
+Without configuration, authentication realm will not be specified.
+
+@item wl-smtp-connection-type
+Specify how to establish SMTP connections.
+
+@item wl-nntp-posting-user
+User name for AUTHINFO authentication on news submission.
+
+@item wl-nntp-posting-stream-type
+Specify how to establish NNTP connections.
+@end table
+
+@node Editing Header, Editing Message Body and Sending, Parameters for Sending, Usage of Draft Mode
@subsection Editing Message Header
You can freely edit header region above @samp{--text follows this line--},
If @code{wl-template-visible-select} is @code{nil}, you should type the
name of the template in the mini buffer.
+If @code{wl-template-select} is executed with prefix argument,
+inversed value of @code{wl-template-visible-select} is used.
+
As shown in the example in @code{wl-draft-config-alist}, you can select
@samp{default} template by writing:
@subsection Sending mail by POP-before-SMTP
@cindex POP-before-SMTP
-You can send mail by POP-before-SMTP with this single line:
+You can send mail by POP-before-SMTP. Necessary setting is
@lisp
(setq wl-draft-send-mail-function 'wl-draft-send-mail-with-pop-before-smtp)
@end lisp
@noindent
-Configure the following variables if you need.
+to change mail posting function from its default value @code{wl-draft-send-mail-with-smtp}.
+Also you would configure following variables on demand.
@table @code
@item wl-pop-before-smtp-user
@example
@group
-http://spam.ayamura.org/tools/smPbS.html
http://www.iecc.com/pop-before-smtp.html
@end group
@end example
Cites the content of the current message buffer (the part under cursor).
If the region is active, cites the region (it affects only if
@code{transient-mark-mode} (on GNU Emacs) or @code{zmacs-regions}
-(on XEmacs) is Non-nil).
+(on XEmacs) is Non-nil). If the command is called with prefix argument,
+the text inserted by yank command (the text content of clipboard) is cited.
(@code{wl-draft-yank-original})
@item C-c C-p
The initial setting is @code{nil}.
If non-nil, use new frame for the draft.
+@item wl-draft-reply-default-position
+@vindex wl-draft-reply-default-position
+The initial setting is @code{body}.
+Specify initial cursor position on draft buffer for reply.
+@code{body} is to move cursor to the top of the message body,
+@code{bottom} to the bottom of the message body, and @code{top} to the
+top of the header.
+
@item wl-draft-truncate-lines
@vindex wl-draft-truncate-lines
The initial value is the value of @code{default-truncate-lines}.
If any of @code{wl-subscribed-mailing-list} are contained in @samp{To:}
or @samp{Cc:} field, do not insert @samp{Bcc:} or @samp{Fcc:} field.
+@item wl-draft-send-mail-function
+@vindex wl-draft-send-mail-function
+The initial setting is @code{wl-draft-send-mail-with-smtp}.
+This is the function to post mails. To use POP-before-SMTP, set this to
+@code{wl-draft-send-mail-with-pop-before-smtp}.
+
@item wl-smtp-posting-server
@vindex wl-smtp-posting-server
The initial setting is @code{nil}.
@code{digest-md5}, @code{login}, etc. If @code{nil}, authentication
will not be carried out.
+@item wl-smtp-authenticate-realm
+@vindex wl-smtp-authenticate-realm
+The initial setting is @code{nil}.
+This string-valued variable specifies the authentication realm for SMTP
+AUTH authentication. You have to set this variable for DIGEST-MD5
+authentication and so on.
+If @code{nil}, authentication realm is not specified in the authentication.
+
@item wl-smtp-connection-type
@vindex wl-smtp-connection-type
The initial setting is @code{nil}.
This symbol-valued variable specifies how to establish SMTP connections.
If @code{nil}, use default connection type.
-If it is @code{starttls}, use STARTTLS (RFC2595).
+If it is @code{starttls}, use STARTTLS (RFC3207).
If it is @code{ssl}, use SSL.
@item wl-nntp-posting-server
@vindex wl-nntp-posting-port
The initial setting is @code{nil}.
This is the port number of the NNTP server used for news submission.
-If @code{nil}, @code{elmo-nntp-default-server} is used.
+If @code{nil}, @code{elmo-nntp-default-port} is used.
@item wl-nntp-posting-stream-type
@vindex wl-nntp-posting-stream-type
* Re-file and Copy queue:: Re-file and Copy (IMAP4)
* Creation of Folders:: Create Folders off-line (IMAP4)
* Marking:: Mark (IMAP4)
-* Pre-fetching Reservations:: Pre-fetch (IMAP4, NNTP)
+* Pre-fetching Reservations:: Pre-fetch
@end menu
As soon as Wanderlust becomes on-line, such operations invoked off-line
are reflected in the servers via network.
+If the variable @code{elmo-enable-disconnected-operation} is @code{nil},
+these off-line operations are not executed and causes an error on
+re-file or copy operations.
@node Send Messages off-line, Re-file and Copy queue, Enable Operations, Enable Operations
@subsection Transmission of Messages
@node Pre-fetching Reservations, , Marking, Enable Operations
-@subsection Pre-fetching (IMAP4, NNTP)
-
-You can make reservations for pre-fetching messages in IMAP or NNTP
-folders. Reserved messages are marked with @samp{!} but not cached
-yet. When Wanderlust becomes on-line, they are pre-fetched from
-servers.
-
-If the variable @code{elmo-enable-disconnected-operation} is @code{nil},
-these off-line operations for IMAP4 and NNTP do not take place, and
-off-line re-file, copy or suchlike simply results in error.
-
-Because off-line operations use cache files, it is a bad idea to erase
-them by hand; it may cause Wanderlust to malfunction.
+@subsection Pre-fetching
-If you want to remove caches, be sure to execute @kbd{M-x
-elmo-cache-expire-by-size}. @code{elmo-cache-expire-by-size} does not
-remove caches for messages relevant to off-line operations.
+You can make reservations for pre-fetching messages in networking
+folders (IMAP, NNTP, POP3, shimbun). Reserved messages are marked with
+@samp{u} but not cached yet. When Wanderlust becomes on-line, they are
+pre-fetched from servers.
@node Plugged Mode, Off-line State settings, Enable Operations, Disconnected Operations
@item elmo-enable-disconnected-operation
@vindex elmo-enable-disconnected-operation
-The initial setting is @code{t}. Controls off-line operations
-regarding IMAP4. If non-nil, off-line operations are carried out.
+The initial setting is @code{t}. Controls off-line operations regarding
+networking folders. If non-nil, off-line operations are carried out.
@item elmo-lost+found-folder
@vindex elmo-lost+found-folder
@lisp
@group
-(list wl-summary-important-mark
+(list wl-summary-flag-mark
wl-summary-new-uncached-mark
wl-summary-new-cached-mark
- wl-summary-unread-mark
wl-summary-unread-uncached-mark
wl-summary-unread-cached-mark)
@end group
@end table
-@node Scoring, Split messages, Expire and Archive, Top
+@node Scoring, Address Book, Expire and Archive, Top
@chapter Score of the Messages
@cindex Scoring
@c @cindex Kill File
@end example
-@node Split messages, Address Book, Scoring, Top
-@chapter Message splitting
-@cindex Split messages
+@node Address Book, Spam Filter, Scoring, Top
+@chapter Address Book
+@cindex Address Book
-You can use @code{elmo-split} to split message in folder specified by
-the variable @code{elmo-split-folder} a la @command{procmail} according
-to some specified rules. To use this feature, set as follows in your
-@file{~/.emacs} at first.
+With address book, you can utilize address completion, and you have
+summary displayed with nicknames.
-@lisp
-(autoload 'elmo-split "elmo-split" "Split messages on the folder." t)
-@end lisp
+@menu
+* Mail Addresses:: Definition of Address Book
+* Address Manager:: Address Manager
+@end menu
-Set source folder like following.
-@lisp
-(setq elmo-split-folder "%inbox")
-@end lisp
+@node Mail Addresses, Address Manager, Address Book, Address Book
+@section Address book
+@cindex Address book Definition
+@cindex .addresses
+@cindex Alias, Address
-And specify the rule in the variable @code{elmo-split-rule} (its format
-will be is described below).
-Then you can invoke @kbd{M-x elmo-split} to split messages according to
-@code{elmo-split-rule}. On the other hand, invoke @kbd{C-u M-x elmo-split}
-to do a rehearsal and show result (do not split actually).
+The file @file{~/.addresses} is a simple address book for Wanderlust.
+Make address file @file{~/.addresses}, and edit to suit your requirement.
+The data written in @file{~/.addresses} are used for address completion
+under draft editing mode. Furthermore, they are used when showing names
+in summary display mode. You can safely skip this section, if you don't
+want to customize address completion and summary display.
+It is possible to add/change/remove addresses from @file{~/.addresses} in
+summary buffer after Wanderlust is invoked. @refill
-We will describe how to specify the rule. First of all, see following
-example, please.
+The format is very simple. Like this. @refill
-@lisp
+@example
@group
-(setq elmo-split-rule
- ;; @r{Store messages from spammers into @samp{+junk}}
- '(((or (address-equal from "i.am@@spammer")
- (address-equal from "dull-work@@dull-boy")
- (address-equal from "death-march@@software")
- (address-equal from "ares@@aon.at")
- (address-equal from "get-money@@richman"))
- "+junk")
- ;; @r{Store messages from mule mailing list into @samp{%mule}}
- ((equal x-ml-name "mule") "%mule")
- ;; @r{Store messages from wanderlust mailing list into @samp{%wanderlust}}
- ;; @r{and continue evaluating following rules}
- ((equal x-ml-name "wanderlust") "%wanderlust" continue)
- ;; @r{Store messages from Yahoo user into @samp{+yahoo-@{username@}}}
- ((match from "\\(.*\\)@@yahoo\\.com")
- "+yahoo-\\1")
- ;; @r{Store unmatched mails into @samp{+inbox}}
- (t "+inbox")))
+#
+# @r{Lines begin with @samp{#} are comment.}
+# @r{Empty lines are ignored}
+#
+# @r{Format of each line:}
+# @var{email-address} "@var{nickname} "@var{realname}"
+#
+teranisi@@gohome.org "Yuuichi" "Yuuichi Teranishi"
+foo@@bar.gohome.org "Mr. Foo" "John Foo"
+bar@@foo.gohome.org "Mr. Bar" "Michael Bar"
@end group
-@end lisp
+@end example
-The basic unit of the rule is a combination like
+@noindent
+One line defines one persons description.
-@lisp
-(@samp{CONDITION} @samp{ACTION} [@code{continue}])
-@end lisp
+Actually, in default setup, @var{nickname} is used in summary-mode and
+@var{realname} is used in draft preparation mode. This behavior is
+better understood if you try it and confirmed the function first. You
+can write and try a small definition, so you will know the idea of the
+address book before writing a big one.
-If @samp{CONDITION} is true, @samp{ACTION} is performed.
-The 1st element @samp{CONDITION} is a condition represented by a
-balanced expression (sexp). Its grammar will be explained below.
-The 2nd element @samp{ACTION} is the name of the folder to split
-messages into, or a symbol. When the 3rd element @code{continue} is
-specified as symbol, evaluating rules is not stopped even when the
-condition is satisfied.
+And, if MH alias file is specified in variable @code{wl-alias-file},
+it is used as an address information in the draft preparation mode.
-The grammar for @samp{CONDITION} is as follows. See example above to
-learn how to write the condition practically.
+If variable @code{wl-use-ldap} is non-nil (initial setting is
+@code{nil}), address completion in draft mode uses LDAP information.
-@enumerate
-@item
-Functions which accept arguments @samp{FIELD-NAME} and @samp{VALUE}.
-(@samp{FIELD-NAME} is a symbol that describes the field name)
-
-@table @code
-@item @code{equal}
-True if the field value equals to @samp{VALUE}.
-Case of the letters are ignored.
-@item @code{match}
-True if the field value matches to VALUE.
-@samp{VALUE} can contain @code{\&} and @code{\N} which will substitute
-from matching @code{\(\)} patterns in the previous @samp{VALUE}.
-@item @code{address-equal}
-True if one of the addresses in the field equals to
-@samp{VALUE}. Case of the letters are ignored.
-@item @code{address-match}
-True if one of the addresses in the field matches to
-@samp{VALUE}.
-@samp{VALUE} can contain @code{\&} and @code{\N} which will substitute
-from matching @code{\(\)} patterns in the previous @samp{VALUE}.
-@end table
-
-@item
-Functions which accept an integer argument (@samp{SIZE}).
-
-@table @code
-@item @code{<}
-True if the size of the message is less than @samp{SIZE}.
-@item @code{>}
-True if the size of the message is greater than @samp{SIZE}.
-@end table
-
-@item
-Functions which accept any number of arguments.
-
-@table @code
-@item @code{or}
-True if one of the argument returns true.
-@item @code{and}
-True if all of the arguments return true.
-@end table
-
-@item
-A symbol.
-
-When a symbol is specified, it is evaluated.
-@end enumerate
-
-You can specify followings as 2nd @samp{ACTION}.
-
-@enumerate
-@item
-folder name
-
-If some string is specified, it will be regarded as the destination
-folder, and the message will be appended to it.
-
-@item
-@samp{delete}
-
-If the symbol @samp{delete} is specified, delete the substance of the
-message in @code{elmo-split-folder}
-
-@item
-@samp{noop}
-
-If the symbol @samp{noop} is specified, do nothing on the message and
-keep it as it is.
-
-@item
-function
-
-If some function is specified, execute it.
-@end enumerate
-
-If the message passes all rules, it will be dealed along @samp{ACTION}
-specified by @code{elmo-split-default-action}.
-
-
-@node Address Book, Spam Filter, Split messages, Top
-@chapter Address Book
-@cindex Address Book
-
-With address book, you can utilize address completion, and you have
-summary displayed with nicknames.
-
-@menu
-* Mail Addresses:: Definition of Address Book
-* Address Manager:: Address Manager
-@end menu
-
-
-@node Mail Addresses, Address Manager, Address Book, Address Book
-@section Address book
-@cindex Address book Definition
-@cindex .addresses
-@cindex Alias, Address
-
-The file @file{~/.addresses} is a simple address book for Wanderlust.
-Make address file @file{~/.addresses}, and edit to suit your requirement.
-
-The data written in @file{~/.addresses} are used for address completion
-under draft editing mode. Furthermore, they are used when showing names
-in summary display mode. You can safely skip this section, if you don't
-want to customize address completion and summary display.
-It is possible to add/change/remove addresses from @file{~/.addresses} in
-summary buffer after Wanderlust is invoked. @refill
-
-The format is very simple. Like this. @refill
-
-@example
-@group
-#
-# @r{Lines begin with @samp{#} are comment.}
-# @r{Empty lines are ignored}
-#
-# @r{Format of each line:}
-# @var{email-address} "@var{nickname} "@var{realname}"
-#
-teranisi@@gohome.org "Yuuichi" "Yuuichi Teranishi"
-foo@@bar.gohome.org "Mr. Foo" "John Foo"
-bar@@foo.gohome.org "Mr. Bar" "Michael Bar"
-@end group
-@end example
-
-@noindent
-One line defines one persons description.
-
-Actually, in default setup, @var{nickname} is used in summary-mode and
-@var{realname} is used in draft preparation mode. This behavior is
-better understood if you try it and confirmed the function first. You
-can write and try a small definition, so you will know the idea of the
-address book before writing a big one.
-
-And, if MH alias file is specified in variable @code{wl-alias-file},
-it is used as an address information in the draft preparation mode.
-
-If variable @code{wl-use-ldap} is non-nil (initial setting is
-@code{nil}), address completion in draft mode uses LDAP information.
-
-If you use LDAP, you have to set @code{wl-ldap-server},
-@code{wl-ldap-port} and @code{wl-ldap-base} properly. If your emacs does
-not have LDAP feature as built-in feature (Currently only XEmacs can
-have built-in LDAP feature), you have to set command exec @env{PATH} to
-the program @command{ldapsearch}.
+If you use LDAP, you have to set @code{wl-ldap-server},
+@code{wl-ldap-port} and @code{wl-ldap-base} properly. If your emacs does
+not have LDAP feature as built-in feature (Currently only XEmacs can
+have built-in LDAP feature), you have to set command exec @env{PATH} to
+the program @command{ldapsearch}.
@node Address Manager, , Mail Addresses, Address Book
@end table
-@node Spam Filter, Batch Processing, Address Book, Top
+@node Spam Filter, Advanced Issues, Address Book, Top
@chapter Spam Filter
@cindex Spam Filter
@findex wl-summary-register-as-good-all
Register all messages in the folder as non-spam.
+@item r k m
+@kindex r k m (Summary)
+@findex wl-summary-spam-region
+Put spam mark on messages in the specified region.
+
+@item r k c
+@kindex r k c (Summary)
+@findex wl-summary-test-spam-region
+Test messages in the specified region and put spam mark if judged as spam.
+
+@item t k m
+@kindex t k m (Summary)
+@findex wl-thread-spam
+Put spam mark on messages which are the descendant of the current thread.
+With prefix argument, it affects on the all messages in the thread tree.
+
+@item t k c
+@kindex t k c (Summary)
+@findex wl-thread-test-spam
+Test messages which are the descendant of the current thread and put spam mark
+if judged as spam. With prefix argument, it affects on the all messages in
+the thread tree.
+
@item m k
@kindex m k (Summary)
@findex wl-summary-target-mark-spam
* spamfilter:: spamfilter.el
* bsfilter:: bsfilter
* SpamAssassin:: SpamAssassin
+* SpamOracle:: SpamOracle
* Regular Expressions Header Matching:: Header regexp
@end menu
@end table
-@node SpamAssassin, Regular Expressions Header Matching, bsfilter, Spam Filter Processors
+@node SpamAssassin, SpamOracle, bsfilter, Spam Filter Processors
@subsection SpamAssassin
@cindex SpamAssassin
@end table
-@node Regular Expressions Header Matching, , SpamAssassin, Spam Filter Processors
+@node SpamOracle, Regular Expressions Header Matching, SpamAssassin, Spam Filter Processors
+@subsection SpamOracle
+@cindex SpamOracle
+
+SpamOracle (`http://pauillac.inria.fr/~xleroy/software.html#spamoracle')
+is a spam filter implemented by Objective Caml language.
+
+To use spam filter with @file{spamoracle}, write following setting in
+@file{~/.wl} or somewhere else.
+(Of course, you have to install SpamOracle beforehand.)
+
+@lisp
+@group
+(setq elmo-spam-scheme 'spamoracle)
+@end group
+@end lisp
+
+@subsubsection Customizable Variables
+
+@table @code
+@item elmo-spam-spamoracle-program
+@vindex elmo-spam-spamoracle-program
+The initial setting is @file{spamoracle}. Specify the name of
+executable of spamoracle. If the executable is not in your
+environmental variable @env{PATH}, you should set this by full path.
+
+@item elmo-spam-spamoracle-config-filename
+@vindex elmo-spam-spamoracle-config-filename
+Specify the name of config file. @code{nil} to use default file
+(@file{~/.spamoracle.conf}). The initial setting is @code{nil}.
+
+@item elmo-spam-spamoracle-database-filename
+@vindex elmo-spam-spamoracle-database-filename
+The initial setting is @file{~/.elmo/.spamoracle.db}.
+It specifies the name of database file.
+
+@item elmo-spam-spamoracle-spam-header-regexp
+@vindex elmo-spam-spamoracle-spam-header-regexp
+The initial setting is @code{"^X-Spam: yes;"}. It specifies the regular
+expression of the header that indicates spam mail. Use this setting
+when you change the @code{spam_header} parameter in the config file.
+
+@end table
+
+@node Regular Expressions Header Matching, , SpamOracle, Spam Filter Processors
@subsection Regular Expressions Header Matching
@cindex Regular Expressions Header Matching
@end table
-@node Batch Processing, Customization, Spam Filter, Top
-@chapter Batch Processing
-@cindex Batch Processing
-
-You can request wanderlust to do some job on the command line.
-For now, you can invoke prefetching new messages in specified folders.
-
-Specify target folders in @code{wl-batch-prefetch-folder-list} then
-invoke as follows to execute prefetching:
-
-@example
-@group
-% emacs -batch -l wl-batch -f wl-batch-prefetch
-@end group
-@end example
-
-@section Customize Variables
-
-@table @code
-@item wl-batch-prefetch-folder-list
-@vindex wl-batch-prefetch-folder-list
-Target folders of prefetching by @code{wl-batch-prefetch}, specified as
-a list of folder names.
-@end table
-
-
-@node Customization, Migration, Batch Processing, Top
-@chapter Customizing Wanderlust
-@cindex Customization
+@node Advanced Issues, Migration, Spam Filter, Top
+@chapter Advanced Issues
+@cindex Advanced Issues
@menu
* Living with other packages:: Cooperating with other packages
* Highlights:: Highlights
* Biff:: Notify Mail arrival
+* Password Management:: Manage Passwords
+* Split messages:: Splitting messages
+* Batch Processing:: Invoke commands in batch mode
* Advanced Settings:: Advanced Settings
* Customizable Variables:: Customizable Variables
* Hooks:: Hooks
@end menu
-@node Living with other packages, Highlights, Customization, Customization
+@node Living with other packages, Highlights, Advanced Issues, Advanced Issues
@section Living with other packages
Examples with other packages.
You can find the usage in comment region at the head of @file{mime-w3m.el}.
-@node Highlights, Biff, Living with other packages, Customization
+@node Highlights, Biff, Living with other packages, Advanced Issues
@section Highlights
@subsection Customizable Variables
@end table
-@node Biff, Advanced Settings, Highlights, Customization
+@node Biff, Password Management, Highlights, Advanced Issues
@section Notify Mail arrival
@cindex Biff
@end table
-@node Advanced Settings, Customizable Variables, Biff, Customization
+@node Password Management, Split messages, Biff, Advanced Issues
+@section Manage Passwords
+
+If you input passwords to connect servers, they are stored in the
+variable @code{elmo-passwd-alist} per connection. You should be careful
+that others might read your passwords if they can touch your Emacs,
+since encoded plain passwords are there.
+
+If you invoke @kbd{M-x elmo-passwd-alist-save} while you have stored
+passwords, then they are saved on the file, and it will save you to
+input passwords. In this case, the risk that someone reads your
+keystroke might decrease, but please not that plain passwords are
+stored on a file. You should treat them very carefully.
+To remove saved passwords on file, invoke @kbd{M-x elmo-passwd-alist-clear}
+and then @kbd{M-x elmo-passwd-alist-save}.
+
+@table @code
+@item elmo-passwd-alist-file-name
+@vindex elmo-passwd-alist-file-name
+The initial setting is @file{passwd}.
+This is the name of the file in which passwords are saved.
+@code{elmo-passwd-alist-save} saves current passwords to the file.
+
+@item elmo-passwd-life-time
+@vindex elmo-passwd-life-time
+The initial setting is @code{nil}.
+If the value is some number, timer is set to remove password entry after
+@code{elmo-passwd-life-time} seconds since you input the password.
+@code{nil} means never to remove passwords.
+@end table
+
+
+@node Split messages, Batch Processing, Password Management, Advanced Issues
+@section Message splitting
+@cindex Split messages
+
+You can use @code{elmo-split} to split message in folder specified by
+the variable @code{elmo-split-folder} a la @command{procmail} according
+to some specified rules. To use this feature, set as follows in your
+@file{~/.emacs} at first.
+
+@lisp
+(autoload 'elmo-split "elmo-split" "Split messages on the folder." t)
+@end lisp
+
+Set source folder like following.
+
+@lisp
+(setq elmo-split-folder "%inbox")
+@end lisp
+
+And specify the rule in the variable @code{elmo-split-rule} (its format
+will be is described below).
+Then you can invoke @kbd{M-x elmo-split} to split messages according to
+@code{elmo-split-rule}. On the other hand, invoke @kbd{C-u M-x elmo-split}
+to do a rehearsal and show result (do not split actually).
+
+
+We will describe how to specify the rule. First of all, see following
+example, please.
+
+@lisp
+@group
+(setq elmo-split-rule
+ ;; @r{Store messages from spammers into @samp{+junk}}
+ '(((or (address-equal from "i.am@@spammer")
+ (address-equal from "dull-work@@dull-boy")
+ (address-equal from "death-march@@software")
+ (address-equal from "ares@@aon.at")
+ (address-equal from "get-money@@richman"))
+ "+junk")
+ ;; @r{Store messages from mule mailing list into @samp{%mule}}
+ ((equal x-ml-name "mule") "%mule")
+ ;; @r{Store messages from wanderlust mailing list into @samp{%wanderlust}}
+ ;; @r{and continue evaluating following rules}
+ ((equal x-ml-name "wanderlust") "%wanderlust" continue)
+ ;; @r{Store messages from Yahoo user into @samp{+yahoo-@{username@}}}
+ ((match from "\\(.*\\)@@yahoo\\.com")
+ "+yahoo-\\1")
+ ;; @r{Store unmatched mails into @samp{+inbox}}
+ (t "+inbox")))
+@end group
+@end lisp
+
+The basic unit of the rule is a combination like
+
+@lisp
+(@samp{CONDITION} @samp{ACTION} [@code{continue}])
+@end lisp
+
+If @samp{CONDITION} is true, @samp{ACTION} is performed.
+The 1st element @samp{CONDITION} is a condition represented by a
+balanced expression (sexp). Its grammar will be explained below.
+The 2nd element @samp{ACTION} is the name of the folder to split
+messages into, or a symbol. When the 3rd element @code{continue} is
+specified as symbol, evaluating rules is not stopped even when the
+condition is satisfied.
+
+The grammar for @samp{CONDITION} is as follows. See example above to
+learn how to write the condition practically.
+
+@enumerate
+@item
+Functions which accept arguments @samp{FIELD-NAME} and @samp{VALUE}.
+(@samp{FIELD-NAME} is a symbol that describes the field name)
+
+@table @code
+@item @code{equal}
+True if the field value equals to @samp{VALUE}.
+Case of the letters are ignored.
+@item @code{match}
+True if the field value matches to VALUE.
+@samp{VALUE} can contain @code{\&} and @code{\N} which will substitute
+from matching @code{\(\)} patterns in the previous @samp{VALUE}.
+@item @code{address-equal}
+True if one of the addresses in the field equals to
+@samp{VALUE}. Case of the letters are ignored.
+@item @code{address-match}
+True if one of the addresses in the field matches to
+@samp{VALUE}.
+@samp{VALUE} can contain @code{\&} and @code{\N} which will substitute
+from matching @code{\(\)} patterns in the previous @samp{VALUE}.
+@end table
+
+@item
+Functions which accept an integer argument (@samp{SIZE}).
+
+@table @code
+@item @code{<}
+True if the size of the message is less than @samp{SIZE}.
+@item @code{>}
+True if the size of the message is greater than @samp{SIZE}.
+@end table
+
+@item
+Functions which accept any number of arguments.
+
+@table @code
+@item @code{or}
+True if one of the argument returns true.
+@item @code{and}
+True if all of the arguments return true.
+@end table
+
+@item
+A symbol.
+
+When a symbol is specified, it is evaluated.
+@end enumerate
+
+You can specify followings as 2nd @samp{ACTION}.
+
+@enumerate
+@item
+folder name
+
+If some string is specified, it will be regarded as the destination
+folder, and the message will be appended to it.
+
+@item
+@samp{delete}
+
+If the symbol @samp{delete} is specified, delete the substance of the
+message in @code{elmo-split-folder}
+
+@item
+@samp{noop}
+
+If the symbol @samp{noop} is specified, do nothing on the message and
+keep it as it is.
+
+@item
+function
+
+If some function is specified, execute it.
+@end enumerate
+
+If the message passes all rules, it will be dealed along @samp{ACTION}
+specified by @code{elmo-split-default-action}.
+
+
+@node Batch Processing, Advanced Settings, Split messages, Advanced Issues
+@section Batch Processing
+@cindex Batch Processing
+
+You can request wanderlust to do some job on the command line.
+For now, you can invoke prefetching new messages in specified folders.
+
+Specify target folders in @code{wl-batch-prefetch-folder-list} then
+invoke as follows to execute prefetching:
+
+@example
+@group
+% emacs -batch -l wl-batch -f wl-batch-prefetch
+@end group
+@end example
+
+@subsection Customize Variables
+
+@table @code
+@item wl-batch-prefetch-folder-list
+@vindex wl-batch-prefetch-folder-list
+Target folders of prefetching by @code{wl-batch-prefetch}, specified as
+a list of folder names.
+@end table
+
+
+@node Advanced Settings, Customizable Variables, Batch Processing, Advanced Issues
@section Advanced Settings
@menu
@end lisp
-@node Customizable Variables, Hooks, Advanced Settings, Customization
+@node Customizable Variables, Hooks, Advanced Settings, Advanced Issues
@section Customizable Variables
Customizable variables that have not been described yet:
@vindex wl-draft-folder
The initial setting is @samp{+draft}. It is the folder to which drafts are
saved. It must be a writable folder.
+You can set IMAP remote folder, Maildir and so on.
Note that variable settings applied by @code{wl-draft-config-exec} is saved
under @code{elmo-msgdb-directory}. That is to say, if you specified remote
folder as @code{wl-draft-folder}, variable settings which are applied by
XEmacs (@code{t} for XEmacs with dbm).
If non-nil, Message-ID is controlled by dbm.
-@item elmo-passwd-alist-file-name
-@vindex elmo-passwd-alist-file-name
-The initial setting is @file{passwd}.
-This is the name of the file in which passwords are saved.
-@code{elmo-passwd-alist-save} saves current passwords to the file.
-
@item elmo-nntp-list-folders-use-cache
@vindex elmo-nntp-list-folders-use-cache
The initial setting is 600 (in seconds).
If non-nil, you are asked for confirmation if accumulated off-line
operations are executed.
-@item elmo-display-progress-threshold
-@vindex elmo-display-progress-threshold
-The initial setting is 20.
-Threshold for display of progress gauge. If number of renewal is more than
-this value, display progress gauge.
+@item elmo-network-session-idle-timeout
+@vindex elmo-network-session-idle-timeout
+The initial setting is @code{nil}.
+Idle timeout of the network cache. Specified in seconds.
+If elapsed time since last access is larger than this value,
+cached session is not reused. If nil, network cache is reused.
+
@end table
-@node Hooks, , Customizable Variables, Customization
+@node Hooks, , Customizable Variables, Advanced Issues
@section Hooks
(Not yet written)
-@node Migration, Terminology, Customization, Top
+@node Migration, Terminology, Advanced Issues, Top
@chapter Switch from older version of Wanderlust
@cindex Migration
@end group
@end lisp
-With the default setup,
-the old msgdb format will be used as it was.
-You may convert the format
-by writing following lines in @file{~/.wl} or so.
+With the default setup, the old msgdb format is converted to the new
+format automatically. You may change this behavior by writing following
+lines in @file{~/.wl}.
@lisp
@group
;; @r{If the format of msgdb is different from} @code{elmo-msgdb-default-type},
;; @r{the format will be converted automatically when}
-;; @r{the msgdb is being loaded.}
+;; @r{the msgdb is being loaded (default).}
(setq elmo-msgdb-convert-type 'auto)
;; @r{Convert msgdb when hitting @kbd{s all} in Summary mode}
(setq elmo-msgdb-convert-type 'sync)
+
+;; @r{Inhibit conversion}
+(setq elmo-msgdb-convert-type nil)
@end group
@end lisp
@enumerate
@item
-You may only use @samp{important} flag. The other flags may not be available.
+You cannot use forwarded mark (@samp{F}, @samp{f}).
+@item
+You may only use @samp{important} flag. The other global flags may not
+be available.
@end enumerate
@subsection Changes from @samp{'mark} folder to @samp{'flag}.
8/21 wl-addrmgr by Kitamoto-san.
12/27 Released 2.8.1 stable.
2002 12/11 Released 2.10.0 stable.
+2003 7/05 Released 2.10.1 stable.
+ 9/18 flag folder is added.
+ 9/20 New msgdb format (modb-standard) by H.Murata-san.
+ 10/20 Spam filter by H.Murata-san.
+2004 1/06 Background color of the demo become configurable.
+ 2/09 'file' folder is added.
+ 9/12 forwarded mark.
+ Default value of the mark strings are changed.
+ 12/24 Released 2.12.0 stable.
@end example
See @file{ChangeLog} for details.
Currently they are picked up alphabetically from the top 40 hits of
U.S. Billboard magazines in 1980s.
-(@uref{http://lyrics.natalnet.com.br/html/top40/index.html})
-
+(@uref{http://ntl.matrix.com.br/pfilho/html/top40/})
@node Index, , Addition, Top
@unnumbered Index