Sync up with main trunk and following.
[elisp/wanderlust.git] / doc / wl.texi
index 5efa585..2a2588b 100644 (file)
@@ -4,7 +4,6 @@
 @settitle Wanderlust -- Yet Another Message Interface On Emacsen --
 @c %**end of header
 @documentlanguage en
-@documentencoding us-ascii
 @include version.texi
 @synindex pg cp
 @finalout
@@ -255,7 +254,7 @@ may help you.}.
 Recommended combination of APEL, FLIM and SEMI are following:
 
 @itemize @minus
-@item APEL 10.4, FLIM 1.14.4 and SEMI 1.14.4
+@item APEL 10.5, FLIM 1.14.5 and SEMI 1.14.5
 @end itemize
 
 You can also use many other FLIM/SEMI variants. Combination of the
@@ -263,8 +262,8 @@ latest versions should work.  For example, the following combination are
 confirmed to work.
 
 @itemize @minus
-@item APEL 10.4, SLIM 1.14.9, SEMI 1.14.4
-@item APEL 10.4, CLIME 1.14.5, EMIKO 1.14.1
+@item APEL 10.5, SLIM 1.14.9, SEMI 1.14.5
+@item APEL 10.5, CLIME 1.14.5, EMIKO 1.14.1
 @end itemize
 
 You have to re-install Wanderlust if you upgraded APEL, FLIM or SEMI.
@@ -3078,8 +3077,8 @@ If the message at current cursor point is your own netnews article,
 a draft for `supersedes message' for the message is prepared.
 (@code{wl-summary-reedit})
 
-@item M-e
-@kindex M-e (Summary)
+@item M-E
+@kindex M-E (Summary)
 @findex wl-summary-resend-bounced-mail
 If the message at current cursor point is a bounced message,
 a draft for re-sending original message is prepared.
@@ -3297,7 +3296,9 @@ You can sort by @samp{date}, @samp{from}, @samp{number} and @samp{subject}.
 @item T
 @kindex T (Summary)
 @findex wl-summary-toggle-thread
-Toggle the threading.
+Toggle the threading. The state will be preserved after exiting
+Wanderlust. You can alter default state for newly created summary
+by @code{wl-summary-default-view} or @code{wl-summary-default-view-alist}.
 Threading status is displayed on the modeline.
 @samp{@{S@}} means threading is off (Sequence) and
 @samp{@{T@}} means threading is on (Thread).
@@ -3665,6 +3666,12 @@ Pipe content of each message with target mark @samp{*} to some specified
 external process.
 (@code{wl-summary-target-mark-pipe})
 
+@item D
+@kindex D (Summary)
+@findex wl-summary-erase
+Actually erase the message at once, without moving it to trash.
+(@code{wl-summary-erase})
+
 @item M-t
 @kindex M-t (Summary)
 @findex wl-toggle-plugged
@@ -3765,7 +3772,7 @@ folder is moved.
 
 @item wl-summary-weekday-name-lang
 @vindex  wl-summary-weekday-name-lang
-The initial setting is @samp{ja}.  Specify language of the weekday.
+Specify language of the weekday.
 @samp{en} displays English, @samp{fr} displays French, @samp{de}
 displays Deutsch. You should rescan summary view after changing this value.
 
@@ -3792,16 +3799,38 @@ 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 @code{wl-summary-default-from}.
+
 @item wl-summary-no-from-message
 @vindex  wl-summary-no-from-message
 The initial setting is @samp{nobody@@nowhere?}.  A string which is
 displayed when there's no @samp{From:} field in the message.
 
+@item wl-summary-subject-function
+@vindex wl-summary-subject-function
+Format function to display subject in summary.
+The initial setting is @code{wl-summary-default-subject} and
+it will cut the list name part etc. on the top of the subject.
+To display subject as it is, set as follows.
+
+@lisp
+(setq wl-summary-subject-function 'identity)
+@end lisp
+
 @item wl-summary-no-subject-message
 @vindex  wl-summary-no-subject-message
 The initial setting is @samp{(WL:No Subject in original.)}.  A string
 which is displayed when there's no @samp{Subject:} field in the message.
 
+@item wl-summary-default-view
+@vindex wl-summary-default-view
+The initial setting is @code{'thread}.
+The default state for newly created summary. You can set either
+@code{'thread} for thread view or @code{'sequence} for sequential view.
+
 @item wl-summary-use-frame
 @vindex wl-summary-use-frame
 The initial setting is @code{nil}.
@@ -3856,6 +3885,12 @@ indent level.
 If you set this to @code{nil} you should set @code{wl-summary-width}
 to @code{nil}, too.
 
+@item wl-summary-max-thread-depth
+@vindex wl-summary-max-thread-depth
+The initial setting is 15.
+If thread depth of the message is larger than this value,
+the thread is divided.
+
 @item wl-summary-recenter
 @vindex  wl-summary-recenter
 The initial setting is t.
@@ -4131,6 +4166,9 @@ Basically it is Emacs-standard mail mode.
 @node Editing Header, Editing Message Body, Usage of Draft Mode, Usage of Draft Mode
 @subsection Editing Message Header
 
+You can freely edit header region above @samp{--text follows this line--},
+until you invoke the sending operation.
+
 Initially, the cursor is at the @samp{To:} field.  Fill in recipients
 addresses.  @kbd{@key{TAB}} completes them.
 
@@ -4179,6 +4217,11 @@ the draft when it is prepared.
 @node Editing Message Body, Dynamical Message Re-arrangement, Editing Header, Usage of Draft Mode
 @subsection Editing Messages
 
+As a matter of course, editing message body can be performed in the same
+way as usual writing. You may write message body under
+@samp{--text follows this line--} line. (NOTE: Be sure to leave the line
+@samp{--text follows this line--} intact.)
+
 Multi-part editing utilize MIME edit mode of SEMI.  For procedures of
 editing, refer to respective documents.  @xref{MIME-Edit, , ,mime-ui-en,
 a MIME user interface for GNU Emacs}.
@@ -4696,11 +4739,25 @@ The initial setting is 7.
 If @code{wl-template-visible-select} is non-nil, this variable specifies
 the size of the preview window.
 
+@item wl-draft-buffer-style
+@vindex wl-draft-buffer-style
+The initial setting is @code{full}.
+Style of draft buffer window (except for replying and forwarding).
+@code{keep} is to use current window,
+@code{full} is to use full frame window,
+@code{split} is to split current window and use it.
+If some function is specified, it is called with the draft buffer
+as an argument.
+
 @item wl-draft-reply-buffer-style
 @vindex wl-draft-reply-buffer-style
-The initial setting is @code{split}.  @code{split} or @code{full} can be
-specified.  In the case of @code{full}, the whole frame will be used for
-a reply draft buffer when it is prepared.
+The initial setting is @code{split}.
+Style of draft buffer for replying and forwarding.
+@code{keep} is to use message buffer window,
+@code{full} is to use full frame window,
+@code{split} is to split message buffer window and use it.
+If some function is specified, it is called with the draft buffer
+as an argument.
 
 @item wl-draft-use-frame
 @vindex wl-draft-use-frame
@@ -5199,7 +5256,7 @@ manually, press @kbd{F} in the folder mode.
 
 @item elmo-enable-disconnected-operation
 @vindex elmo-enable-disconnected-operation
-The initial setting is @code{nil}.  Controls off-line operations
+The initial setting is @code{t}.  Controls off-line operations
 regarding IMAP4.  If non-nil, off-line operations are carried out.
 
 @item elmo-lost+found-folder
@@ -6325,18 +6382,27 @@ pop3                      N     E     E     E
 @chapter Message splitting
 @cindex Split messages
 
-You can use @code{elmo-split} to split message in folder
-@code{elmo-split-folder} a la @command{procmail} according to some
-specified rules. To use this feature, set as follows in your
+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 (do not split actually).
+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.
@@ -6367,21 +6433,23 @@ example, please.
 The basic unit of the rule is a combination like
 
 @lisp
-(@samp{CONDITION} @samp{FOLDER} [@code{continue}])
+(@samp{CONDITION} @samp{ACTION} [@code{continue}])
 @end lisp
 
-The 1st element @samp{CONDITION} is a balanced expression (sexp). Its
-grammar will be explained below. The 2nd element @samp{FOLDER} is the
-name of the folder to split messages into. When the 3rd element
-@code{continue} is specified as symbol, evaluating rules is not stopped
-even when the condition is satisfied.
+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 argument @samp{FIELD-NAME} and @samp{VALUE}.
+Functions which accept arguments @samp{FIELD-NAME} and @samp{VALUE}.
 (@samp{FIELD-NAME} is a symbol that describes the field name)
 
 @table @code
@@ -6403,6 +6471,16 @@ 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
@@ -6418,6 +6496,36 @@ 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, Customization, Split messages, Top
 @chapter Address Book
@@ -6431,6 +6539,7 @@ summary displayed with nicknames.
 * Address Manager::  Address Manager
 @end menu
 
+
 @node Mail Addresses, Address Manager, Address Book, Address Book
 @section Address book
 @cindex Address book Definition
@@ -6605,8 +6714,9 @@ If @command{imput} is on the @code{exec-path} at the installation,
 @subsection bbdb.el
 @pindex BBDB
 
-Place @file{util/bbdb-wl.el} on the @code{load-path} and do the following
-settings.
+To use The Insidious Big Brother Database (@uref{http://bbdb.sourceforge.net/})
+with Wanderlust, place @file{util/bbdb-wl.el} on the @code{load-path}
+and do the following settings.
 
 If BBDB is on the @code{load-path} at the installation, @file{bbdb-wl.el} is
 byte-compiled and installed.
@@ -6641,7 +6751,9 @@ in draft buffer.
 @subsection lsdb.el
 @pindex LSDB
 
-The following is an example of settings:
+The following is an example setting to use
+The Lovely Sister Database (@uref{http://sourceforge.jp/projects/lsdb/})
+with Wanderlust.
 
 @lisp
 @group
@@ -7357,8 +7469,9 @@ The initial setting is the alist shown below:
 @noindent
 This is an associative list of regular expressions of folder names and
 update range of the summary.  Update range is one of the @samp{all},
-@samp{update}, @samp{rescan}, @samp{rescan-noscore}, @samp{first} and
-@samp{last}. If a folder do not match, @samp{update} is used.
+@samp{update}, @samp{rescan}, @samp{rescan-noscore}, @samp{first},
+@samp{last} and @samp{no-sync}. If a folder do not match, @samp{update}
+is used.
 
 @item wl-ask-range
 @vindex wl-ask-range
@@ -7715,6 +7828,7 @@ valuable advice and many pieces of code they contributed.
 2001  7/04    Released 2.6.0 stable.
       8/21    wl-addrmgr by Kitamoto-san.
      12/27    Released 2.8.1 stable.
+2002 12/11    Released 2.10.0 stable.
 @end example
 
 See @file{ChangeLog} for details.