X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=doc%2Fwl.texi;h=55ae6d2fa5ca9f1b8058368b58a64d4e50515015;hb=f21b45c308661acbfa4490f8a1ff61a4296bab65;hp=c40588e57ebbdf2f779bd78be34600ffff8dff16;hpb=90759931acfda6ad7073e613520fc1e0efb1de57;p=elisp%2Fwanderlust.git diff --git a/doc/wl.texi b/doc/wl.texi index c40588e..55ae6d2 100644 --- a/doc/wl.texi +++ b/doc/wl.texi @@ -119,6 +119,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 +255,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.4 and SEMI 1.14.4 @end itemize You can also use many other FLIM/SEMI variants. Combination of the @@ -262,8 +263,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.4 +@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 +531,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 @@ -796,47 +797,24 @@ Example: @pindex ucs-conv You can use international mailbox names in @var{mailbox} part, if you -are using Emacs which can treat unicode and +are using Emacs with UTF-7 support and @code{elmo-imap4-use-modified-utf7} is set to non-nil value (default value is @code{nil}). -Currently, following Emacsen can treat unicode. +Currently, Mule-UCS package is required to use UTF-7. +Mule-UCS works on following Emacsen. @itemize @bullet -@item Emacs 20.3 or later + Mule-UCS +@item Emacs 20.3 or later +@item XEmacs 21.2.37 or later +@end itemize -If you installed Mule-UCS package, Emacs can treat unicode. You can obtain Mule-UCS package from following URL. @example ftp://ftp.m17n.org/pub/mule/Mule-UCS/ @end example -@item XEmacs 21.2.13 or later + ucs-conv package - -By default, XEmacs 21 cannot treat unicodes, but if you installed -ucs-conv package, it can. -You can obtain ucs-conv package from following anonymous CVS. - -@example -@group -cvs -d :pserver:anonymous@@cvs.m17n.org:/cvs/root login -Password: @var{NULL} (Just enter return key) -cvs -d :pserver:anonymous@@cvs.m17n.org:/cvs/root checkout ucs-conv -@end group -@end example - -You also need utf7 conversion programs, @command{u7tou8} and -@command{u8tou7} to use international mailbox name in the current -XEmacs. These programs are included in the UTF7 package which can be -obtained from following URL. - -@example -ftp://ftp.ifcss.org/pub/software/unix/convert/utf7.tar.gz -@end example -@end itemize - - @node NNTP Folder, MH Folder, IMAP Folder, Folders @section NNTP Folder @cindex @samp{-} @@ -2967,6 +2945,22 @@ example. @end group @end lisp +@subsection on the format for sender name + +The format string @samp{%f} displays the return value of the function specified +by @code{wl-summary-from-function}. If you use the function +@code{wl-summary-default-from} (default), it displays sender name ordinarily, +while displays the recipient names if the folder name matches with +@code{wl-summary-showto-folder-regexp} and the sender is yourself. +If the value of @code{wl-use-petname} is Non-nil, it uses petname to display. + +For example, to display recipient names for the message in @samp{+backup} if +its sender is yourself, set up as follows. + +@lisp +(setq wl-summary-showto-folder-regexp "^\\+backup$") +@end lisp + @node Key Bindings of Summary, Variables of Summary, Summary View, Summary @section Key bindings @@ -3189,6 +3183,8 @@ Redisplay the message at current cursor point without MIME analysis. If the message at current cursor point has encapsulates multiple messages using MIME, de-capsulate and extract them on the current folder. +If it is invoked in non-writable folder or it is called with prefix +argument, it asks the destination folder. (@code{wl-summary-burst}) @item @@ @@ -3852,11 +3848,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. @@ -4062,6 +4053,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 @@ -4132,6 +4131,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. @@ -4180,6 +4182,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}. @@ -4284,9 +4291,6 @@ In the cdr part of a cons, not only a variable but also an elisp expression can be specified as is. If the car part is a header field and the cdr part is @code{nil}, the field will be deleted. -If you want to use name of parent folder, you can refer the buffer local -variable @code{wl-draft-parent-folder}. - See the next example as well: @lisp @@ -4307,6 +4311,22 @@ example, and when it matches the header being replied. It is ignored when there is no buffer being replied, like after @code{wl-draft} was invoked. +If you want to use name of parent folder, you can refer the buffer local +variable @code{wl-draft-parent-folder}. In the following example, Wanderlust +changes From according to the folder name of the summary in which the draft +was invoked. + +@lisp +@group +(setq wl-draft-config-alist + '(((string-match \".*@@domain1$\" wl-draft-parent-folder) + (\"From\" . \"user@@domain1\")) + ((string-match \".*@@domain2$\" wl-draft-parent-folder) + (\"From\" . \"user@@domain2\")))) +@end group +@end lisp + + Note that @code{wl-draft-config-alist} is applied only once when @code{wl-draft-send-and-exit} or @code{wl-draft-send} is invoked. Therefore, if you want to apply @code{wl-draft-config-alist} again after @@ -4454,7 +4474,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 @@ -4781,6 +4804,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}. @@ -5802,7 +5831,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 @@ -6300,7 +6329,105 @@ 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{FOLDER} [@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. + +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}. +(@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 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 + + +@node Address Book, Customization, Split messages, Top @chapter Address Book @cindex Address Book