diff options
author | Miles Bader <miles@gnu.org> | 2006-03-28 23:08:20 +0000 |
---|---|---|
committer | Miles Bader <miles@gnu.org> | 2006-03-28 23:08:20 +0000 |
commit | 1ef7e5599f5aa981399221e657ff34e80cc2c1a3 (patch) | |
tree | 539ff4cf9ea84af29a4e8628d049f3a4253a51f4 /lisp/gnus | |
parent | 33bd75ec5fb277e58731c8cbbb942cba4d9a9f19 (diff) | |
parent | 29314e0fd78063d663bd272787d0ea81cc61e38e (diff) | |
download | emacs-1ef7e5599f5aa981399221e657ff34e80cc2c1a3.tar.gz |
Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-49
Merge from emacs--devo--0
Patches applied:
* emacs--devo--0 (patch 164-184)
- Update from CVS
- Merge from gnus--rel--5.10
- Update from CVS: man/mh-e.texi (Folders): Various edits.
- Update from erc--emacs--0
* gnus--rel--5.10 (patch 62-70)
- Merge from emacs--devo--0
- Update from CVS
Diffstat (limited to 'lisp/gnus')
-rw-r--r-- | lisp/gnus/ChangeLog | 52 | ||||
-rw-r--r-- | lisp/gnus/gnus-agent.el | 2 | ||||
-rw-r--r-- | lisp/gnus/gnus-sum.el | 4 | ||||
-rw-r--r-- | lisp/gnus/mm-decode.el | 19 | ||||
-rw-r--r-- | lisp/gnus/mml.el | 2 | ||||
-rw-r--r-- | lisp/gnus/nnimap.el | 18 | ||||
-rw-r--r-- | lisp/gnus/rfc2231.el | 11 | ||||
-rw-r--r-- | lisp/gnus/smiley.el | 1 | ||||
-rw-r--r-- | lisp/gnus/spam.el | 16 |
9 files changed, 94 insertions, 31 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 48bbc095375..71940cac0db 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,55 @@ +2006-03-23 Katsumi Yamaoka <yamaoka@jpl.org> + + * mml.el (mml-insert-mime): Ignore cached contents of + message/external-body part. + + * mm-decode.el (mm-get-part): Add optional 'no-cache' argument. + (mm-insert-part): Ditto. + +2006-03-22 Katsumi Yamaoka <yamaoka@jpl.org> + + * gnus-sum.el (gnus-map-articles): Don't funcall symbol macro. + Reported by Ralf Wachinger <rwachinger@gmx.de>. + +2006-03-23 Kenichi Handa <handa@m17n.org> + + * rfc2231.el (rfc2231-encode-string): Use mm-disable-multibyte + instead of set-buffer-multibyte. + +2006-03-23 Kenichi Handa <handa@m17n.org> + + * rfc2231.el (rfc2231-decode-encoded-string): Work on unibyte + buffer and then decode the buffer text if necessary. + (rfc2231-encode-string): Be sure to work on multibyte buffer at + first, and after mm-encode-body, change the buffer to unibyte. + +2006-03-21 Daniel Pittman <daniel@rimspace.net> + + * nnimap.el (nnimap-request-update-info-internal): Optimize. + Don't `gnus-uncompress-range' to avoid excessive memory usage. + +2006-03-21 Reiner Steib <Reiner.Steib@gmx.de> + + * gnus-agent.el (gnus-agent-queue-mail): Fix custom tag for `t'. + + * spam.el (spam-mark-new-messages-in-spam-group-as-spam): Add + comment on version. + +2006-03-20 Teodor Zlatanov <tzz@lifelogs.com> + + * spam.el (spam-mark-new-messages-in-spam-group-as-spam): New + variable. + (spam-mark-junk-as-spam-routine): Use it. Allow to disable + assigning the spam-mark to new messages. + +2006-03-20 Adam Sj,Ax(Bgren <asjo@koldfront.dk> (tiny change) + + (spam-ham-copy-or-move-routine): Don't declare `todo' twice. + +2006-03-20 Reiner Steib <Reiner.Steib@gmx.de> + + * smiley.el: Add missing test smiley. + 2006-03-17 Katsumi Yamaoka <yamaoka@jpl.org> * mm-decode.el (mm-with-part): New macro. diff --git a/lisp/gnus/gnus-agent.el b/lisp/gnus/gnus-agent.el index c467c296fa0..123ad340ae1 100644 --- a/lisp/gnus/gnus-agent.el +++ b/lisp/gnus/gnus-agent.el @@ -204,7 +204,7 @@ queue. Otherwise, queue if and only if unplugged." :group 'gnus-agent :type '(radio (const :format "Always" always) (const :format "Never" nil) - (const :format "When plugged" t))) + (const :format "When unplugged" t))) (defcustom gnus-agent-prompt-send-queue nil "If non-nil, `gnus-group-send-queue' will prompt if called when diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el index e4ca47f1ea2..4fc01a8fad3 100644 --- a/lisp/gnus/gnus-sum.el +++ b/lisp/gnus/gnus-sum.el @@ -10619,7 +10619,9 @@ Returns nil if no thread was there to be shown." (defun gnus-map-articles (predicate articles) "Map PREDICATE over ARTICLES and return non-nil if any predicate is non-nil." (apply 'gnus-or (mapcar predicate - (mapcar 'gnus-summary-article-header articles)))) + (mapcar (lambda (number) + (gnus-summary-article-header number)) + articles)))) (defun gnus-summary-hide-all-threads (&optional predicate) "Hide all thread subtrees. diff --git a/lisp/gnus/mm-decode.el b/lisp/gnus/mm-decode.el index f0f1ee430ff..60cbb413473 100644 --- a/lisp/gnus/mm-decode.el +++ b/lisp/gnus/mm-decode.el @@ -1103,9 +1103,12 @@ external if displayed external." (put 'mm-with-part 'lisp-indent-function 1) (put 'mm-with-part 'edebug-form-spec '(body)) -(defun mm-get-part (handle) - "Return the contents of HANDLE as a string." - (if (equal (mm-handle-media-type handle) "message/external-body") +(defun mm-get-part (handle &optional no-cache) + "Return the contents of HANDLE as a string. +If NO-CACHE is non-nil, cached contents of a message/external-body part +are ignored." + (if (and (not no-cache) + (equal (mm-handle-media-type handle) "message/external-body")) (progn (unless (mm-handle-cache handle) (mm-extern-cache-contents handle)) @@ -1114,8 +1117,10 @@ external if displayed external." (mm-with-part handle (buffer-string)))) -(defun mm-insert-part (handle) - "Insert the contents of HANDLE in the current buffer." +(defun mm-insert-part (handle &optional no-cache) + "Insert the contents of HANDLE in the current buffer. +If NO-CACHE is non-nil, cached contents of a message/external-body part +are ignored." (save-excursion (insert (cond ((eq (mail-content-type-get (mm-handle-type handle) 'charset) @@ -1123,9 +1128,9 @@ external if displayed external." (with-current-buffer (mm-handle-buffer handle) (buffer-string))) ((mm-multibyte-p) - (mm-string-as-multibyte (mm-get-part handle))) + (mm-string-as-multibyte (mm-get-part handle no-cache))) (t - (mm-get-part handle)))))) + (mm-get-part handle no-cache)))))) (defun mm-file-name-delete-whitespace (file-name) "Remove all whitespace characters from FILE-NAME." diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index 566aabcc6ba..6ae004a2a3b 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el @@ -792,7 +792,7 @@ If HANDLES is non-nil, use it instead reparsing the buffer." (unless (setq textp (equal (mm-handle-media-supertype handle) "text")) (save-excursion (set-buffer (setq buffer (mml-generate-new-buffer " *mml*"))) - (mm-insert-part handle) + (mm-insert-part handle 'no-cache) (if (setq mmlp (equal (mm-handle-media-type handle) "message/rfc822")) (mime-to-mml))))) diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el index 3c05b3713ea..bada9da6891 100644 --- a/lisp/gnus/nnimap.el +++ b/lisp/gnus/nnimap.el @@ -1127,18 +1127,12 @@ function is generally only called when Gnus is shutting down." (let (seen unseen) ;; read info could contain articles marked unread by other ;; imap clients! we correct this - (setq seen (gnus-uncompress-range (gnus-info-read info)) - unseen (imap-search "UNSEEN UNDELETED") - seen (gnus-set-difference seen unseen) - ;; seen might lack articles marked as read by other - ;; imap clients! we correct this - seen (append seen (imap-search "SEEN")) - ;; remove dupes - seen (sort seen '<) - seen (gnus-compress-sequence seen t) - ;; we can't return '(1) since this isn't a "list of ranges", - ;; and we can't return '((1)) since g-list-of-unread-articles - ;; is buggy so we return '((1 . 1)). + (setq unseen (gnus-compress-sequence + (imap-search "UNSEEN UNDELETED")) + seen (gnus-range-difference (gnus-info-read info) unseen) + seen (gnus-range-add seen + (gnus-compress-sequence + (imap-search "SEEN"))) seen (if (and (integerp (car seen)) (null (cdr seen))) (list (cons (car seen) (car seen))) diff --git a/lisp/gnus/rfc2231.el b/lisp/gnus/rfc2231.el index 2099b20195d..a5827ecb70c 100644 --- a/lisp/gnus/rfc2231.el +++ b/lisp/gnus/rfc2231.el @@ -227,7 +227,7 @@ These look like: (let ((coding-system (mm-charset-to-coding-system (match-string 2 string))) ;;(language (match-string 3 string)) (value (match-string 4 string))) - (mm-with-multibyte-buffer + (mm-with-unibyte-buffer (insert value) (goto-char (point-min)) (while (search-forward "%" nil t) @@ -236,9 +236,9 @@ These look like: (string-to-number (buffer-substring (point) (+ (point) 2)) 16) (delete-region (1- (point)) (+ (point) 2))))) ;; Decode using the charset, if any. - (unless (memq coding-system '(nil ascii)) - (mm-decode-coding-region (point-min) (point-max) coding-system)) - (buffer-string)))) + (if (memq coding-system '(nil ascii)) + (buffer-string) + (mm-decode-coding-string (buffer-string) coding-system))))) (defun rfc2231-encode-string (param value) "Return and PARAM=VALUE string encoded according to RFC2231. @@ -252,7 +252,7 @@ the result of this function." ;; Don't make lines exceeding 76 column. (limit (- 74 (length param))) spacep encodep charsetp charset broken) - (with-temp-buffer + (mm-with-multibyte-buffer (insert value) (goto-char (point-min)) (while (not (eobp)) @@ -268,6 +268,7 @@ the result of this function." (forward-char 1)) (when charsetp (setq charset (mm-encode-body))) + (mm-disable-multibyte) (cond ((or encodep charsetp (progn diff --git a/lisp/gnus/smiley.el b/lisp/gnus/smiley.el index e8afe9dd10d..6476340f7bf 100644 --- a/lisp/gnus/smiley.el +++ b/lisp/gnus/smiley.el @@ -42,6 +42,7 @@ ;; indifferent :-| ;; wry :-/ :-\ ;; sad :-( +;; frown :-{ ;; evil >:-) ;; cry ;-( ;; dead X-) diff --git a/lisp/gnus/spam.el b/lisp/gnus/spam.el index ed5fd6e7980..047035536f2 100644 --- a/lisp/gnus/spam.el +++ b/lisp/gnus/spam.el @@ -100,6 +100,12 @@ spam groups." :type 'boolean :group 'spam) +(defcustom spam-mark-new-messages-in-spam-group-as-spam t + "Whether new messages in a spam group should get the spam-mark." + :type 'boolean + ;; :version "22.1" ;; Gnus 5.10.8 / No Gnus 0.3 + :group 'spam) + (defcustom spam-log-to-registry nil "Whether spam/ham processing should be logged in the registry." :type 'boolean @@ -676,15 +682,17 @@ spam-use-* variable.") ;; check the global list of group names spam-junk-mailgroups and the ;; group parameters (when (spam-group-spam-contents-p gnus-newsgroup-name) - (gnus-message 5 "Marking %s articles as spam" + (gnus-message 6 "Marking %s articles as spam" (if spam-mark-only-unseen-as-spam "unseen" "unread")) (let ((articles (if spam-mark-only-unseen-as-spam gnus-newsgroup-unseen gnus-newsgroup-unreads))) - (dolist (article articles) - (gnus-summary-mark-article article gnus-spam-mark))))) + (if spam-mark-new-messages-in-spam-group-as-spam + (dolist (article articles) + (gnus-summary-mark-article article gnus-spam-mark)) + (gnus-message 9 "Did not mark new messages as spam."))))) (defun spam-mark-spam-as-expired-and-move-routine (&rest groups) (if (and (car-safe groups) (listp (car-safe groups))) @@ -732,7 +740,7 @@ spam-use-* variable.") (gnus-check-backend-function 'request-move-article gnus-newsgroup-name)) (respool-method (gnus-find-method-for-group gnus-newsgroup-name)) - article mark todo deletep respool) + article mark deletep respool) (when (member 'respool groups) (setq respool t) ; boolean for later |