changeset 47565:a02c3a1fc1ab

(kmacro-step-edit-query): Use RET to execute rest of macro and terminate editing. (kmacro-step-edit-macro): Push previous macro onto ring if changed by step editing.
author Kim F. Storm <storm@cua.dk>
date Fri, 20 Sep 2002 20:38:18 +0000
parents 9b55b43febf8
children 65c4cd99d916
files lisp/kmacro.el
diffstat 1 files changed, 7 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/kmacro.el	Fri Sep 20 20:38:03 2002 +0000
+++ b/lisp/kmacro.el	Fri Sep 20 20:38:18 2002 +0000
@@ -769,6 +769,7 @@
 (define-key kmacro-step-edit-map "f" 'skip-keep)
 (define-key kmacro-step-edit-map "q" 'quit)
 (define-key kmacro-step-edit-map "d" 'skip)
+(define-key kmacro-step-edit-map "\C-d" 'skip)
 (define-key kmacro-step-edit-map "i" 'insert)
 (define-key kmacro-step-edit-map "I" 'insert-1)
 (define-key kmacro-step-edit-map "r" 'replace)
@@ -917,7 +918,7 @@
        ((eq act 'skip-rest)
 	(setq kmacro-step-edit-active 'ignore)
 	nil)
-       ((eq act 'automatic)
+       ((memq act '(automatic exit))
 	(setq kmacro-step-edit-active nil)
 	(setq act t)
 	t)
@@ -1092,8 +1093,11 @@
     (add-hook 'post-command-hook 'kmacro-step-edit-post-command t)
     (add-hook 'minibuffer-setup-hook 'kmacro-step-edit-minibuf-setup t)
     (call-last-kbd-macro nil nil)
-    (if kmacro-step-edit-replace
-	(setq last-kbd-macro kmacro-step-edit-new-macro))))
+    (when (and kmacro-step-edit-replace
+	       kmacro-step-edit-new-macro
+	       (not (equal last-kbd-macro kmacro-step-edit-new-macro)))
+      (kmacro-push-ring)
+      (setq last-kbd-macro kmacro-step-edit-new-macro))))
 
 (provide 'kmacro)
 ;;; kmacro.el ends here