-;;; 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
;; 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)
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.
(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)
(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)
(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