X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=doc%2Fwl.texi;h=4110a9fc1ea1cccf52a8240c770780b51a5c0591;hb=4e796a3f149bcb0aa9824d1cd26285503c35339d;hp=92dd262649e335ddeab30365156f3f1004f14e65;hpb=89abef8dc54717d342324f587ca5013faf099463;p=elisp%2Fwanderlust.git diff --git a/doc/wl.texi b/doc/wl.texi index 92dd262..4110a9f 100644 --- a/doc/wl.texi +++ b/doc/wl.texi @@ -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 @@ -119,6 +118,7 @@ This manual is for Wanderlust @value{VERSION}. * 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 * Customization:: Customizing Wanderlust * Terminology:: Terminologies @@ -254,7 +254,7 @@ may help you.}. Recommended combination of APEL, FLIM and SEMI are following: @itemize @minus -@item APEL 10.3, FLIM 1.14.3 and SEMI 1.14.3 +@item APEL 10.4, FLIM 1.14.5 and SEMI 1.14.5 @end itemize You can also use many other FLIM/SEMI variants. Combination of the @@ -262,8 +262,8 @@ latest versions should work. For example, the following combination are confirmed to work. @itemize @minus -@item APEL 10.2, Chao 1.14.1, REMI 1.14.2 -@item APEL 10.2, SLIM 1.14.3, EMY 1.13.9 +@item APEL 10.4, SLIM 1.14.9, SEMI 1.14.5 +@item APEL 10.4, CLIME 1.14.5, EMIKO 1.14.1 @end itemize You have to re-install Wanderlust if you upgraded APEL, FLIM or SEMI. @@ -530,7 +530,7 @@ This means it enables you to run Wanderlust as a default mail composer of Emacsen. It is effective only when your Emacs can define @code{mail-user-agent}. -@xref{Mail Methods, , ,emacs-ja, The Emacs Editor}. +@xref{Mail Methods, , ,emacs, The Emacs Editor}. @lisp @group @@ -3077,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. @@ -3296,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). @@ -3764,7 +3766,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. @@ -3791,16 +3793,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}. @@ -3847,11 +3871,6 @@ Width of summary line. If @code{nil}, summary line's width is as is. The initial setting is 17. Width of sender part of summary line. -@item wl-summary-subject-length-limit -@vindex wl-summary-subject-length-limit -The initial setting is @code{nil}. Specify the limit for the length of -subject parts in summary. @code{nil} means unlimited. - @item wl-summary-indent-length-limit @vindex wl-summary-indent-length-limit The initial setting is 46. @@ -4057,6 +4076,14 @@ moves to the previous message. Scrolls the message forward. When the bottom of the message is hit, moves to the next message. (@code{wl-message-wheel-up}) + +@item D +@kindex D (Message) +@findex wl-message-delete-current-part +Delete the part under cursor. In fact it appends modified message to +the current folder then moves old one to trash folder. Therefore the +message number will be changed. +(@code{wl-message-delete-current-part}) @end table @section Customizable Variables @@ -4127,6 +4154,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. @@ -4175,6 +4205,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}. @@ -4462,7 +4497,10 @@ http://www.iecc.com/pop-before-smtp.html @item C-c C-y @kindex C-c C-y (Draft) @findex wl-draft-yank-original -Cites the content of the current message buffer. +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). (@code{wl-draft-yank-original}) @item C-c C-p @@ -4789,6 +4827,12 @@ or @samp{Cc:} field, do not insert @samp{Bcc:} or @samp{Fcc:} field. The initial setting is @code{nil}. This is the SMTP server name for mail transmission. +@item wl-smtp-posting-port +@vindex wl-smtp-posting-port +The initial setting is @code{nil}. +This is the SMTP port number for mail transmission. +If @code{nil}, default SMTP port number (25) is used. + @item wl-smtp-posting-user @vindex wl-smtp-posting-user The initial setting is @code{nil}. @@ -5186,7 +5230,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 @@ -5810,7 +5854,7 @@ Needless to say, you can use your own function. @end table -@node Scoring, Address Book, Expire and Archive, Top +@node Scoring, Split messages, Expire and Archive, Top @chapter Score of the Messages @cindex Scoring @c @cindex Kill File @@ -6308,7 +6352,147 @@ pop3 N E E E @end example -@node Address Book, Customization, Scoring, Top +@node Split messages, Address Book, Scoring, Top +@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 +@file{~/.emacs} at first. + +@lisp +(autoload 'elmo-split "elmo-split" "Split messages on the folder." t) +@end lisp + +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). + +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 Address Book, Customization, Split messages, Top @chapter Address Book @cindex Address Book @@ -6320,6 +6504,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 @@ -6494,8 +6679,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. @@ -6530,7 +6716,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