Mercurial > emacs
view admin/admin.el @ 46282:015a7038f5db
(speedbar-make-specialized-keymap): Fix docstring.
(speedbar-desired-buffer): Likewise.
(speedbar-line-file): Likewise.
(speedbar-special-mode-key-map): Fix typo.
(speedbar-dynamic-tags-function-list): Likewise.
(speedbar-use-images): Likewise.
(speedbar-up-directory): Likewise.
(speedbar-item-info): Likewise.
(speedbar-set-timer): Likewise.
(speedbar-insert-button): Likewise.
(speedbar-make-button): Likewise.
(speedbar-make-tag-line): Likewise.
(speedbar-insert-files-at-point): Likewise.
(speedbar-update-special-contents): Likewise.
(speedbar-find-selected-file): Likewise.
(speedbar-add-indicator): Likewise.
(speedbar-do-function-pointer): Likewise.
(speedbar-goto-this-file): Likewise.
(speedbar-line-path): Likewise.
(speedbar-mouse-event-p): Likewise.
(speedbar-dir-follow): Likewise.
(speedbar-tag-find): Likewise.
(speedbar-fetch-etags-command): Likewise.
(speedbar-fetch-etags-arguments): Likewise.
(speedbar-toggle-etags): Likewise.
(speedbar-extract-one-symbol): Likewise.
(speedbar-parse-c-or-c++tag): Likewise.
(speedbar-unhighlight-one-tag-line): Likewise.
(speedbar-directory-face): Likewise.
(defimage-speedbar): Likewise.
(speedbar-convert-emacs21-imagespec-to-xemacs): Likewise.
(defimage-speedbar): Likewise.
author | Juanma Barranquero <lekktu@gmail.com> |
---|---|
date | Wed, 10 Jul 2002 08:21:31 +0000 |
parents | 795c8ca09f8b |
children | bb7bf9ff7c97 |
line wrap: on
line source
;;; admin.el --- utilities for Emacs administration ;; Copyright (C) 2001 Free Software Foundation, Inc. ;; This file is part of GNU Emacs. ;; GNU Emacs is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 2, or (at your option) ;; any later version. ;; GNU Emacs is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; 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. ;;; Commentary: ;; add-release-log add ``Version X released'' change log entries ;; set-version change Emacs version number in source tree. ;;; Code: (defun process-lines (program &rest args) "Execute PROGRAM with ARGS, returning its output as a list of lines. Signal an error if the program returns with a non-zero exit status." (with-temp-buffer (let ((status (apply 'call-process program nil (current-buffer) nil args))) (unless (eq status 0) (error "%s exited with status %s" program status)) (goto-char (point-min)) (let (lines) (while (not (eobp)) (setq lines (cons (buffer-substring-no-properties (line-beginning-position) (line-end-position)) lines)) (forward-line 1)) (nreverse lines))))) (defun add-release-logs (root version) "Add \"Version VERSION released.\" change log entries in ROOT. Root must be the root of an Emacs source tree." (interactive "DEmacs root directory: \nNVersion number: ") (unless (file-exists-p (expand-file-name "src/emacs.c" root)) (error "%s doesn't seem to be the root of an Emacs source tree" root)) (let* ((logs (process-lines "find" root "-name" "ChangeLog")) (entry (format "%s %s <%s>\n\n\t* Version %s released.\n\n" (format-time-string "%Y-%m-%d") (user-full-name) user-mail-address version))) (dolist (log logs) (unless (string-match "/gnus/" log) (find-file log) (goto-char (point-min)) (insert entry))))) (defun set-version-in-file (root file version rx) (find-file (expand-file-name file root)) (goto-char (point-min)) (unless (re-search-forward rx nil t) (error "Version not found in %s" file)) (replace-match (format "%s" version) nil nil nil 1)) (defun set-version (root version) "Set Emacs version to VERSION in relevant files under ROOT. Root must be the root of an Emacs source tree." (interactive "DEmacs root directory: \nsVersion number: ") (unless (file-exists-p (expand-file-name "src/emacs.c" root)) (error "%s doesn't seem to be the root of an Emacs source tree" root)) (set-version-in-file root "lisp/version.el" version (rx (and "emacs-version" (0+ space) ?\" (submatch (1+ (not (in ?\")))) ?\"))) (set-version-in-file root "README" version (rx (and "version" (1+ space) (submatch (1+ (in "0-9.")))))) (set-version-in-file root "man/emacs.texi" version (rx (and "EMACSVER" (1+ space) (submatch (1+ (in "0-9."))))))) ;; admin.el ends here.