Yes, there is a way to add a previously defined macro to the macro ring so you can edit it with kmacro-step-edit-macro:
Imagine you named the keyboard macro tata using name-last-kbd-macroand executed insert-kbd-macrofor tata. For instance:
(fset 'tata
[return return ?f ?o ?o return])
You can save this macro definition in your .emacs for later use. In a new emacs session, you can use the following lisp code to return your macro to your kmacro ring:
(kmacro-push-ring (list 'tata 0 "%d"))
(kmacro-pop-ring)
After that you can do kmacro-step-edit-macroon it.
, kmacro-name-last-macro name-last-kbd-macro, insert-kbd-macro , ( ), :
(fset 'tata
(lambda (&optional arg) "Keyboard macro." (interactive "p")
(kmacro-exec-ring-item
(quote ([return return 102 111 111 return] 0 "%d")) arg)))
kmacro-step-edit-macro , . , :