changeset 45267:c9022ab03c89

(add-log-mailing-address): Can be a list, too. (add-change-log-entry): If `add-log-mailing-address' is a list, then handle it.
author Colin Walters <walters@gnu.org>
date Mon, 13 May 2002 05:47:29 +0000
parents f93cb851704f
children b43f1f67f126
files lisp/add-log.el
diffstat 1 files changed, 20 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/add-log.el	Mon May 13 05:47:08 2002 +0000
+++ b/lisp/add-log.el	Mon May 13 05:47:29 2002 +0000
@@ -67,10 +67,13 @@
 
 ;;;###autoload
 (defcustom add-log-mailing-address nil
-  "*Electronic mail address of user, for inclusion in ChangeLog daily headers.
-This defaults to the value of `user-mail-address'."
+  "*Electronic mail addresses of user, for inclusion in ChangeLog headers.
+This defaults to the value of `user-mail-address'.  In addition to
+being a simple string, this value can also be a list.  All elements
+will be recognized as referring to the same user; when creating a new
+ChangeLog entry, one element will be chosen at random."
   :type '(choice (const :tag "Default" nil)
-		 string)
+		 (repeat string))
   :group 'change-log)
 
 (defcustom add-log-time-format 'add-log-iso8601-time-string
@@ -476,13 +479,22 @@
       (skip-chars-forward "\n"))
 
     ;; Advance into first entry if it is usable; else make new one.
-    (let ((new-entry (concat (funcall add-log-time-format)
-			     "  " add-log-full-name
-			     "  <" add-log-mailing-address ">")))
+    (let ((new-entries (mapcar (lambda (addr)
+				 (concat (funcall add-log-time-format)
+					 "  " add-log-full-name
+					 "  <" addr ">"))
+			       (if (consp add-log-mailing-address)
+				   add-log-mailing-address
+				 (list add-log-mailing-address)))))
       (if (and (not add-log-always-start-new-record)
-               (looking-at (regexp-quote new-entry)))
+               (let ((hit nil))
+		 (dolist (entry new-entries hit)
+		   (when (looking-at (regexp-quote entry))
+		     (setq hit t)))))
 	  (forward-line 1)
-	(insert new-entry "\n\n")
+	(insert (nth (random (length new-entries))
+		     new-entries)
+		"\n\n")
 	(forward-line -1)))
 
     ;; Determine where we should stop searching for a usable