]> git.eshelyaron.com Git - emacs.git/commitdiff
(edebug-eval-mode-map): Don't copy lisp-interaction-mode-map but make
authorLute Kamstra <lute@gnu.org>
Sat, 11 Jun 2005 08:40:47 +0000 (08:40 +0000)
committerLute Kamstra <lute@gnu.org>
Sat, 11 Jun 2005 08:40:47 +0000 (08:40 +0000)
it the parent.
(edebug-eval-mode): Use define-derived-mode.

lisp/ChangeLog
lisp/emacs-lisp/edebug.el

index 35f1ab21a13805885dcddad946a5547e7f0a0894..94c41ec141a5d849e3e078030fac64f1e8c3bea9 100644 (file)
@@ -1,3 +1,9 @@
+2005-06-11  Lute Kamstra  <lute@gnu.org>
+
+       * emacs-lisp/edebug.el (edebug-eval-mode-map): Don't copy
+       lisp-interaction-mode-map but make it the parent.
+       (edebug-eval-mode): Use define-derived-mode.
+
 2005-06-11  Andreas Schwab  <schwab@suse.de>
 
        * bindings.el: Add binding of `ESC functionkey' for every
index 91ebda570015856e82dd9519d5af0c6f584d1f65..89cfd66e339194350d71bfe313611e299b44cd59 100644 (file)
@@ -4014,20 +4014,19 @@ May only be called from within edebug-recursive-edit."
 (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 @@ Eval list buffer commands:
 \\{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.