# HG changeset patch # User Lute Kamstra # Date 1118479179 0 # Node ID 297abad3d613b3673982d77988332180f6e7eb61 # Parent a1bed9a2b37055a7a4ae408a508686ac5b09e1d6 (edebug-eval-mode-map): Don't copy lisp-interaction-mode-map but make it the parent. (edebug-eval-mode): Use define-derived-mode. diff -r a1bed9a2b370 -r 297abad3d613 lisp/emacs-lisp/edebug.el --- a/lisp/emacs-lisp/edebug.el Sat Jun 11 07:14:38 2005 +0000 +++ b/lisp/emacs-lisp/edebug.el Sat Jun 11 08:39:39 2005 +0000 @@ -4014,20 +4014,19 @@ (defvar edebug-eval-mode-map nil "Keymap for Edebug Eval mode. Superset of Lisp Interaction mode.") -(if edebug-eval-mode-map - nil - (setq edebug-eval-mode-map (copy-keymap lisp-interaction-mode-map)) +(unless edebug-eval-mode-map + (setq edebug-eval-mode-map (make-sparse-keymap)) + (set-keymap-parent edebug-eval-mode-map lisp-interaction-mode-map) (define-key edebug-eval-mode-map "\C-c\C-w" 'edebug-where) (define-key edebug-eval-mode-map "\C-c\C-d" 'edebug-delete-eval-item) (define-key edebug-eval-mode-map "\C-c\C-u" 'edebug-update-eval-list) (define-key edebug-eval-mode-map "\C-x\C-e" 'edebug-eval-last-sexp) - (define-key edebug-eval-mode-map "\C-j" 'edebug-eval-print-last-sexp) - ) + (define-key edebug-eval-mode-map "\C-j" 'edebug-eval-print-last-sexp)) (put 'edebug-eval-mode 'mode-class 'special) -(defun edebug-eval-mode () +(define-derived-mode edebug-eval-mode lisp-interaction-mode "Edebug Eval" "Mode for evaluation list buffer while in Edebug. In addition to all Interactive Emacs Lisp commands there are local and @@ -4039,12 +4038,7 @@ \\{edebug-eval-mode-map} Global commands prefixed by global-edebug-prefix: -\\{global-edebug-map} -" - (lisp-interaction-mode) - (setq major-mode 'edebug-eval-mode) - (setq mode-name "Edebug Eval") - (use-local-map edebug-eval-mode-map)) +\\{global-edebug-map}") ;;; Interface with standard debugger.