]> code.delx.au - gnu-emacs/blobdiff - lisp/emacs-lisp/gulp.el
Merge from emacs--rel--22
[gnu-emacs] / lisp / emacs-lisp / gulp.el
index f4149adc3e252da25dfdee8cbdb20bc41596002f..ab95a0dab40445255c64902793b41758b0c55bb8 100644 (file)
@@ -1,6 +1,7 @@
-;;; gulp.el --- Ask for updates for Lisp packages
+;;; gulp.el --- ask for updates for Lisp packages
 
-;; Copyright (C) 1996 Free Software Foundation, Inc.
+;; Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005,
+;;   2006, 2007 Free Software Foundation, Inc.
 
 ;; Author: Sam Shteingold <shteingd@math.ucla.edu>
 ;; Maintainer: FSF
@@ -20,8 +21,8 @@
 
 ;; You should have received a copy of the GNU General Public License
 ;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
 
 ;;; Commentary:
 
 ;; update.
 
 ;;; Code:
-
-(defvar gulp-discard "^;+ *Maintainer: *FSF *$"
-  "*The regexp matching the packages not requiring the request for updates.")
-
-(defvar gulp-tmp-buffer "*gulp*" "The name of the temporary buffer.")
-
-(defvar gulp-max-len 2000
-  "*Distance into a Lisp source file to scan for keywords.")
-
-(defvar gulp-request-header
+(defgroup gulp nil
+  "Ask for updates for Lisp packages."
+  :prefix "-"
+  :group 'maint)
+
+(defcustom gulp-discard "^;+ *Maintainer: *FSF *$"
+  "*The regexp matching the packages not requiring the request for updates."
+  :type 'regexp
+  :group 'gulp)
+
+(defcustom gulp-tmp-buffer "*gulp*" "The name of the temporary buffer."
+  :type 'string
+  :group 'gulp)
+
+(defcustom gulp-max-len 2000
+  "*Distance into a Lisp source file to scan for keywords."
+  :type 'integer
+  :group 'gulp)
+
+(defcustom gulp-request-header
   (concat
    "This message was created automatically.
 I'm going to start pretesting a new version of GNU Emacs soon, so I'd
 like to ask if you have any updates for the Emacs packages you work on.
 You're listed as the maintainer of the following package(s):\n\n")
-  "*The starting text of a gulp message.")
+  "*The starting text of a gulp message."
+  :type 'string
+  :group 'gulp)
 
-(defvar gulp-request-end
+(defcustom gulp-request-end
   (concat
    "\nIf you have any changes since the version in the previous release ("
    (format "%d.%d" emacs-major-version emacs-minor-version)
@@ -61,7 +74,9 @@ please use lisp/ChangeLog as a guide for the style and for what kinds
 of information to include.
 
 Thanks.")
-  "*The closing text in a gulp message.")
+  "*The closing text in a gulp message."
+  :type 'string
+  :group 'gulp)
 
 (defun gulp-send-requests (dir &optional time)
   "Send requests for updates to the authors of Lisp packages in directory DIR.
@@ -83,18 +98,19 @@ is left in the `*gulp*' buffer at the end."
          (buffer-undo-list t)
          mail-setup-hook msg node)
       (setq m-p-alist
-           (sort (function (lambda (a b)
-                             (string< (car (car a)) (car (car b)))))
-                 m-p-alist))
+           (sort m-p-alist
+                 (function (lambda (a b)
+                             (string< (car a) (car b))))))
       (while (setq node (car m-p-alist))
        (setq msg (gulp-create-message (cdr node) time))
        (setq mail-setup-hook
-             '(lambda () 
-                (mail-subject)
-                (insert "It's time for Emacs updates again")
-                (goto-char (point-max))
-                (insert msg)))
+             (lambda ()
+               (mail-subject)
+               (insert "It's time for Emacs updates again")
+               (goto-char (point-max))
+               (insert msg)))
        (mail nil (car node))
+       (goto-char (point-min))
        (if (y-or-n-p "Send? ") (mail-send)
          (kill-this-buffer)
          (set-buffer gulp-tmp-buffer)
@@ -137,7 +153,7 @@ That is a list of elements, each of the form (MAINTAINER PACKAGES...)."
 (defun gulp-maintainer (filenm dir)
   "Return a list (MAINTAINER TIMESTAMP) for the package FILENM in directory DIR."
   (save-excursion
-    (let* ((fl (concat dir filenm)) mnt
+    (let* ((fl (expand-file-name filenm dir)) mnt
           (timest (format-time-string "%Y-%m-%d %a %T %Z"
                                       (elt (file-attributes fl) 5))))
       (set-buffer gulp-tmp-buffer)
@@ -156,4 +172,7 @@ That is a list of elements, each of the form (MAINTAINER PACKAGES...)."
        (if (= (length mnt) 0) (setq mnt nil))) ;; "^;; Author: $" --> nil
       (cons mnt timest))))
 
+(provide 'gulp)
+
+;;; arch-tag: 42750a11-460a-4efc-829f-342d075530e5
 ;;; gulp.el ends here