# HG changeset patch # User Richard M. Stallman # Date 946683692 0 # Node ID bd4ad2d321a76459cac70b33ad71cc01295ca4fd # Parent 9a83b898793cd2d4e3a3d40d30c150afbfd8f888 (command-history): Renamed from command-history-mode. (Command-history-setup): Don't switch buffers. Take no args, and do not set major-mode, mode-name or the local map. (command-history-mode): New function, does some of those things Command-history-setup used to do. (list-command-history): Call command-history-mode, not Command-history-setup. diff -r 9a83b898793c -r bd4ad2d321a7 lisp/chistory.el --- a/lisp/chistory.el Fri Dec 31 23:41:11 1999 +0000 +++ b/lisp/chistory.el Fri Dec 31 23:41:32 1999 +0000 @@ -122,17 +122,22 @@ (goto-char (point-min)) (if (eobp) (error "No command history") - (Command-history-setup))))) + (command-history-mode))))) -(defun Command-history-setup (&optional majormode modename keymap) - (set-buffer "*Command History*") +(defun command-history-mode () + "Major mode for listing and repeating recent commands." + (Command-history-setup) + (setq major-mode 'command-history-mode) + (setq mode-name "Command History") + (use-local-map command-history-map) + (run-hooks 'command-history-mode-hook)) + +(defun Command-history-setup () + (kill-all-local-variables) (use-local-map (or keymap command-history-map)) (lisp-mode-variables nil) (set-syntax-table emacs-lisp-mode-syntax-table) - (setq buffer-read-only t) - (use-local-map (or keymap command-history-map)) - (setq major-mode (or majormode 'command-history-mode)) - (setq mode-name (or modename "Command History"))) + (setq buffer-read-only t)) (defcustom command-history-hook nil "If non-nil, its value is called on entry to `command-history-mode'." @@ -163,8 +168,8 @@ (car (cdr (buffer-list)))))))) ;;;###autoload -(defun command-history-mode () - "Major mode for examining commands from `command-history'. +(defun command-history () + "Examine commands from `command-history' in a buffer. The number of commands listed is controlled by `list-command-history-max'. The command history is filtered by `list-command-history-filter' if non-nil. Use \\\\[command-history-repeat] to repeat the command on the current line. @@ -172,8 +177,9 @@ Otherwise much like Emacs-Lisp Mode except that there is no self-insertion and digits provide prefix arguments. Tab does not indent. \\{command-history-map} -Calls the value of `command-history-hook' if that is non-nil. -The Command History listing is recomputed each time this mode is invoked." + +This command always recompiles the Command History listing +and runs the normal hook `command-history-hook'." (interactive) (list-command-history) (pop-to-buffer "*Command History*")