X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=doc%2Fwl.texi;h=4200f8d7ff74c05ca6dfe439296263b538558938;hb=da5714ffa6ec444396b0eaed9ddb011ca4b3b4b4;hp=e02b7b8fb27a7f4d46b58c0f11c1bc1706eabae1;hpb=c1c4c98968d6bb725646a7b6e1eef96d30825815;p=elisp%2Fwanderlust.git diff --git a/doc/wl.texi b/doc/wl.texi index e02b7b8..4200f8d 100644 --- a/doc/wl.texi +++ b/doc/wl.texi @@ -218,26 +218,14 @@ here. @pindex APEL @pindex FLIM @pindex SEMI -@pindex tm -SEMI or tm must be installed to make Wanderlust work correctly. +SEMI must be installed to make Wanderlust work correctly. -SEMI does not run on Emacs 19.28 or earlier -@footnote{SEMI runs on Emacs 19.34. @* -@uref{http://www.jpl.org/elips/INSTALL-SEMI-ja.html} describes how to.}, -so you must install tm, the predecessor of SEMI. (tm version 8.7 or later -is needed.) - -However, SEMI is recommended because of its wider functionality. - -Refer to the documents of each package for detailed installation procedure. - -SEMI and tm can be downloaded from these sites: +SEMI can be downloaded from these sites: @example @group SEMI: ftp://ftp.m17n.org/pub/mule/semi/ -tm: http://cvs.m17n.org/tomo/comp/emacsen/tm/tm-8/ @end group @end example @@ -255,10 +243,16 @@ You have to install APEL, FLIM and SEMI in this order. Generally, @samp{make install} will do the job. (In XEmacs 21, @samp{make install-package}.) +Refer to the documents of each package for detailed installation +procedure @footnote{If you want to use SEMI on Emacs 19.34. @* +@uref{http://www.jpl.org/elips/INSTALL-SEMI-ja.html} (In Japanese) +may help you.}. + + Recommended combination of APEL, FLIM and SEMI are following: @itemize @minus -@item APEL 10.3, FLIM 1.14.2 and SEMI 1.14.3 +@item APEL 10.3, FLIM 1.14.3 and SEMI 1.14.3 @end itemize You can also use many other FLIM/SEMI variants. Combination of the @@ -270,8 +264,7 @@ confirmed to work. @item APEL 10.2, SLIM 1.14.3, EMY 1.13.9 @end itemize -You have to re-install Wanderlust if you upgraded APEL, FLIM, SEMI or -tm. +You have to re-install Wanderlust if you upgraded APEL, FLIM or SEMI. @node Download, Install, MIME Modules, Start Me Up @@ -502,10 +495,10 @@ The minimal requirement for settings is as the following. (autoload 'wl "wl" "Wanderlust" t) (autoload 'wl-draft "wl-draft" "Write draft with Wanderlust." t) -;; @r{Directory where icons are placed (XEmacs or Emacs 21).} -;; @r{Default: @code{nil}.} -;; @r{(This is not required if Wanderlust is installed as XEmacs package)} -(setq wl-icon-dir "~/work/wl/etc") +;; @r{Directory where icons are placed.} +;; @r{Default: the peculiar value to the running version of Emacs.} +;; @r{(This is not required if the default value has been set properly)} +(setq wl-icon-directory "~/work/wl/etc") ;; @r{SMTP server for mail posting. Default: @code{nil}} (setq wl-smtp-posting-server "your.smtp.example.com") @@ -643,6 +636,26 @@ That means the folders you defined in the @file{~/.folders} are listed If you start Wanderlust with prefix argument like @kbd{C-u M-x wl}, you can skip folder checking. +Basically, you will handle messages in wanderlust while you come and go +from/to each of the following buffers. + +@table @samp +@item Folder Buffer +You can see the list of folders. You can select some folder and go into the summary +of it. You can subscribe new folder or edit subscription list. +@item Summary Buffer +You can see the list of messages in the folder. You can select message and view its +contents, and reply to some message. You can delete ones or move ones to another +folder. +@item Message Buffer +You can see the contents of the message. You can save part to disk or open in external +programs. +@item Draft Buffer +You can edit message. +@end table + +Details of each ones are explained later. + @node Folders, Folder, Start Me Up, Top @chapter Wanderlust's folders @@ -1335,10 +1348,57 @@ Example: @end group @end example -Tips +@subsection TIPS + +@subsubsection Enter space to separate keywords If you want to use space in folder entry, @kbd{C-q @key{SPC}} will help you. +@subsubsection Alias name for index + +You can define an alias name for index. + +Example: + +@example +(setq elmo-nmz-index-alias-alist + '(("cache" . "~/.elmo/cache") + ("docs" . "~/documents"))) +@end example + +Above definition defines two index aliases. +You can specify + +@example +[wanderlust]cache +@end example + +to execute a namazu search with keyword @samp{wanderlust} using a index in the +directory @file{~/.elmo/cache}. + +@subsubsection Multiple indices + +You can specify a list for @code{elmo-nmz-default-index-path} and +@code{elmo-nmz-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 + '(("all" . ("~/.elmo/cache" "~/documents")) + ("cache" . "~/.elmo/cache"))) +@end example + +Using above alias setting, you can specify + +@example +[wanderlust]all +@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 @section Multi Folder @@ -1546,13 +1606,33 @@ For example, if you specify following and access it, messages are downloaded automatically from @samp{&username@@popserver} to @samp{+inbox}. +On the other hand, if you put @samp{|:} instead of second @samp{|}, +then messages are copied to the destination folder (not deleted from +source-folder). At the next time you access that folder, only new +messages will be copied. + +@example +@samp{|} @var{source-folder} @samp{|:} @var{destination-folder} +@end example + +If you want to copy messages from POP server and view them, specify the +folder as follows: + +@example +|&username@@popserver|:+inbox +@end example + +where messages will be kept on the server. + Example: @example @group -%inbox|%myinbox -> Download %inbox to %myinbox. -*&user@@popserver1,&user@@popserver2|+inbox +|%inbox|%myinbox -> Download %inbox to %myinbox. +|*&user@@popserver1,&user@@popserver2|+inbox -> Download from &user@@popserver1 and &user@@popserver2 to +inbox. +|-gnu.emacs.sources|:+sources + -> Copy messages from -gnu.emacs.sources to +sources. @end group @end example @@ -1573,7 +1653,7 @@ Format: @example @group 'mark -@r{or} +'sendlog 'cache/00 - 1F @end group @end example @@ -1592,6 +1672,14 @@ message will have @samp{$} mark. folder. If you want IMAP folder's message remove from @samp{'mark} folder, remove important mark at IMAP Folder.) + +A folder named @samp{'sendlog} is a virtual folder which collects +cached messages which are recoded on @file{~/.elmo/sendlog}. +It might be useful when you forgot to add cc for yourself. +To use this, you should set @code{wl-draft-use-cache} to non-nil +so that sent messages are cached. + + You can access cached messages fetched via network by accessing folders named @samp{'cache/00} - @samp{'cache/1F}. 00 - 1F are the name of the subdirectories of the cache directory @@ -2320,6 +2408,12 @@ The initial setting is @code{nil}. If non-nil, negative value is displayed when the message is deleted. If @code{sync}, folder is synchronized when the message is deleted. If @code{nil}, message deletion is ignored. + +@item wl-fldmgr-add-complete-with-current-folder-list +@vindex wl-fldmgr-add-complete-with-current-folder-list +The initial setting is @code{nil}. +Non-nil means call @code{elmo-folder-list-subfolders} and get completion +candidate for @code{wl-fldmgr-add}. @end table @subsection Miscellanea @@ -2557,46 +2651,38 @@ specified size by the order of last accessed time. @subsection Buffer Cache and Prefetching -If the value of @code{elmo-use-buffer-cache} is non-nil, the messages -that are read are kept in the cache buffer. It is called `buffer -cache'. The number of cache buffer is specified by -@code{elmo-buffer-cache-size}. +The messages that are read are kept in the cache buffer. It is called +`buffer cache'. The number of cache buffer is specified by +@code{wl-message-buffer-cache-size}. There are message prefetching mechanism in the Wanderlust that -prefetches next message while you are reading. This function requires -that the value of @code{elmo-use-buffer-cache} is non-nil. +prefetches next message while you are reading. You can control the message prefetching mechanism by these two variables. @table @code -@item wl-cache-prefetch-folder-type-list -@vindex wl-cache-prefetch-folder-type-list -The initial setting is the list shown below: -@lisp -@group -(nntp imap4) -@end group -@end lisp - -@noindent -It specifies the folder types in which message prefetching is enabled. -In the initial setting, multi folder that contains localdir and imap4 -prefetches only imap4 messages. This variable precedes the value of -@code{wl-cache-prefetch-folder-list}. - -If you want to prefetch localdir and localnews also, following setting -is needed. +@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-cache-prefetch-folder-type-list - '(nntp imap4 localdir localnews)) +(setq wl-message-buffer-prefetch-folder-type-list + '(nntp imap4)) @end group @end lisp -@item wl-cache-prefetch-folder-list -@vindex wl-cache-prefetch-folder-list +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}. + +@item wl-message-buffer-prefetch-folder-list +@vindex wl-message-buffer-prefetch-folder-list The initial setting is @code{nil}. A list of regexp of folders to enable message prefetching. @end table @@ -2678,9 +2764,9 @@ Following is an example of @code{wl-refile-rule-alist}. ("^Wanderlust" . "+wl") ("^Elisp" . "+elisp")) (("To" "Cc") - ("\\([a-z]+\\)@@gohome.org" . "+\\1")) + ("\\([a-z]+\\)@@gohome\\.org" . "+\\1")) ("From" - ("me@@gohome.org" . ("To" ("you@@gohome.org" . + ("me@@gohome\\.org" . ("To" ("you@@gohome\\.org" . "+from-me-to-you")))))) @end group @end lisp @@ -3312,6 +3398,7 @@ With prefix argument, it affects on the all messages in the thread tree. @kindex m i (Summary) @findex wl-summary-target-mark-prefetch Prefetch all messages which have target mark @samp{*}. +With prefix argument, prefetch all targets even if some of them are cached. (@code{wl-summary-target-mark-prefetch}) @item m R @@ -3461,10 +3548,22 @@ If non-nil, first message is automatically displayed. @item wl-auto-select-next @vindex wl-auto-select-next -The initial setting is @code{nil}. If non-nil, jump to next summary -automatically. If @code{unread}, jump to next unread folder's summary -after confirmation. If @code{skip-no-unread}, unread folders are -automatically skipped. +The initial setting is @code{nil}. This controls behavior when there is +no unread message in current summary. + +@example +nil: asks whether you want to go back to folder mode +'unread: asks whether you want to go to next unread folder + If the next one comes to be possessing no unread message + by treatment of cross-posted messages or Scoring, then + asks whether you want to go to next to next folder. +'skip-no-unread: similar as unread + But does not ask before going to next to next folder. +otherwise: asks whether you want to go to next unread folder +@end example + +It might be useful to set @code{'skip-no-unread} for people who +want to continue reading by just pressing and pressing space key. @item wl-thread-insert-opened @vindex wl-thread-insert-opened @@ -3490,7 +3589,7 @@ folder is moved. @vindex wl-summary-weekday-name-lang The initial setting is @samp{ja}. Specify language of the weekday. @samp{en} displays English, @samp{fr} displays French, @samp{de} -displays Deutsch. +displays Deutsch. You should rescan summary view after changing this value. @item wl-summary-fix-timezone @vindex wl-summary-fix-timezone @@ -3515,17 +3614,6 @@ 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-recenter -@vindex wl-summary-recenter -The initial setting is t. -If non-nil, cursor point is moved to the center of the summary window. - -@item wl-summary-indent-length-limit -@vindex wl-summary-indent-length-limit -The initial setting is 46. -Specify the limit of thread indent level. -If nil, max indent level is unlimited. - @item wl-summary-no-from-message @vindex wl-summary-no-from-message The initial setting is @samp{nobody@@nowhere?}. A string which is @@ -3536,11 +3624,6 @@ displayed when there's no @samp{From:} field in the 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-width -@vindex wl-summary-width -The initial setting is 80. -Width of summary line. If @code{nil}, summary line's width is as is. - @item wl-summary-use-frame @vindex wl-summary-use-frame The initial setting is @code{nil}. @@ -3577,11 +3660,34 @@ The initial setting is @code{t}. If non-nil, last executed @kbd{p}, @kbd{P}, @kbd{n}, @kbd{N} toggles the direction of cursor move. If you want to aware of reading direction, set this to @code{t}. -@item wl-from-width -@vindex wl-from-width +@item wl-summary-width +@vindex wl-summary-width +The initial setting is 80. +Width of summary line. If @code{nil}, summary line's width is as is. + +@item wl-summary-from-width +@vindex wl-summary-from-width 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. +Specify the limit of thread indent level. @code{nil} means unlimited +indent level. +If you set this to @code{nil} you should set @code{wl-summary-width} +to @code{nil}, too. + +@item wl-summary-recenter +@vindex wl-summary-recenter +The initial setting is t. +If non-nil, cursor point is moved to the center of the summary window. + @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 @@ -3615,10 +3721,16 @@ When you entered to summary by these commands and the target summary buffer already exists, summary status is not automatically updated and cursor position is saved. -@item wl-summary-update-confirm-threshold -@vindex wl-summary-update-confirm-threshold +@item elmo-folder-update-threshold +@vindex elmo-folder-update-threshold The initial setting is 500. If updated message number is larger than -this value, confirm whether drop them or not. +this value, confirm whether drop them or not (in the case where the value +of @code{elmo-folder-update-confirm} is non-nil). + +@item elmo-folder-update-confirm +@vindex elmo-folder-update-confirm +The initial setting is @code{t}. If the value is non-nil, do check with +@code{elmo-folder-update-threshold}. @item wl-summary-always-sticky-folder-list @vindex wl-summary-always-sticky-folder-list @@ -3654,11 +3766,17 @@ The initial setting is the list shown below: If a message is already marked as temporal marks in this list, the message is skipped at cursor move. -@item wl-fetch-confirm-threshold -@vindex wl-fetch-confirm-threshold +@item elmo-message-fetch-threshold +@vindex elmo-message-fetch-threshold The initial setting is 30000 (bytes). If displaying message has larger size than this value, Wanderlust confirms whether fetch the message or -not. If @code{nil}, the message is fetched without confirmation. +not (in the case where the value of @code{elmo-message-fetch-confirm} +is non-nil). + +@item elmo-message-fetch-confirm +@vindex elmo-message-fetch-confirm +The initial setting is @code{t}. If the value is non-nil, do check with +@code{elmo-message-fetch-threshold}. @item wl-prefetch-threshold @vindex wl-prefetch-threshold @@ -3674,13 +3792,6 @@ The initial setting is @code{t}. If non-nil, Wanderlust confirms whether prefetch the message or not if the message has larger size than @code{wl-prefetch-threshold}. -@item wl-cache-fetch-threshold -@vindex wl-cache-fetch-threshold -The initial setting is 30000 (bytes). The messages which have larger -size than @code{wl-fetch-confirm-threshold} are skipped buffer caching -mechanism. If @code{nil}, any messages are prefetched by buffer caching -mechanism. - @item elmo-imap4-use-cache @vindex elmo-imap4-use-cache The initial setting is @code{t}. If non-nil, messages read via IMAP4 @@ -3858,13 +3969,13 @@ before sending the message. @lisp @group (setq wl-draft-config-alist - '(((string-match "aaa.example.com$" (system-name)) + '(((string-match "aaa\\.example\\.com$" (system-name)) ;; @r{applied if the expression is non-nil} (wl-smtp-posting-server . "mailserver-B") (wl-nntp-posting-server . "newsserver-B") ;; @r{settings of temporary variables} ) - ("^To: .*user@@aaa.bbb.example.com" + ("^To: .*user@@aaa\\.bbb\\.example\\.com" ;; @r{applied if it matches the header of the draft buffer} ("Organization" . (format "Go %s" my-webpage))) ;; @r{you can write elisp expressions here (eval only)} @@ -3894,6 +4005,7 @@ Per default, there are 10 following sub-functions. @example 'header: Inserts the specified string at the bottom of the header. +'header-top: Inserts the specified string at the top of the header. 'header-file: Inserts the specified file at the bottom of the header. 'x-face: Inserts @samp{X-Face:} field with the content of the specified file. 'top: Inserts the specified string at the top of the body. @@ -3903,6 +4015,8 @@ Per default, there are 10 following sub-functions. 'body-file: Replaces the body with the content of the specified file. 'bottom: Inserts the specified string at the bottom of the body. 'bottom-file: Inserts the specified file at the top of the body. +'part-top: Inserts the specified string at the top of the current part. +'part-bottom: Inserts the specified string at the bottom of the current part. 'template: Applies the specified template. (refer to the next subsection) @end example @@ -3931,6 +4045,9 @@ 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 @@ -4189,6 +4306,14 @@ Selects a template. Enter Address Manager. @xref{Address Manager}. (@code{wl-addrmgr}) + +@item C-c C-d +@kindex C-c C-d (Draft) +@findex wl-draft-elide-region +Elide the text between point and mark (@code{wl-draft-elide-region}). +The text is killed and replaced with the contents of the variable +@code{wl-draft-elide-ellipsis}. The default value is to use an ellipsis +(@samp{[...]}). @end table @section Customizable Variables @@ -4744,7 +4869,7 @@ off-line state. You can specify off-line state on a per server or port basis. Refer to @code{wl-reset-plugged-alist} also. Usually, when Wanderlust starts up, the plugged state of each port is -read from @file{~/.folder} and @code{wl-smtp-posting-server}, +read from @file{~/.folders} and @code{wl-smtp-posting-server}, @code{wl-nntp-posting-server} and so on. If you want to change the plugged state of these ports or to add other ports, configure @code{wl-make-plugged-hook} with a function. @@ -5449,7 +5574,7 @@ scores are defined, corresponding to folder names. @end lisp If paths to the score files are omitted, the directory specified in the -variable @code{wl-score-files-dir} is assumed. +variable @code{wl-score-files-directory} is assumed. No matter what you write in @code{wl-score-folder-alist}, the default score file @code{wl-score-default-file} (@file{all.SCORE}) is always @@ -5683,8 +5808,8 @@ Messages with these marks are scored. The initial setting is t. If non-nil, scoring is enabled. -@item wl-score-files-dir -@vindex wl-score-files-dir +@item wl-score-files-directory +@vindex wl-score-files-directory The initial setting is @file{~/.elmo/}. The default directory for score files. @@ -6129,13 +6254,8 @@ example of settings: @lisp @group -(autoload 'sc-cite-original "sc" nil t) -(setq mail-yank-hooks 'sc-cite-original) -(setq sc-preferred-header-style 1) -(setq sc-electric-references-p nil) -(setq sc-citation-leader "") -(setq sc-load-hook '(lambda () (require 'sc-register))) -(setq sc-preferred-attribution 'registeredname) +(autoload 'sc-cite-original "supercite" nil t) +(add-hook 'mail-citation-hook 'sc-cite-original) @end group @end lisp @@ -6174,8 +6294,7 @@ If you have installed one of the following, you can decode @menu * x-face-xmas:: XEmacs case -* x-face-mule:: Emacs 19.34, 20.x case -* x-face-e21:: Emacs 21.x case +* x-face-mule:: Emacs case @end menu If there is an encoded X-Face string in a file @file{~/.xface} (the @@ -6197,8 +6316,8 @@ If you use @file{x-face-xmas.el} in x-face (@uref{ftp://jpl.org/pub/elisp/}) @end group @end lisp -@node x-face-mule, x-face-e21, x-face-xmas, X-Face -@subsubsection x-face-mule (for Emacs 19.34, 20.x) +@node x-face-mule, , x-face-xmas, X-Face +@subsubsection x-face-mule (for Emacs) @pindex x-face-mule @pindex bitmap-mule @@ -6212,17 +6331,16 @@ If you use @file{x-face-mule.el} in bitmap-mule @end group @end lisp -@node x-face-e21, , x-face-mule, X-Face @subsubsection x-face-e21 (for Emacs 21.x) @pindex x-face-e21 -If you use @file{x-face-e21.el} (@uref{ftp://jpl.org/pub/elisp/}) -with bitmap-mule (@uref{ftp://ftp.jpl.org/pub/elisp/bitmap/}), -do the following: +With Emacs 21.x, you can use @file{x-face-e21.el} +(@uref{ftp://jpl.org/pub/elisp/}) instead of @file{x-face-mule.el} +to display X-Face. In this case, bitmap-mule is not required. +Do as follows: @lisp @group -(require 'bitmap) (autoload 'x-face-decode-message-header "x-face-e21") (setq wl-highlight-x-face-function 'x-face-decode-message-header) @end group