Go to the previous, next section.

 debug-on-quit and  (debug)

In addition to setting  debug-on-error or calling  debug-on-entry , there are two other ways to start  debug .

You can start  debug whenever you type C-g ( keyboard-quit ) by setting the variable  debug-on-quit to  t . This is useful for debugging infinite loops.

Or, you can insert a line that says  (debug) into your code where you want the debugger to start, like this:

(defun triangle-bugged (number)
  "Return sum of numbers 1 through NUMBER inclusive."
  (let ((total 0))
    (while (> number 0)
      (setq total (+ total number))
      (debug)                         ; Start debugger.
      (setq number (1= number)))      ; Error here.
    total))

The  debug function is described in detail in section 'The Lisp Debugger' in The GNU Emacs Lisp Reference Manual.

Go to the previous, next section.