When Edebug is entered and actually reads commands from the user, it saves (and later restores) these additional data:
last-command
, this-command
,
last-command-event
, last-input-event
,
last-event-frame
, last-nonmenu-event
, and
track-mouse
. Commands in Edebug do not affect these variables
outside of Edebug.
Executing commands within Edebug can change the key sequence that
would be returned by this-command-keys
, and there is no way to
reset the key sequence from Lisp.
Edebug cannot save and restore the value of
unread-command-events
. Entering Edebug while this variable has a
nontrivial value can interfere with execution of the program you are
debugging.
command-history
. In rare cases this can alter execution.
standard-output
and standard-input
are bound to nil
by the recursive-edit
, but Edebug temporarily restores them during
evaluations.
defining-kbd-macro
is bound to
edebug-continue-kbd-macro
.