Previous: Instrumenting Macro Calls, Up: Edebug [Contents][Index]
These options affect the behavior of Edebug:
Functions to call before Edebug is used. Each time it is set to a new
value, Edebug will call those functions once and then
edebug-setup-hook
is reset to nil
. You could use this to
load up Edebug specifications associated with a package you are using
but only when you also use Edebug.
See Instrumenting.
If non-nil
, normal evaluation of any defining forms (e.g.
defun
and defmacro
) will instrument them for Edebug. This
applies to eval-defun
, eval-region
, and
eval-current-buffer
.
Use the command M-x edebug-all-defs to toggle the value of
this variable. You may want to make this variable local to each
buffer by calling (make-local-variable 'edebug-all-defs)
in your
emacs-lisp-mode-hook
.
See Instrumenting.
If non-nil
, normal evaluation of any forms by eval-defun
,
eval-region
, and eval-current-buffer
will instrument them
for Edebug.
Use the command M-x edebug-all-forms to toggle the value of this option. See Instrumenting.
If non-nil
, save and restore window configuration on Edebug
calls. It takes some time to do this, so if your program does not care
what happens to data about windows, you may want to set this variable to
nil
.
If the value is a list, only the listed windows are saved and restored.
M-x edebug-toggle-save-windows may be used to change this variable. This command is bound to W in source code buffers. See Edebug Display Update.
If non-nil
, save and restore point in all displayed buffers.
This is necessary if you are debugging code that changes the point of a
buffer which is displayed in a non-selected window. If Edebug or the
user then selects the window, the buffer’s point will be changed to the
window’s point.
This is an expensive operation since it visits each window and therefore each displayed buffer twice for each Edebug activation, so it is best to avoid it if you can. See Edebug Display Update.
If this variable is non-nil
, it specifies the initial execution
mode for Edebug when it is first activated. Possible values are
step
, next
, go
, Go-nonstop
, trace
,
Trace-fast
, continue
, and Continue-fast
.
The default value is step
.
See Edebug Execution Modes.
Non-nil
means display a trace of function entry and exit.
Tracing output is displayed in a buffer named ‘*edebug-trace*’, one
function entry or exit per line, indented by the recursion level.
The default value is nil
.
Also see edebug-tracing
.
See Tracing.
If non-nil
, Edebug tests coverage of all expressions debugged.
This is done by comparing the result of each expression
with the previous result. Coverage is considered OK if two different
results are found. So to sufficiently test the coverage of your code,
try to execute it under conditions that evaluate all expressions more
than once, and produce different results for each expression.
Use M-x edebug-display-freq-count to display the frequency count and coverage information for a definition. See Coverage Testing.
If non-nil
, continue defining or executing any keyboard macro
that is executing outside of Edebug.
Use this with caution since it is not debugged. See Edebug Execution Modes.
If non-nil
, bind print-length
to this while printing
results in Edebug. The default value is 50
.
See Printing in Edebug.
If non-nil
, bind print-level
to this while printing
results in Edebug. The default value is 50
.
If non-nil
, bind print-circle
to this while printing
results in Edebug. The default value is nil
.
debug-on-error
is bound to this while Edebug is active.
See Trapping Errors.
debug-on-quit
is bound to this while Edebug is active.
See Trapping Errors.
Non-nil
if Edebug should unwrap results of expressions.
This is useful when debugging macros where the results of expressions
are instrumented expressions. But don’t do this when results might be
circular or an infinite loop will result.
See Debugging Backquote.
If non-nil
, an expression to test for at every stop point.
If the result is non-nil
, then break. Errors are ignored.
See Global Break Condition.
Previous: Instrumenting Macro Calls, Up: Edebug [Contents][Index]