Merge changes made in Gnus trunk.

nnimap.el (nnimap-transform-headers): Protect against (NIL ...) bodystructures (bug#9314).
starttls.el (starttls-any-program-available): Define as obsolete function.
gnus-util.el (gnus-y-or-n-p): Reinstate the message-clearing y-or-n-p versions which Gnus use when appropriate.
gnus-group.el (gnus-group-clear-data): Add a y-or-n query, since it's a pretty destructive command.
nnmail.el (nnmail-extra-headers): Clarify slightly (bug#9302).
message.el (message-fix-before-sending): Make a different warning about NUL characters (bug#9270).
gnus-sum.el (gnus-auto-select-subject): Allow specifying a function from custom (bug#9260).
This commit is contained in:
Gnus developers 2011-08-20 00:20:39 +00:00 committed by Katsumi Yamaoka
parent 9234ff7fcf
commit 4d9db491a0
8 changed files with 59 additions and 63 deletions

View file

@ -1,3 +1,8 @@
2011-08-19 Lars Magne Ingebrigtsen <larsi@gnus.org>
* nnimap.el (nnimap-transform-headers): Protect against (NIL ...)
bodystructures (bug#9314).
2011-08-19 Katsumi Yamaoka <yamaoka@jpl.org>
* gnus-art.el (gnus-insert-mime-button, gnus-mime-display-alternative):
@ -12,8 +17,29 @@
`gnus-registry-get-id-key' since `gnus-registry-fetch-groups' isn't
available anymore.
2011-08-12 Simon Josefsson <simon@josefsson.org>
* starttls.el (starttls-any-program-available): Define as obsolete
function.
2011-08-18 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-util.el (gnus-y-or-n-p): Reinstate the message-clearing y-or-n-p
versions which Gnus use when appropriate.
* gnus-group.el (gnus-group-clear-data): Add a y-or-n query, since it's
a pretty destructive command.
* nnmail.el (nnmail-extra-headers): Clarify slightly (bug#9302).
2011-08-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
p * message.el (message-fix-before-sending): Make a different warning
about NUL characters (bug#9270).
* gnus-sum.el (gnus-auto-select-subject): Allow specifying a function
from custom (bug#9260).
* gnus-spec.el (gnus-lrm-string): Use 8206 instead of ?\x200e to make
things work in Emacs 22 and XEmacs, too.

View file

@ -3471,13 +3471,14 @@ sort in reverse order."
"Clear all marks and read ranges from the current group.
Obeys the process/prefix convention."
(interactive "P")
(gnus-group-iterate arg
(lambda (group)
(let (info)
(gnus-info-clear-data (setq info (gnus-get-info group)))
(gnus-get-unread-articles-in-group info (gnus-active group) t)
(when (gnus-group-goto-group group)
(gnus-group-update-group-line))))))
(when (gnus-y-or-n-p "Really clear data? ")
(gnus-group-iterate arg
(lambda (group)
(let (info)
(gnus-info-clear-data (setq info (gnus-get-info group)))
(gnus-get-unread-articles-in-group info (gnus-active group) t)
(when (gnus-group-goto-group group)
(gnus-group-update-group-line)))))))
(defun gnus-group-clear-data-on-native-groups ()
"Clear all marks and read ranges from all native groups."

View file

@ -375,7 +375,8 @@ place point on some subject line."
(const unread)
(const first)
(const unseen)
(const unseen-or-unread)))
(const unseen-or-unread)
(function :tag "Function to call")))
(defcustom gnus-auto-select-next t
"*If non-nil, offer to go to the next group from the end of the previous.

View file

@ -388,57 +388,14 @@ TIME defaults to the current time."
(define-key keymap key (pop plist))
(pop plist)))))
;; Two silly functions to ensure that all `y-or-n-p' questions clear
;; the echo area.
;;
;; Do we really need these functions? Workarounds for bugs in the corresponding
;; Emacs functions? Maybe these bugs are no longer present in any supported
;; (X)Emacs version? Alias them to the original functions and see if anyone
;; reports a problem. If not, replace with original functions. --rsteib,
;; 2007-12-14
;;
;; All supported Emacsen clear the echo area after `yes-or-no-p', so we can
;; remove `yes-or-no-p'. RMS says that not clearing after `y-or-n-p' is
;; intentional (see below), so we could remove `gnus-y-or-n-p' too.
;; Objections? --rsteib, 2008-02-16
;;
;; ,----[ http://thread.gmane.org/gmane.emacs.gnus.general/65099/focus=66070 ]
;; | From: Richard Stallman
;; | Subject: Re: Do we need gnus-yes-or-no-p and gnus-y-or-n-p?
;; | To: Katsumi Yamaoka [...]
;; | Cc: emacs-devel@[...], xemacs-beta@[...], ding@[...]
;; | Date: Mon, 07 Jan 2008 12:16:05 -0500
;; | Message-ID: <E1JBva1-000528-VY@fencepost.gnu.org>
;; |
;; | The behavior of `y-or-n-p' that it doesn't clear the question
;; | and the answer is not serious of course, but I feel it is not
;; | cool.
;; |
;; | It is intentional.
;; |
;; | Currently, it is commented out in the trunk by Reiner Steib. He
;; | also wrote the benefit of leaving the question and the answer in
;; | the echo area as follows:
;; |
;; | (http://article.gmane.org/gmane.emacs.gnus.general/66061)
;; | > In contrast to yes-or-no-p it is much easier to type y, n,
;; | > SPC, DEL, etc accidentally, so it might be useful for the user
;; | > to see what he has typed.
;; |
;; | Yes, that is the reason.
;; `----
;; (defun gnus-y-or-n-p (prompt)
;; (prog1
;; (y-or-n-p prompt)
;; (message "")))
;; (defun gnus-yes-or-no-p (prompt)
;; (prog1
;; (yes-or-no-p prompt)
;; (message "")))
(defalias 'gnus-y-or-n-p 'y-or-n-p)
(defalias 'gnus-yes-or-no-p 'yes-or-no-p)
(defun gnus-y-or-n-p (prompt)
(prog1
(y-or-n-p prompt)
(message "")))
(defun gnus-yes-or-no-p (prompt)
(prog1
(yes-or-no-p prompt)
(message "")))
;; By Frank Schmitt <ich@Frank-Schmitt.net>. Allows to have
;; age-depending date representations. (e.g. just the time if it's

View file

@ -4254,8 +4254,10 @@ conformance."
"Invisible text found and made visible; continue sending? ")
(error "Invisible text found and made visible")))))
(message-check 'illegible-text
(let (char found choice)
(let (char found choice nul-chars)
(message-goto-body)
(setq nul-chars (save-excursion
(search-forward "\000" nil t)))
(while (progn
(skip-chars-forward mm-7bit-chars)
(when (get-text-property (point) 'no-illegible-text)
@ -4281,7 +4283,9 @@ conformance."
(when found
(setq choice
(gnus-multiple-choice
"Non-printable characters found. Continue sending?"
(if nul-chars
"NUL characters found, which may cause problems. Continue sending?"
"Non-printable characters found. Continue sending?")
`((?d "Remove non-printable characters and send")
(?r ,(format
"Replace non-printable characters with \"%s\" and send"

View file

@ -216,9 +216,10 @@ textual parts.")
(let ((structure (ignore-errors
(read (current-buffer)))))
(while (and (consp structure)
(not (stringp (car structure))))
(not (atom (car structure))))
(setq structure (car structure)))
(setq lines (if (and
(stringp (car structure))
(equal (upcase (nth 0 structure)) "MESSAGE")
(equal (upcase (nth 1 structure)) "RFC822"))
(nth 9 structure)

View file

@ -554,7 +554,9 @@ parameter. It should return nil, `warn' or `delete'."
(const delete)))
(defcustom nnmail-extra-headers '(To Newsgroups)
"*Extra headers to parse."
"Extra headers to parse.
In addition to the standard headers, these extra headers will be
included in NOV headers (and the like) when backends parse headers."
:version "21.1"
:group 'nnmail
:type '(repeat symbol))

View file

@ -301,6 +301,10 @@ GNUTLS requires a port number."
starttls-gnutls-program
starttls-program)))
(defalias 'starttls-any-program-available 'starttls-available-p)
(make-obsolete 'starttls-any-program-available 'starttls-available-p
"2011-08-02")
(provide 'starttls)
;;; starttls.el ends here