From: Miles Bader Date: Mon, 5 Sep 2005 23:58:09 +0000 (+0000) Subject: Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-530 X-Git-Tag: emacs-pretest-22.0.90~7251 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=4a2358e9b441957fee140ac981cea71720984e6f;p=emacs.git Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-530 Merge from gnus--rel--5.10 Patches applied: * gnus--rel--5.10 (patch 106-111) - Merge from emacs--cvs-trunk--0 - Update from CVS 2005-09-05 Reiner Steib * lisp/gnus/message.el (message-tab-body-function): Fixed mismatched custom type. * lisp/gnus/gnus.el (gnus-group-change-level-function): Ditto. * lisp/gnus/gnus-msg.el (gnus-outgoing-message-group): Ditto. * lisp/gnus/gnus-art.el (gnus-signature-limit) (gnus-article-mime-part-function): Ditto. 2005-09-04 Reiner Steib * lisp/gnus/nnweb.el (nnweb-type-definition, nnweb-google-wash-article): Make fetching article by MID work again for Google Groups. Added FIXME concerning gnus-group-make-web-group. * lisp/gnus/mml-smime.el (mml-smime-sign-query, mml-smime-get-dns-cert): Don't depend on Gnus by using mail-extract-address-components if gnus-extract-address-components is not bound. * lisp/gnus/gnus.el (gnus-user-agent): Use list of symbols instead of symbols. Display full version number for (S)XEmacs. Optionally display (S)XEmacs codename. * lisp/gnus/gnus-util.el (gnus-emacs-version): Update for new `gnus-user-agent'. * lisp/gnus/gnus-msg.el (gnus-extended-version): Make it possible to omit Gnus version. 2005-09-02 Hrvoje Niksic * lisp/gnus/mm-encode.el (mm-encode-content-transfer-encoding): Likewise when encoding. * lisp/gnus/mm-bodies.el (mm-decode-content-transfer-encoding): De-canonicalize CRLF for all text content types, not just text/plain. 2005-09-02 Katsumi Yamaoka * lisp/gnus/gnus-sum.el (gnus-thread-hide-subtree): Doc fix. * lisp/gnus/gnus-msg.el (gnus-inews-insert-gcc): Fix the mistake of using list, not listp. 2005-08-29 Romain Francoise * lisp/gnus/gnus-fun.el (gnus-convert-image-to-face-command): Fix typo in docstring. (gnus-face-from-file): Likewise. 2005-08-31 Juanma Barranquero * lisp/gnus/gnus-art.el (w3m-minor-mode-map): * lisp/gnus/gnus-spec.el (gnus-newsrc-file-version): * lisp/gnus/gnus-util.el (nnmail-active-file-coding-system) (gnus-original-article-buffer, gnus-user-agent): * lisp/gnus/gnus.el (gnus-ham-process-destinations) (gnus-parameter-ham-marks-alist) (gnus-parameter-spam-marks-alist, gnus-spam-autodetect) (gnus-spam-autodetect-methods, gnus-spam-newsgroup-contents) (gnus-spam-process-destinations, gnus-spam-process-newsgroups): * lisp/gnus/mm-decode.el (gnus-current-window-configuration): * lisp/gnus/mm-extern.el (gnus-article-mime-handles): * lisp/gnus/mm-url.el (url-current-object, url-package-name) (url-package-version): * lisp/gnus/mm-view.el (gnus-article-mime-handles, gnus-newsgroup-charset) (smime-keys, w3m-cid-retrieve-function-alist) (w3m-current-buffer, w3m-display-inline-images) (w3m-minor-mode-map): * lisp/gnus/mml-smime.el (gnus-extract-address-components): * lisp/gnus/mml.el (gnus-article-mime-handles, gnus-mouse-2) (gnus-newsrc-hashtb, message-default-charset) (message-deletable-headers, message-options) (message-posting-charset, message-required-mail-headers) (message-required-news-headers): * lisp/gnus/mml1991.el (mc-pgp-always-sign): * lisp/gnus/mml2015.el (mc-pgp-always-sign): * lisp/gnus/nnheader.el (nnmail-extra-headers): * lisp/gnus/rfc1843.el (gnus-decode-encoded-word-function) (gnus-decode-header-function, gnus-newsgroup-name): * lisp/gnus/spam-stat.el (gnus-original-article-buffer): Add defvars. --- diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 198e395d260..530758aefb0 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,89 @@ +2005-09-05 Reiner Steib + + * message.el (message-tab-body-function): Fixed mismatched custom + type. + + * gnus.el (gnus-group-change-level-function): Ditto. + + * gnus-msg.el (gnus-outgoing-message-group): Ditto. + + * gnus-art.el (gnus-signature-limit) + (gnus-article-mime-part-function): Ditto. + +2005-09-04 Reiner Steib + + * nnweb.el (nnweb-type-definition, nnweb-google-wash-article): + Make fetching article by MID work again for Google Groups. Added + FIXME concerning gnus-group-make-web-group. + + * mml-smime.el (mml-smime-sign-query, mml-smime-get-dns-cert): + Don't depend on Gnus by using mail-extract-address-components if + gnus-extract-address-components is not bound. + + * gnus.el (gnus-user-agent): Use list of symbols instead of + symbols. Display full version number for (S)XEmacs. Optionally + display (S)XEmacs codename. + + * gnus-util.el (gnus-emacs-version): Update for new + `gnus-user-agent'. + + * gnus-msg.el (gnus-extended-version): Make it possible to omit + Gnus version. + +2005-09-02 Hrvoje Niksic + + * mm-encode.el (mm-encode-content-transfer-encoding): Likewise + when encoding. + + * mm-bodies.el (mm-decode-content-transfer-encoding): + De-canonicalize CRLF for all text content types, not just + text/plain. + +2005-09-02 Katsumi Yamaoka + + * gnus-sum.el (gnus-thread-hide-subtree): Doc fix. + + * gnus-msg.el (gnus-inews-insert-gcc): Fix the mistake of using + list, not listp. + +2005-08-29 Romain Francoise + + * gnus-fun.el (gnus-convert-image-to-face-command): Fix typo in + docstring. + (gnus-face-from-file): Likewise. + +2005-08-31 Juanma Barranquero + + * gnus-art.el (w3m-minor-mode-map): + * gnus-spec.el (gnus-newsrc-file-version): + * gnus-util.el (nnmail-active-file-coding-system) + (gnus-original-article-buffer, gnus-user-agent): + * gnus.el (gnus-ham-process-destinations) + (gnus-parameter-ham-marks-alist) + (gnus-parameter-spam-marks-alist, gnus-spam-autodetect) + (gnus-spam-autodetect-methods, gnus-spam-newsgroup-contents) + (gnus-spam-process-destinations, gnus-spam-process-newsgroups): + * mm-decode.el (gnus-current-window-configuration): + * mm-extern.el (gnus-article-mime-handles): + * mm-url.el (url-current-object, url-package-name) + (url-package-version): + * mm-view.el (gnus-article-mime-handles, gnus-newsgroup-charset) + (smime-keys, w3m-cid-retrieve-function-alist) + (w3m-current-buffer, w3m-display-inline-images) + (w3m-minor-mode-map): + * mml-smime.el (gnus-extract-address-components): + * mml.el (gnus-article-mime-handles, gnus-mouse-2) + (gnus-newsrc-hashtb, message-default-charset) + (message-deletable-headers, message-options) + (message-posting-charset, message-required-mail-headers) + (message-required-news-headers): + * mml1991.el (mc-pgp-always-sign): + * mml2015.el (mc-pgp-always-sign): + * nnheader.el (nnmail-extra-headers): + * rfc1843.el (gnus-decode-encoded-word-function) + (gnus-decode-header-function, gnus-newsgroup-name): + * spam-stat.el (gnus-original-article-buffer): Add defvars. + 2005-08-31 Juanma Barranquero * gnus-art.el (w3m-minor-mode-map): diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el index 822448fa460..b07954772d2 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el @@ -236,7 +236,8 @@ longer (in lines) than that number. If it is a function, the function will be called without any parameters, and if it returns nil, there is no signature in the buffer. If it is a string, it will be used as a regexp. If it matches, the text in question is not a signature." - :type '(choice (integer :value 200) + :type '(choice (const nil) + (integer :value 200) (number :value 4.0) (function :value fun) (regexp :value ".*")) @@ -869,7 +870,8 @@ see http://www.cs.indiana.edu/picons/ftp/index.html" This is meant for people who want to do something automatic based on parts -- for instance, adding Vcard info to a database." :group 'gnus-article-mime - :type 'function) + :type '(choice (const nil) + function)) (defcustom gnus-mime-multipart-functions nil "An alist of MIME types to functions to display them." diff --git a/lisp/gnus/gnus-fun.el b/lisp/gnus/gnus-fun.el index 94f42efc360..43cd02c1b5e 100644 --- a/lisp/gnus/gnus-fun.el +++ b/lisp/gnus/gnus-fun.el @@ -54,7 +54,7 @@ on stdout." :type 'string) (defcustom gnus-convert-image-to-face-command "djpeg %s | ppmnorm | pnmscale -width 48 -height 48 | ppmquant %d | pnmtopng" - "Command for converting an image to an Face. + "Command for converting an image to a Face. By default it takes a JPEG filename and output the Face header data on stdout." :version "22.1" @@ -110,7 +110,7 @@ Output to the current buffer, replace text, and don't mingle error." ;;;###autoload (defun gnus-face-from-file (file) - "Return an Face header based on an image file." + "Return a Face header based on an image file." (interactive "fImage file name (by default JPEG): ") (when (file-exists-p file) (let ((done nil) diff --git a/lisp/gnus/gnus-msg.el b/lisp/gnus/gnus-msg.el index 0614a2304f7..eced2a8097a 100644 --- a/lisp/gnus/gnus-msg.el +++ b/lisp/gnus/gnus-msg.el @@ -67,8 +67,10 @@ message in, you can set this variable to a function that checks the current newsgroup name and then returns a suitable group name (or list of names)." :group 'gnus-message - :type '(choice (string :tag "Group") - (function))) + :type '(choice (const nil) + (function) + (string :tag "Group") + (repeat :tag "List of groups" (string :tag "Group")))) (defcustom gnus-mailing-list-groups nil "*If non-nil a regexp matching groups that are really mailing lists. @@ -1031,17 +1033,18 @@ If SILENT, don't prompt the user." "Stringified Gnus version and Emacs version. See the variable `gnus-user-agent'." (interactive) - (let* ((float-output-format nil) - (gnus-v - (concat "Gnus/" - (prin1-to-string (gnus-continuum-version gnus-version) t) - " (" gnus-version ")")) - (emacs-v (gnus-emacs-version))) - (if (stringp gnus-user-agent) - gnus-user-agent - (concat gnus-v - (when emacs-v - (concat " " emacs-v)))))) + (if (stringp gnus-user-agent) + gnus-user-agent + ;; `gnus-user-agent' is a list: + (let* ((float-output-format nil) + (gnus-v + (when (memq 'gnus gnus-user-agent) + (concat "Gnus/" + (prin1-to-string (gnus-continuum-version gnus-version) t) + " (" gnus-version ")"))) + (emacs-v (gnus-emacs-version))) + (concat gnus-v (when (and gnus-v emacs-v) " ") + emacs-v)))) ;;; @@ -1661,7 +1664,7 @@ this is a reply." (gcc (cond ((functionp group) (funcall group)) - ((or (stringp group) (list group)) + ((or (stringp group) (listp group)) group)))) (when gcc (insert "Gcc: " diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el index c2f7143a9ca..73837e21902 100644 --- a/lisp/gnus/gnus-sum.el +++ b/lisp/gnus/gnus-sum.el @@ -257,8 +257,7 @@ simplification is selected." "*If non-nil, hide all threads initially. This can be a predicate specifier which says which threads to hide. If threads are hidden, you have to run the command -`gnus-summary-show-thread' by hand or use `gnus-select-article-hook' -to expose hidden threads." +`gnus-summary-show-thread' by hand or select an article." :group 'gnus-thread :type '(radio (sexp :format "Non-nil\n" :match (lambda (widget value) diff --git a/lisp/gnus/gnus-util.el b/lisp/gnus/gnus-util.el index 69bcee90110..4c1721029be 100644 --- a/lisp/gnus/gnus-util.el +++ b/lisp/gnus/gnus-util.el @@ -1,7 +1,7 @@ ;;; gnus-util.el --- utility functions for Gnus -;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -;; 2005 Free Software Foundation, Inc. +;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news @@ -1517,41 +1517,48 @@ predicate on the elements." (nconc (nreverse res) list1 list2)))) (eval-when-compile - (defvar xemacs-codename)) + (defvar xemacs-codename) + (defvar sxemacs-codename) + (defvar emacs-program-version)) (defun gnus-emacs-version () "Stringified Emacs version." - (let ((system-v - (cond - ((eq gnus-user-agent 'emacs-gnus-config) - system-configuration) - ((eq gnus-user-agent 'emacs-gnus-type) - (symbol-name system-type)) - (t nil)))) + (let* ((lst (if (listp gnus-user-agent) + gnus-user-agent + '(gnus emacs type))) + (system-v (cond ((memq 'config lst) + system-configuration) + ((memq 'type lst) + (symbol-name system-type)) + (t nil))) + codename emacsname) + (cond ((featurep 'sxemacs) + (setq emacsname "SXEmacs" + codename sxemacs-codename)) + ((featurep 'xemacs) + (setq emacsname "XEmacs" + codename xemacs-codename)) + (t + (setq emacsname "Emacs"))) (cond - ((eq gnus-user-agent 'gnus) + ((not (memq 'emacs lst)) nil) ((string-match "^\\(\\([.0-9]+\\)*\\)\\.[0-9]+$" emacs-version) + ;; Emacs: (concat "Emacs/" (match-string 1 emacs-version) (if system-v (concat " (" system-v ")") ""))) - ((string-match - "\\([A-Z]*[Mm][Aa][Cc][Ss]\\)[^(]*\\(\\((beta.*)\\|'\\)\\)?" - emacs-version) - (concat - (match-string 1 emacs-version) - (format "/%d.%d" emacs-major-version emacs-minor-version) - (if (match-beginning 3) - (match-string 3 emacs-version) - "") - (if (boundp 'xemacs-codename) - (concat - " (" xemacs-codename - (if system-v - (concat ", " system-v ")") + ((or (featurep 'sxemacs) (featurep 'xemacs)) + ;; XEmacs or SXEmacs: + (concat emacsname "/" emacs-program-version + " (" + (when (and (memq 'codename lst) + codename) + (concat codename + (when system-v ", "))) + (when system-v system-v) ")")) - ""))) (t emacs-version)))) (defun gnus-rename-file (old-path new-path &optional trim) diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el index e1abe07b559..d0e199e2d06 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el @@ -2343,7 +2343,8 @@ following hook: "Function run when a group level is changed. It is called with three parameters -- GROUP, LEVEL and OLDLEVEL." :group 'gnus-group-levels - :type 'function) + :type '(choice (const nil) + function)) ;;; Face thingies. @@ -2472,24 +2473,45 @@ This should be an alist for Emacs, or a plist for XEmacs." (symbol :tag "Parameter") (sexp :tag "Value"))))) -(defcustom gnus-user-agent 'emacs-gnus-type +(defcustom gnus-user-agent '(emacs gnus type) "Which information should be exposed in the User-Agent header. -It can be one of the symbols `gnus' \(show only Gnus version\), `emacs-gnus' -\(show only Emacs and Gnus versions\), `emacs-gnus-config' \(same as -`emacs-gnus' plus system configuration\), `emacs-gnus-type' \(same as -`emacs-gnus' plus system type\) or a custom string. If you set it to a -string, be sure to use a valid format, see RFC 2616." +Can be a list of symbols or a string. Valid symbols are `gnus' +\(show Gnus version\) and `emacs' \(show Emacs version\). In +addition to the Emacs version, you can add `codename' \(show +\(S\)XEmacs codename\) or either `config' \(show system +configuration\) or `type' \(show system type\). If you set it to +a string, be sure to use a valid format, see RFC 2616." + :version "22.1" :group 'gnus-message - :type '(choice - (item :tag "Show Gnus and Emacs versions and system type" - emacs-gnus-type) - (item :tag "Show Gnus and Emacs versions and system configuration" - emacs-gnus-config) - (item :tag "Show Gnus and Emacs versions" emacs-gnus) - (item :tag "Show only Gnus version" gnus) - (string :tag "Other"))) + :type '(choice (list (set :inline t + (const gnus :tag "Gnus version") + (const emacs :tag "Emacs version") + (choice :tag "system" + (const type :tag "system type") + (const config :tag "system configuration")) + (const codename :tag "Emacs codename"))) + (string))) + +;; Convert old (No Gnus < 2005-01-10, v5-10 < 2005-09-05) symbol type values: +(when (symbolp gnus-user-agent) + (setq gnus-user-agent + (cond ((eq gnus-user-agent 'emacs-gnus-config) + '(emacs gnus config)) + ((eq gnus-user-agent 'emacs-gnus-type) + '(emacs gnus type)) + ((eq gnus-user-agent 'emacs-gnus) + '(emacs gnus)) + ((eq gnus-user-agent 'gnus) + '(gnus)) + (t gnus-user-agent))) + (gnus-message 1 "Converted `gnus-user-agent' to `%s'." gnus-user-agent) + (sit-for 1) + (if (get 'gnus-user-agent 'saved-value) + (customize-save-variable 'gnus-user-agent gnus-user-agent) + (gnus-message 1 "Edit your init file to make this change permanent.") + (sit-for 2))) ;;; Internal variables diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index 7c55b7cc72f..5995fcbcea0 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el @@ -6631,7 +6631,8 @@ If nil, the function bound in `text-mode-map' or `global-map' is executed." :version "22.1" :group 'message :link '(custom-manual "(message)Various Commands") - :type 'function) + :type '(choice (const nil) + function)) (defun message-tab () "Complete names according to `message-completion-alist'. diff --git a/lisp/gnus/mm-bodies.el b/lisp/gnus/mm-bodies.el index ffca7da75bf..e9f8f1e9391 100644 --- a/lisp/gnus/mm-bodies.el +++ b/lisp/gnus/mm-bodies.el @@ -228,7 +228,7 @@ If TYPE is `text/plain' CRLF->LF translation may occur." nil)) (when (and (memq encoding '(base64 x-uuencode x-uue x-binhex x-yenc)) - (equal type "text/plain")) + (string-match "\\`text/" type)) (goto-char (point-min)) (while (search-forward "\r\n" nil t) (replace-match "\n" t t))))) diff --git a/lisp/gnus/mm-encode.el b/lisp/gnus/mm-encode.el index fd6251c37d3..5e149d16ed3 100644 --- a/lisp/gnus/mm-encode.el +++ b/lisp/gnus/mm-encode.el @@ -118,7 +118,7 @@ ENCODING can be: nil (do nothing); one of `quoted-printable', `base64'; ;; Likewise base64 below. (quoted-printable-encode-region (point-min) (point-max) t)) ((eq encoding 'base64) - (when (equal type "text/plain") + (when (string-match "\\`text/" type) (goto-char (point-min)) (while (search-forward "\n" nil t) (replace-match "\r\n" t t))) diff --git a/lisp/gnus/mml-smime.el b/lisp/gnus/mml-smime.el index 8a5ba61d002..25cb3094cbb 100644 --- a/lisp/gnus/mml-smime.el +++ b/lisp/gnus/mml-smime.el @@ -81,7 +81,10 @@ (list 'keyfile (if (= (length smime-keys) 1) (cadar smime-keys) - (or (let ((from (cadr (funcall gnus-extract-address-components + (or (let ((from (cadr (funcall (if (boundp + 'gnus-extract-address-components) + gnus-extract-address-components + 'mail-extract-address-components) (or (save-excursion (save-restriction (message-narrow-to-headers) @@ -107,7 +110,10 @@ (while (not result) (setq who (read-from-minibuffer (format "%sLookup certificate for: " (or bad "")) - (cadr (funcall gnus-extract-address-components + (cadr (funcall (if (boundp + 'gnus-extract-address-components) + gnus-extract-address-components + 'mail-extract-address-components) (or (save-excursion (save-restriction (message-narrow-to-headers) diff --git a/lisp/gnus/nnweb.el b/lisp/gnus/nnweb.el index d05520ee1dc..85c8d4c5239 100644 --- a/lisp/gnus/nnweb.el +++ b/lisp/gnus/nnweb.el @@ -27,6 +27,12 @@ ;; Note: You need to have `w3' installed for some functions to work. +;; FIXME: Due to changes in the HTML output of Google Groups and Gmane, stuff +;; related to web groups (gnus-group-make-web-group) doesn't work anymore. + +;; Fetching an article by MID (cf. gnus-refer-article-method) over Google +;; Groups should work. + ;;; Code: (eval-when-compile (require 'cl)) @@ -54,13 +60,13 @@ Valid types include `google', `dejanews', and `gmane'.") (defvar nnweb-type-definition '((google - (article . ignore) - (id . "http://groups.google.de/groups?selm=%s&output=gplain") + (id . "http://www.google.com/groups?as_umsgid=%s&hl=en&dmode=source") + (article . nnweb-google-wash-article) (reference . identity) (map . nnweb-google-create-mapping) (search . nnweb-google-search) - (address . "http://groups.google.de/groups") - (base . "http://groups.google.de") + (address . "http://groups.google.com/groups") + (base . "http://groups.google.com") (identifier . nnweb-google-identity)) (dejanews ;; alias of google (article . ignore) @@ -306,35 +312,19 @@ Valid types include `google', `dejanews', and `gmane'.") (current-buffer)))))) ;;; -;;; Deja bought by google.com +;;; groups.google.com ;;; (defun nnweb-google-wash-article () - (let ((case-fold-search t) url) - (goto-char (point-min)) - (re-search-forward "^
" nil t)
-    (narrow-to-region (point-min) (point))
-    (search-backward "" nil t)
-      (replace-match "\n"))
-    (mm-url-remove-markup)
+    (delete-region (point-min)
+		   (1+ (re-search-forward "^
" nil t)))
     (goto-char (point-min))
-    (while (re-search-forward "^[ \t]*\n" nil t)
-      (replace-match ""))
-    (goto-char (point-max))
-    (insert "\n")
-    (widen)
-    (narrow-to-region (point) (point-max))
-    (search-forward "
" nil t) - (delete-region (point) (point-max)) - (mm-url-remove-markup) - (widen))) + (delete-region (- (re-search-forward "^" nil t) (length "")) + (point-max)) + (mm-url-decode-entities))) (defun nnweb-google-parse-1 (&optional Message-ID) (let ((i 0) diff --git a/man/gnus.texi b/man/gnus.texi index 131a92fae64..d1eb9325863 100644 --- a/man/gnus.texi +++ b/man/gnus.texi @@ -5090,10 +5090,10 @@ the server and display it in the article buffer. @item gnus-select-article-hook @vindex gnus-select-article-hook -This hook is called whenever an article is selected. By default it -exposes any threads hidden under the selected article. If you would -like each article to be saved in the Agent as you read it, putting -@code{gnus-agent-fetch-selected-article} on this hook will do so. +This hook is called whenever an article is selected. The default is +@code{nil}. If you would like each article to be saved in the Agent as +you read it, putting @code{gnus-agent-fetch-selected-article} on this +hook will do so. @item gnus-mark-article-hook @vindex gnus-mark-article-hook @@ -5103,8 +5103,8 @@ like each article to be saved in the Agent as you read it, putting This hook is called whenever an article is selected. It is intended to be used for marking articles as read. The default value is @code{gnus-summary-mark-read-and-unread-as-read}, and will change the -mark of almost any article you read to @code{gnus-unread-mark}. The -only articles not affected by this function are ticked, dormant, and +mark of almost any article you read to @code{gnus-read-mark}. The only +articles not affected by this function are ticked, dormant, and expirable articles. If you'd instead like to just have unread articles marked as read, you can use @code{gnus-summary-mark-unread-as-read} instead. It will leave marks like @code{gnus-low-score-mark}, @@ -13833,7 +13833,8 @@ is to say where the incoming files will be stored if the variable Prefix for file name for storing incoming mail. The default is @file{Incoming}, in which case files will end up with names like @file{Incoming30630D_} or @file{Incoming298602ZD}. This is really only -relevant if @code{mail-source-delete-incoming} is @code{nil}. +relevant if @code{mail-source-delete-incoming} is @code{nil} or a +number. @item mail-source-default-file-modes @vindex mail-source-default-file-modes