aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiles Bader2005-09-28 05:26:02 +0000
committerMiles Bader2005-09-28 05:26:02 +0000
commit53cfefc8fb8b79ec7a2e9574a899c1aca0b236e1 (patch)
tree893566d88000294b80a6470cce1c81b98760fb25
parent0b292bd06ec4571e5ffe3a5daa947703800777dd (diff)
downloademacs-53cfefc8fb8b79ec7a2e9574a899c1aca0b236e1.tar.gz
emacs-53cfefc8fb8b79ec7a2e9574a899c1aca0b236e1.zip
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-564
Merge from gnus--rel--5.10 Patches applied: * gnus--rel--5.10 (patch 125-127) - Merge from emacs--cvs-trunk--0 - Update from CVS 2005-09-27 Reiner Steib <Reiner.Steib@gmx.de> * lisp/gnus/mm-uu.el (mm-uu-emacs-sources-regexp): Make variable customizable. Change default value. (mm-uu-diff-groups-regexp): Change default value. (mm-uu-type-alist): Added doc string. (mm-uu-configure): Added doc string. Make it interactive. (mm-uu-diff-groups-regexp): Fix missing quotes from previous commit. 2005-09-27 Simon Josefsson <jas@extundo.com> * lisp/gnus/message.el (message-idna-to-ascii-rhs-1): Reformat. 2005-09-27 Arne J,Ax(Brgensen <arne@arnested.dk> * lisp/gnus/message.el (message-remove-duplicates): New function. Implementation borrowed from `gnus-remove-duplicates'. (message-idna-to-ascii-rhs): Also encode idna addresses in Reply-To:, Mail-Reply-To: and Mail-Followup-To:. (message-idna-to-ascii-rhs-1): When `message-use-idna' is 'ask only ask about the same idna domain once per header and also tell in what header to replace the idna domain. * lisp/gnus/gnus-art.el (article-decode-idna-rhs): Also decode idna addresses in Reply-To:, Mail-Reply-To: and Mail-Followup-To:. (article-decode-idna-rhs): Fix regexp so that all idna-address in a header is decoded and not just the last one. 2005-09-27 Katsumi Yamaoka <yamaoka@jpl.org> * lisp/gnus/gnus-art.el (gnus-mime-display-single): Don't modify text if it has been decoded. * lisp/gnus/mm-decode.el (mm-insert-part): Don't modify text if it has been decoded. * lisp/gnus/mm-view.el (mm-inline-text): Don't strip text props unless decoding enriched or richtext parts. 2005-09-26 Katsumi Yamaoka <yamaoka@jpl.org> * man/gnus.texi (Server Buffer Format): Document the %a format spec.
-rw-r--r--lisp/gnus/ChangeLog40
-rw-r--r--lisp/gnus/gnus-art.el27
-rw-r--r--lisp/gnus/message.el25
-rw-r--r--lisp/gnus/mm-decode.el12
-rw-r--r--lisp/gnus/mm-uu.el21
-rw-r--r--lisp/gnus/mm-view.el2
-rw-r--r--man/ChangeLog4
-rw-r--r--man/gnus.texi3
8 files changed, 109 insertions, 25 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 44675cdacd0..333e831dcca 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,43 @@
12005-09-27 Reiner Steib <Reiner.Steib@gmx.de>
2
3 * mm-uu.el (mm-uu-emacs-sources-regexp): Make variable
4 customizable. Change default value.
5 (mm-uu-diff-groups-regexp): Change default value.
6 (mm-uu-type-alist): Added doc string.
7 (mm-uu-configure): Added doc string. Make it interactive.
8 (mm-uu-diff-groups-regexp): Fix missing quotes from previous
9 commit.
10
112005-09-27 Simon Josefsson <jas@extundo.com>
12
13 * message.el (message-idna-to-ascii-rhs-1): Reformat.
14
152005-09-27 Arne J,Ax(Brgensen <arne@arnested.dk>
16
17 * message.el (message-remove-duplicates): New function.
18 Implementation borrowed from `gnus-remove-duplicates'.
19 (message-idna-to-ascii-rhs): Also encode idna addresses in
20 Reply-To:, Mail-Reply-To: and Mail-Followup-To:.
21 (message-idna-to-ascii-rhs-1): When `message-use-idna' is 'ask
22 only ask about the same idna domain once per header and also tell
23 in what header to replace the idna domain.
24
25 * gnus-art.el (article-decode-idna-rhs): Also decode idna
26 addresses in Reply-To:, Mail-Reply-To: and Mail-Followup-To:.
27 (article-decode-idna-rhs): Fix regexp so that all idna-address in
28 a header is decoded and not just the last one.
29
302005-09-27 Katsumi Yamaoka <yamaoka@jpl.org>
31
32 * gnus-art.el (gnus-mime-display-single): Don't modify text if it
33 has been decoded.
34
35 * mm-decode.el (mm-insert-part): Don't modify text if it has been
36 decoded.
37
38 * mm-view.el (mm-inline-text): Don't strip text props unless
39 decoding enriched or richtext parts.
40
12005-09-25 Romain Francoise <romain@orebokech.com> 412005-09-25 Romain Francoise <romain@orebokech.com>
2 42
3 * gnus-agent.el (gnus-agent-expire-group, gnus-agent-expire): 43 * gnus-agent.el (gnus-agent-expire-group, gnus-agent-expire):
diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el
index 4957d3ae98b..249325a06f0 100644
--- a/lisp/gnus/gnus-art.el
+++ b/lisp/gnus/gnus-art.el
@@ -2333,20 +2333,22 @@ If PROMPT (the prefix), prompt for a coding system to use."
2333(autoload 'idna-to-unicode "idna") 2333(autoload 'idna-to-unicode "idna")
2334 2334
2335(defun article-decode-idna-rhs () 2335(defun article-decode-idna-rhs ()
2336 "Decode IDNA strings in RHS in From:, To: and Cc: headers in current buffer." 2336 "Decode IDNA strings in RHS in various headers in current buffer.
2337The following headers are decoded: From:, To:, Cc:, Reply-To:,
2338Mail-Reply-To: and Mail-Followup-To:."
2337 (when gnus-use-idna 2339 (when gnus-use-idna
2338 (save-restriction 2340 (save-restriction
2339 (let ((inhibit-point-motion-hooks t) 2341 (let ((inhibit-point-motion-hooks t)
2340 (inhibit-read-only t)) 2342 (inhibit-read-only t))
2341 (article-narrow-to-head) 2343 (article-narrow-to-head)
2342 (goto-char (point-min)) 2344 (goto-char (point-min))
2343 (while (re-search-forward "@.*\\(xn--[-A-Za-z0-9.]*\\)[ \t\n\r,>]" nil t) 2345 (while (re-search-forward "@[^ \t\n\r,>]*\\(xn--[-A-Za-z0-9.]*\\)[ \t\n\r,>]" nil t)
2344 (let (ace unicode) 2346 (let (ace unicode)
2345 (when (save-match-data 2347 (when (save-match-data
2346 (and (setq ace (match-string 1)) 2348 (and (setq ace (match-string 1))
2347 (save-excursion 2349 (save-excursion
2348 (and (re-search-backward "^[^ \t]" nil t) 2350 (and (re-search-backward "^[^ \t]" nil t)
2349 (looking-at "From\\|To\\|Cc"))) 2351 (looking-at "From\\|To\\|Cc\\|Reply-To\\|Mail-Reply-To\\|Mail-Followup-To")))
2350 (setq unicode (idna-to-unicode ace)))) 2352 (setq unicode (idna-to-unicode ace))))
2351 (unless (string= ace unicode) 2353 (unless (string= ace unicode)
2352 (replace-match unicode nil nil nil 1))))))))) 2354 (replace-match unicode nil nil nil 1)))))))))
@@ -4864,14 +4866,17 @@ If displaying \"text/html\" is discouraged \(see
4864 (forward-line -1) 4866 (forward-line -1)
4865 (setq beg (point))) 4867 (setq beg (point)))
4866 (gnus-article-insert-newline) 4868 (gnus-article-insert-newline)
4867 (mm-insert-inline handle 4869 (mm-insert-inline
4868 (let ((charset 4870 handle
4869 (mail-content-type-get 4871 (let ((charset (mail-content-type-get (mm-handle-type handle)
4870 (mm-handle-type handle) 'charset))) 4872 'charset)))
4871 (if (eq charset 'gnus-decoded) 4873 (cond ((not charset)
4872 (mm-get-part handle) 4874 (mm-string-as-multibyte (mm-get-part handle)))
4873 (mm-decode-string (mm-get-part handle) 4875 ((eq charset 'gnus-decoded)
4874 charset)))) 4876 (with-current-buffer (mm-handle-buffer handle)
4877 (buffer-string)))
4878 (t
4879 (mm-decode-string (mm-get-part handle) charset)))))
4875 (goto-char (point-max)))) 4880 (goto-char (point-max))))
4876 ;; Do highlighting. 4881 ;; Do highlighting.
4877 (save-excursion 4882 (save-excursion
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 55f07183753..0023b58892e 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -2030,6 +2030,14 @@ With prefix-argument just set Follow-Up, don't cross-post."
2030 2030
2031;;; End of functions adopted from `message-utils.el'. 2031;;; End of functions adopted from `message-utils.el'.
2032 2032
2033(defun message-remove-duplicates (list)
2034 (let (new)
2035 (while list
2036 (or (member (car list) new)
2037 (setq new (cons (car list) new)))
2038 (setq list (cdr list)))
2039 (nreverse new)))
2040
2033(defun message-remove-header (header &optional is-regexp first reverse) 2041(defun message-remove-header (header &optional is-regexp first reverse)
2034 "Remove HEADER in the narrowed buffer. 2042 "Remove HEADER in the narrowed buffer.
2035If IS-REGEXP, HEADER is a regular expression. 2043If IS-REGEXP, HEADER is a regular expression.
@@ -4957,13 +4965,17 @@ subscribed address (and not the additional To and Cc header contents)."
4957 (let ((field (message-fetch-field header)) 4965 (let ((field (message-fetch-field header))
4958 rhs ace address) 4966 rhs ace address)
4959 (when field 4967 (when field
4960 (dolist (address (mail-header-parse-addresses field)) 4968 (dolist (rhs
4961 (setq address (car address) 4969 (message-remove-duplicates
4962 rhs (downcase (or (cadr (split-string address "@")) "")) 4970 (mapcar (lambda (rhs) (or (cadr (split-string rhs "@")) ""))
4963 ace (downcase (idna-to-ascii rhs))) 4971 (mapcar 'downcase
4972 (mapcar
4973 'car (mail-header-parse-addresses field))))))
4974 (setq ace (downcase (idna-to-ascii rhs)))
4964 (when (and (not (equal rhs ace)) 4975 (when (and (not (equal rhs ace))
4965 (or (not (eq message-use-idna 'ask)) 4976 (or (not (eq message-use-idna 'ask))
4966 (y-or-n-p (format "Replace %s with %s? " rhs ace)))) 4977 (y-or-n-p (format "Replace %s with %s in %s:? "
4978 rhs ace header))))
4967 (goto-char (point-min)) 4979 (goto-char (point-min))
4968 (while (re-search-forward (concat "^" header ":") nil t) 4980 (while (re-search-forward (concat "^" header ":") nil t)
4969 (message-narrow-to-field) 4981 (message-narrow-to-field)
@@ -4982,6 +4994,9 @@ See `message-idna-encode'."
4982 (message-narrow-to-head) 4994 (message-narrow-to-head)
4983 (message-idna-to-ascii-rhs-1 "From") 4995 (message-idna-to-ascii-rhs-1 "From")
4984 (message-idna-to-ascii-rhs-1 "To") 4996 (message-idna-to-ascii-rhs-1 "To")
4997 (message-idna-to-ascii-rhs-1 "Reply-To")
4998 (message-idna-to-ascii-rhs-1 "Mail-Reply-To")
4999 (message-idna-to-ascii-rhs-1 "Mail-Followup-To")
4985 (message-idna-to-ascii-rhs-1 "Cc"))))) 5000 (message-idna-to-ascii-rhs-1 "Cc")))))
4986 5001
4987(defun message-generate-headers (headers) 5002(defun message-generate-headers (headers)
diff --git a/lisp/gnus/mm-decode.el b/lisp/gnus/mm-decode.el
index 435940faec2..76a66268586 100644
--- a/lisp/gnus/mm-decode.el
+++ b/lisp/gnus/mm-decode.el
@@ -1058,9 +1058,15 @@ external if displayed external."
1058(defun mm-insert-part (handle) 1058(defun mm-insert-part (handle)
1059 "Insert the contents of HANDLE in the current buffer." 1059 "Insert the contents of HANDLE in the current buffer."
1060 (save-excursion 1060 (save-excursion
1061 (insert (if (mm-multibyte-p) 1061 (insert
1062 (mm-string-as-multibyte (mm-get-part handle)) 1062 (cond ((eq (mail-content-type-get (mm-handle-type handle) 'charset)
1063 (mm-get-part handle))))) 1063 'gnus-decoded)
1064 (with-current-buffer (mm-handle-buffer handle)
1065 (buffer-string)))
1066 ((mm-multibyte-p)
1067 (mm-string-as-multibyte (mm-get-part handle)))
1068 (t
1069 (mm-get-part handle))))))
1064 1070
1065(defun mm-file-name-delete-whitespace (file-name) 1071(defun mm-file-name-delete-whitespace (file-name)
1066 "Remove all whitespace characters from FILE-NAME." 1072 "Remove all whitespace characters from FILE-NAME."
diff --git a/lisp/gnus/mm-uu.el b/lisp/gnus/mm-uu.el
index fdb6b7f4585..dd1519ddfeb 100644
--- a/lisp/gnus/mm-uu.el
+++ b/lisp/gnus/mm-uu.el
@@ -77,11 +77,15 @@ decoder, such as hexbin."
77 "The default disposition of uu parts. 77 "The default disposition of uu parts.
78This can be either \"inline\" or \"attachment\".") 78This can be either \"inline\" or \"attachment\".")
79 79
80(defvar mm-uu-emacs-sources-regexp "gnu\\.emacs\\.sources" 80(defcustom mm-uu-emacs-sources-regexp "\\.emacs\\.sources"
81 "The regexp of Emacs sources groups.") 81 "The regexp of Emacs sources groups."
82 :version "22.1"
83 :type 'regexp
84 :group 'gnus-article-mime)
82 85
83(defcustom mm-uu-diff-groups-regexp "gnus\\.commits" 86(defcustom mm-uu-diff-groups-regexp
84 "*Regexp matching diff groups." 87 "\\(gmane\\|gnu\\)\\..*\\(diff\\|commit\\|cvs\\|bug\\|devel\\)"
88 "Regexp matching diff groups."
85 :version "22.1" 89 :version "22.1"
86 :type 'regexp 90 :type 'regexp
87 :group 'gnus-article-mime) 91 :group 'gnus-article-mime)
@@ -153,7 +157,12 @@ This can be either \"inline\" or \"attachment\".")
153 nil 157 nil
154 mm-uu-diff-extract 158 mm-uu-diff-extract
155 nil 159 nil
156 mm-uu-diff-test))) 160 mm-uu-diff-test))
161 "A list of specifications for non-MIME attachments.
162Each element consist of the following entries: label,
163start-regexp, end-regexp, extract-function, test-function.
164
165After modifying this list you must run \\[mm-uu-configure].")
157 166
158(defcustom mm-uu-configure-list '((shar . disabled)) 167(defcustom mm-uu-configure-list '((shar . disabled))
159 "A list of mm-uu configuration. 168 "A list of mm-uu configuration.
@@ -202,6 +211,8 @@ Return that buffer."
202 (member (cons key val) mm-uu-configure-list)) 211 (member (cons key val) mm-uu-configure-list))
203 212
204(defun mm-uu-configure (&optional symbol value) 213(defun mm-uu-configure (&optional symbol value)
214 "Configure detection of non-MIME attachments."
215 (interactive)
205 (if symbol (set-default symbol value)) 216 (if symbol (set-default symbol value))
206 (setq mm-uu-beginning-regexp nil) 217 (setq mm-uu-beginning-regexp nil)
207 (mapcar (lambda (entry) 218 (mapcar (lambda (entry)
diff --git a/lisp/gnus/mm-view.el b/lisp/gnus/mm-view.el
index dec03bf0b9c..033548e3bed 100644
--- a/lisp/gnus/mm-view.el
+++ b/lisp/gnus/mm-view.el
@@ -367,9 +367,9 @@
367 (goto-char (point-max)))) 367 (goto-char (point-max))))
368 (save-restriction 368 (save-restriction
369 (narrow-to-region b (point)) 369 (narrow-to-region b (point))
370 (set-text-properties (point-min) (point-max) nil)
371 (when (or (equal type "enriched") 370 (when (or (equal type "enriched")
372 (equal type "richtext")) 371 (equal type "richtext"))
372 (set-text-properties (point-min) (point-max) nil)
373 (ignore-errors 373 (ignore-errors
374 (enriched-decode (point-min) (point-max)))) 374 (enriched-decode (point-min) (point-max))))
375 (mm-handle-set-undisplayer 375 (mm-handle-set-undisplayer
diff --git a/man/ChangeLog b/man/ChangeLog
index fa28c055cf3..dc98b9a58ef 100644
--- a/man/ChangeLog
+++ b/man/ChangeLog
@@ -1,3 +1,7 @@
12005-09-26 Katsumi Yamaoka <yamaoka@jpl.org>
2
3 * gnus.texi (Server Buffer Format): Document the %a format spec.
4
12005-09-25 Richard M. Stallman <rms@gnu.org> 52005-09-25 Richard M. Stallman <rms@gnu.org>
2 6
3 * search.texi (Regexp Search): Doc search-whitespace-regexp. 7 * search.texi (Regexp Search): Doc search-whitespace-regexp.
diff --git a/man/gnus.texi b/man/gnus.texi
index c6b11716ba0..2a27a8e49c2 100644
--- a/man/gnus.texi
+++ b/man/gnus.texi
@@ -12199,6 +12199,9 @@ Where the news is to be fetched from---the address.
12199 12199
12200@item s 12200@item s
12201The opened/closed/denied status of the server. 12201The opened/closed/denied status of the server.
12202
12203@item a
12204Whether this server is agentized.
12202@end table 12205@end table
12203 12206
12204@vindex gnus-server-mode-line-format 12207@vindex gnus-server-mode-line-format