Synch with Oort Gnus.
authoryamaoka <yamaoka>
Mon, 18 Nov 2002 00:43:54 +0000 (00:43 +0000)
committeryamaoka <yamaoka>
Mon, 18 Nov 2002 00:43:54 +0000 (00:43 +0000)
lisp/gnus-nocem.el
lisp/gnus-sum.el
lisp/message.el
lisp/nnimap.el
lisp/nnlistserv.el
lisp/nnweb.el
texi/ChangeLog
texi/gnus-ja.texi
texi/gnus.texi

index e0f6a55..38bd552 100644 (file)
@@ -86,7 +86,7 @@ isn't bound, the message will be used unconditionally."
 (defcustom gnus-nocem-liberal-fetch nil
   "*If t try to fetch all messages which have @@NCM in the subject.
 Otherwise don't fetch messages which have references or whose message-id
-matches an previously scanned and verified nocem message."
+matches a previously scanned and verified nocem message."
   :group 'gnus-nocem
   :type 'boolean)
 
index 206c510..9db5b1b 100644 (file)
@@ -196,7 +196,7 @@ This applies to marking commands as well as other commands that
 the end of an article.
 
 If nil, the marking commands do NOT go to the next unread article
-(they go to the next article instead).  If `never', commands that
+\(they go to the next article instead).  If `never', commands that
 usually go to the next unread article, will go to the next article,
 whether it is read or not."
   :group 'gnus-summary-marks
index db1f07b..4ae7fb9 100644 (file)
@@ -5598,7 +5598,7 @@ than 988 characters long, and if they are not, trim them until they are."
   (when message-auto-save-directory
     (unless (file-directory-p
             (directory-file-name message-auto-save-directory))
-      (gnus-make-directory message-auto-save-directory))
+      (make-directory message-auto-save-directory t))
     (if (gnus-alive-p)
        (setq message-draft-article
              (nndraft-request-associate-buffer "drafts"))
index a6530b8..72e38fa 100644 (file)
@@ -886,7 +886,7 @@ function is generally only called when Gnus is shutting down."
   "Update the unseen count in `nnimap-mailbox-info'."
   (gnus-sethash
    (gnus-group-prefixed-name group server)
-   (let ((old (gnus-gethash-safe (gnus-group-prefixed-name group server) 
+   (let ((old (gnus-gethash-safe (gnus-group-prefixed-name group server)
                                 nnimap-mailbox-info)))
      (list (nth 0 old) (nth 1 old)
           (imap-mailbox-status group 'unseen nnimap-server-buffer)
@@ -999,7 +999,7 @@ function is generally only called when Gnus is shutting down."
                             'asyncgroups
                           'slowgroups)
                         (list group (imap-mailbox-status-asynch
-                                     group '(uidvalidity uidnext unseen) 
+                                     group '(uidvalidity uidnext unseen)
                                      nnimap-server-buffer))))
          (dolist (asyncgroup asyncgroups)
            (let ((group (nth 0 asyncgroup))
@@ -1010,7 +1010,7 @@ function is generally only called when Gnus is shutting down."
                              (nth 0 (gnus-gethash (gnus-group-prefixed-name
                                                    group server)
                                                   nnimap-mailbox-info))
-                             (imap-mailbox-get 'uidvalidity group 
+                             (imap-mailbox-get 'uidvalidity group
                                                nnimap-server-buffer)))
                        (not (string=
                              (nth 1 (gnus-gethash (gnus-group-prefixed-name
@@ -1361,7 +1361,7 @@ function is generally only called when Gnus is shutting down."
                        nnmail-expiry-wait)))
          (cond ((or force (eq days 'immediate))
                 (let ((oldarts (imap-search
-                                (concat "UID " 
+                                (concat "UID "
                                         (imap-range-to-message-set artseq)))))
                   (when oldarts
                     (nnimap-expiry-target oldarts group server)
@@ -1380,7 +1380,7 @@ function is generally only called when Gnus is shutting down."
                     (nnimap-expiry-target oldarts group server)
                     (when (imap-message-flags-add
                            (imap-range-to-message-set oldarts) "\\Deleted")
-                      (setq articles (gnus-set-difference 
+                      (setq articles (gnus-set-difference
                                       articles oldarts)))))))))))
   ;; return articles not deleted
   articles)
index 3098bf0..1008141 100644 (file)
@@ -80,7 +80,7 @@
 ;;;
 
 (defun nnlistserv-kk-create-mapping ()
-  "Perform the search and create an number-to-url alist."
+  "Perform the search and create a number-to-url alist."
   (save-excursion
     (set-buffer nnweb-buffer)
     (let ((case-fold-search t)
index ece9640..c4bc8c5 100644 (file)
@@ -403,7 +403,7 @@ Valid types include `google', `dejanews', and `gmane'.")
       (caar map))))
 
 (defun nnweb-google-create-mapping ()
-  "Perform the search and create an number-to-url alist."
+  "Perform the search and create a number-to-url alist."
   (save-excursion
     (set-buffer nnweb-buffer)
     (erase-buffer)
index 0d113d2..952944a 100644 (file)
@@ -1,3 +1,8 @@
+2002-11-17  Simon Josefsson  <jas@extundo.com>
+
+       * gnus.texi (Expiring in IMAP): Add.
+       (Group Parameters): Add reference.
+
 2002-10-24  ShengHuo ZHU  <zsh@cs.rochester.edu>
 
        * gnus.texi (RSS): Add gnus-summary-mark-as-read-forward into the
index d3b6af7..dff0513 100644 (file)
@@ -811,6 +811,7 @@ Browsing the Web
 @sc{imap}
 
 * Splitting in IMAP::           nnimap \e$B$G%a!<%k$rJ,3d$9$k\e(B
+* Expiring in IMAP::            nnimap \e$B$K$h$k%a!<%k$N4|8B@Z$l>C5n\e(B
 * Editing IMAP ACLs::           \e$B%a!<%k%\%C%/%9$X$NB>$NMxMQ<T$N;HMQ$r@)8B\e(B
                                 /\e$B5v2D$9$k\e(B
 * Expunging mailboxes::         "\e$B%a!<%k%\%C%/%905=L\e(B" \e$B%\%?%s$HEy2A$J$b$N\e(B
@@ -2876,8 +2877,9 @@ kiboze \e$B%0%k!<%W$r:n@.$7$^$9!#%W%m%s%W%H$GL>A0$H!"\e(Bkiboze \e$B%0%k!<%W$K!V4^$
 \e$B%0%k!<%W%Q%i%a!<%?$K\e(B @code{(expiry-wait . 10)} \e$B$N$h$&$JMWAG$,$"$l$P!"$3\e(B
 \e$B$NCM$O5-;v$r;~8B>C5n$9$k$H$-\e(B
 \e$B$K\e(B @code{nnmail-expiry-wait} \e$B$H\e(B @code{nnmail-expiry-wait-function} \e$B$N@_\e(B
-\e$BDj$h$j$bM%@h$5$l$^$9!#$3$NCM$O;~8B>C5n$NF|?t\e(B (\e$B@0?t$G$"$kI,MW$O$J$$\e(B) \e$B$+$b\e(B
-\e$B$7$/$O\e(B @code{never} \e$B$+\e(B @code{immediate} \e$B$N%7%s%\%k$r;XDj$G$-$^$9!#\e(B
+\e$BDj\e(B (@pxref{Expiring Mail}) \e$B$h$j$bM%@h$5$l$^$9!#$3$NCM$O;~8B>C5n$NF|\e(B
+\e$B?t\e(B (\e$B@0?t$G$"$kI,MW$O$J$$\e(B) \e$B$+$b$7$/$O\e(B @code{never} \e$B$+\e(B @code{immediate} \e$B$N\e(B
+\e$B%7%s%\%k$r;XDj$G$-$^$9!#\e(B
 
 @item score-file
 @cindex score file group parameter
@@ -14774,6 +14776,7 @@ nnimap \e$B$K5-;v$NFbItE*$JF|IU$NBe$o$j$K\e(B Date: \e$B$r;H$&$h$&$K$5$;$^$9!#$5$i$
 
 @menu
 * Splitting in IMAP::           nnimap \e$B$G%a!<%k$rJ,3d$9$k\e(B
+* Expiring in IMAP::            nnimap \e$B$K$h$k%a!<%k$N4|8B@Z$l>C5n\e(B
 * Editing IMAP ACLs::           \e$B%a!<%k%\%C%/%9$X$NB>$NMxMQ<T$N;HMQ$r@)8B\e(B
                                 /\e$B5v2D$9$k\e(B
 * Expunging mailboxes::         "\e$B%a!<%k%\%C%/%905=L\e(B" \e$B%\%?%s$HEy2A$J$b$N\e(B
@@ -14932,6 +14935,41 @@ nnimap \e$BFCM-$NFC5iJ,3dJ}<0$r\e(B @code{nnimap-split-fancy} \e$B$KDj5A$7$F2<$5$$!
 Nnmail \e$B$GBP1~$9$k$b$N\e(B: @code{nnmail-split-fancy}.
 @end table
 
+@node Expiring in IMAP
+@subsection IMAP \e$B$G$N4|8B@Z$l>C5n\e(B
+@cindex expiring imap mail
+
+@sc{nnimap} \e$B$O40A4$J\e(B @sc{nnmail} \e$BM3Mh$N%P%C%/%(%s%I$G$O$"$j$^$;$s$,!"$?\e(B
+\e$B$$$F$$$N4|8B@Z$l>C5n\e(B (@pxref{Expiring Mail}) \e$B$NI8=`5!G=$r%5%]!<%H$7$^$9!#\e(B
+IMAP \e$B$NJ,3d\e(B (@pxref{Splitting in IMAP}) \e$B$G$O\e(B @sc{nnmail} \e$B$NJQ?t$rJ#@=$7\e(B
+\e$B$J$$\e(B (\e$BNc$($P\e(B @var{nnimap-expiry-wait} \e$B$r@8@.$7$J$$\e(B) \e$BE@$,0c$&$N$G$9$,!"\e(B
+@sc{nnmail} \e$B$NJQ?t$rN.MQ$7$^$9!#0J2<$O\e(B @sc{nnimap} \e$B$N4|8B@Z$l>C5n=hM}$G\e(B
+\e$B;H$o$l$kJQ?t$H!";HMQJ}K!$K4XO"$7$?Cm<a$G$9!#\e(B
+
+\e$B4|8B@Z$l>C5n$N0u$,$I$N$h$&$KE,@Z$K\e(B @sc{imap} \e$B%5!<%P!<$K5-O?$5$l$k$+$K$D\e(B
+\e$B$$$F$b$3$3$G8@5Z$7$F$*$-$^$7$g$&!#4|8B@Z$l>C5n$N0u$O\e(B @sc{imap} \e$B%/%i%$%"\e(B
+\e$B%s%HFCM-$N0u$G$"$k\e(B @code{gnus-expire} \e$B$KJQ49$5$l!"%a%C%;!<%8$K5-O?$5$l$^\e(B
+\e$B$9!#$3$l$O!"B>$N%/%i%$%"%s%H$O%a%C%;!<%8$N%/%i%$%"%s%HFCM-$N%U%i%0$r8+$k\e(B
+\e$B$+$b$7$l$J$$$N$KBP$7$F!"\e(BGnus \e$B$O$?$V$s\e(B @code{gnus-expire} \e$B$N0u$rE,@Z$K07\e(B
+\e$B$$M}2r$9$k$@$1$G$"$k$3$H$r0UL#$7$^$9!#$^$?$3$l$O%5!<%P!<$,!"%/%i%$%"%s%H\e(B
+\e$BFCM-$N%U%i%0$N%a%C%;!<%8$X$N915WE*$JJ]B8$r%5%]!<%H$7$J$1$l$P$J$i$J$$$3$H\e(B
+\e$B$b0UL#$7$^$9!#9,$$$K!"$?$$$F$$$O%5%]!<%H$7$^$9!#\e(B
+
+@table @code
+@item nnmail-expiry-wait
+@item nnmail-expiry-wait-function
+
+\e$B$3$l$i$NJQ?t$O40A4$K%5%]!<%H$5$l$F$$$^$9!#4|8B@Z$l>C5n$NCM$O!"?t!"%7%s%\\e(B
+\e$B%k$N\e(B @var{immediate} \e$B$^$?$O\e(B @var{never} \e$B$G$9!#\e(B
+
+@item nnmail-expiry-target
+
+\e$B$3$NJQ?t$O%5%]!<%H$5$l$F$$$F!"FbItE*$K$O$3$l$r07$&\e(B @sc{nnmail} \e$B4X?t$r8F\e(B
+\e$B$V$3$H$K$h$C$F<BAu$5$l$F$$$^$9!#$b$79T$-@h$,F1$8%5!<%P!<$N\e(B IMAP \e$B%0%k!<%W\e(B
+\e$B$@$C$?$i!"5-;v$ODI2C$5$l$kBe$o$j$K%3%T!<$5$l$k\e(B (\e$B%"%C%W%m!<%I$7D>$5$l\e(B
+\e$B$k\e(B) \e$B$H$$$&:GE,2=$b4^$_$^$9!#\e(B
+@end table
+
 @node Editing IMAP ACLs
 @subsection IMAP \e$B$N\e(B ACL \e$B$rJT=8$9$k!#\e(B
 @cindex editing imap acls
index 45f2045..09fc2b7 100644 (file)
@@ -716,6 +716,7 @@ Browsing the Web
 @sc{imap}
 
 * Splitting in IMAP::           Splitting mail with nnimap.
+* Expiring in IMAP::            Expiring mail with nnimap.
 * Editing IMAP ACLs::           Limiting/enabling other users access to a mailbox.
 * Expunging mailboxes::         Equivalent of a "compress mailbox" button.
 * A note on namespaces::        How to (not) use IMAP namespace in Gnus.
@@ -2775,11 +2776,12 @@ See also @code{gnus-total-expirable-newsgroups}.
 @item expiry-wait
 @cindex expiry-wait
 @vindex nnmail-expiry-wait-function
-If the group parameter has an element that looks like @code{(expiry-wait
-. 10)}, this value will override any @code{nnmail-expiry-wait} and
-@code{nnmail-expiry-wait-function} when expiring expirable messages.
-The value can either be a number of days (not necessarily an integer) or
-the symbols @code{never} or @code{immediate}.
+If the group parameter has an element that looks like
+@code{(expiry-wait . 10)}, this value will override any
+@code{nnmail-expiry-wait} and @code{nnmail-expiry-wait-function}
+(@pxref{Expiring Mail}) when expiring expirable messages.  The value
+can either be a number of days (not necessarily an integer) or the
+symbols @code{never} or @code{immediate}.
 
 @item score-file
 @cindex score file group parameter
@@ -15190,6 +15192,7 @@ variable @code{nntp-authinfo-file} for exact syntax; also see
 
 @menu
 * Splitting in IMAP::           Splitting mail with nnimap.
+* Expiring in IMAP::            Expiring mail with nnimap.
 * Editing IMAP ACLs::           Limiting/enabling other users access to a mailbox.
 * Expunging mailboxes::         Equivalent of a "compress mailbox" button.
 * A note on namespaces::        How to (not) use IMAP namespace in Gnus.
@@ -15355,6 +15358,44 @@ Nnmail equivalent: @code{nnmail-split-fancy}.
 
 @end table
 
+@node Expiring in IMAP
+@subsection Expiring in IMAP
+@cindex expiring imap mail
+
+Even though @sc{nnimap} is not a proper @sc{nnmail} derived backend,
+it supports most features in regular expiring (@pxref{Expiring Mail}).
+Unlike splitting in IMAP (@pxref{Splitting in IMAP}) it do not clone
+the @sc{nnmail} variables (i.e., creating @var{nnimap-expiry-wait})
+but reuse the @sc{nnmail} variables.  What follows below are the
+variables used by the @sc{nnimap} expiry process and any related notes
+on their usage.
+
+A note on how the expire mark is stored on the @sc{imap} server is
+appropriate here as well.  The expire mark is translated into a
+@sc{imap} client specific mark @code{gnus-expire} and store on the
+message.  This means that only likely only Gnus will understand and
+treat the @code{gnus-expire} mark properly, although other clients may
+allow to view client specific flags on a message.  It also means that
+your server must support the permanent storage of client specific
+flags on messages.  Most do, fortunately.
+
+@table @code
+
+@item nnmail-expiry-wait
+@item nnmail-expiry-wait-function
+
+These variables are fully supported.  The expire value can be a
+number, the symbol @var{immediate} or @var{never}.
+
+@item nnmail-expiry-target
+
+This variable is supported, and internally implemented by calling the
+@sc{nnmail} functions that handle this.  It contains an optimization
+that if the destination is a IMAP group on the same server, the
+article is copied instead of appended (that is, uploaded again).
+
+@end table
+
 @node Editing IMAP ACLs
 @subsection Editing IMAP ACLs
 @cindex editing imap acls