lisp/ChangeLog addition:
authorDidier Verna <didier@xemacs.org>
Tue, 24 Apr 2007 13:48:33 +0000 (13:48 +0000)
committerDidier Verna <didier@xemacs.org>
Tue, 24 Apr 2007 13:48:33 +0000 (13:48 +0000)
2007-04-24  Didier Verna  <didier@xemacs.org>

Improve the type of gnus-ignored-from-addresses.
* gnus-util.el (gnus-orify-regexp): New function.
* message.el (gnus-util): Require it.
* message.el (message-dont-reply-to-names): Use gnus-orify-regexp.
* gnus-sum.el (gnus-ignored-from-addresses): New function.
* gnus-sum.el (gnus-summary-from-or-to-or-newsgroups): Use it.

lisp/ChangeLog
lisp/gnus-sum.el
lisp/gnus-util.el
lisp/message.el

index d6c2728..d970fd7 100644 (file)
@@ -1,3 +1,12 @@
+2007-04-24  Didier Verna  <didier@xemacs.org>
+
+       Improve the type of gnus-ignored-from-addresses.
+       * gnus-util.el (gnus-orify-regexp): New function.
+       * message.el (gnus-util): Require it.
+       * message.el (message-dont-reply-to-names): Use gnus-orify-regexp.
+       * gnus-sum.el (gnus-ignored-from-addresses): New function.
+       * gnus-sum.el (gnus-summary-from-or-to-or-newsgroups): Use it.
+
 2007-04-24  Didier Verna  <didier@xemacs.org>
 
        * gnus-sum.el:
index cae2c31..346e7b0 100644 (file)
@@ -1076,10 +1076,15 @@ which it may alter in any way."
   (and user-mail-address
        (not (string= user-mail-address ""))
        (regexp-quote user-mail-address))
-  "*Regexp of From headers that may be suppressed in favor of To headers."
+  "*From headers that may be suppressed in favor of To headers.
+This can be a regexp or a list of regexps."
   :version "21.1"
   :group 'gnus-summary
-  :type 'regexp)
+  :type '(choice regexp
+                (repeat :tag "Regexp List" regexp)))
+
+(defsubst gnus-ignored-from-addresses ()
+  (gnus-orify-regexp gnus-ignored-from-addresses))
 
 (defcustom gnus-summary-to-prefix "-> "
   "*String prefixed to the To field in the summary line when
@@ -3537,14 +3542,15 @@ buffer that was in action when the last article was fetched."
 
 (defun gnus-summary-from-or-to-or-newsgroups (header gnus-tmp-from)
   (let ((mail-parse-charset gnus-newsgroup-charset)
+       (ignored-from-addresses (gnus-ignored-from-addresses))
        ; Is it really necessary to do this next part for each summary line?
        ; Luckily, doesn't seem to slow things down much.
        (mail-parse-ignored-charsets
         (with-current-buffer gnus-summary-buffer
           gnus-newsgroup-ignored-charsets)))
     (or
-     (and gnus-ignored-from-addresses
-         (string-match gnus-ignored-from-addresses gnus-tmp-from)
+     (and ignored-from-addresses
+         (string-match ignored-from-addresses gnus-tmp-from)
          (let ((extra-headers (mail-header-extra header))
                to
                newsgroups)
index 631e4be..a2969fa 100644 (file)
@@ -76,6 +76,17 @@ This is a compatibility function for different Emacsen."
    ((fboundp 'replace-in-string)
     (defalias 'gnus-replace-in-string 'replace-in-string))))
 
+(defun gnus-orify-regexp (regexp)
+  "Potentially convert a list of regexps into a single one."
+  (cond ((null regexp)
+        nil)
+       ((stringp regexp)
+        regexp)
+       ((listp regexp)
+        (mapconcat (lambda (elt) (concat "\\(" elt "\\)"))
+                   regexp
+                   "\\|"))))
+
 (defun gnus-boundp (variable)
   "Return non-nil if VARIABLE is bound and non-nil."
   (and (boundp variable)
index a5ffdfe..b865c2f 100644 (file)
@@ -50,6 +50,7 @@
 (require 'mml)
 (require 'rfc822)
 (require 'ecomplete)
+(require 'gnus-util)
 
 (defgroup message '((user-mail-address custom-variable)
                    (user-full-name custom-variable))
@@ -1213,18 +1214,8 @@ exclude your own user name only."
                 regexp
                 (repeat :tag "Regexp List" regexp)))
 
-;; #### FIXME: this might become a generally usefull function at some point
-;; --dlv.
 (defsubst message-dont-reply-to-names ()
-  "Potentially convert a list of regexps into a single one."
-  (cond ((null message-dont-reply-to-names)
-        nil)
-       ((stringp message-dont-reply-to-names)
-        message-dont-reply-to-names)
-       ((listp message-dont-reply-to-names)
-        (mapconcat (lambda (elt) (concat "\\(" elt "\\)"))
-                   message-dont-reply-to-names
-                   "\\|"))))
+  (gnus-orify-regexp message-dont-reply-to-names))
 
 (defvar message-shoot-gnksa-feet nil
   "*A list of GNKSA feet you are allowed to shoot.