Debugging emacs (about edebug).
authorOleksandr Gavenko <gavenkoa@gmail.com>
Wed, 05 Aug 2009 11:10:45 +0300
changeset 171 8e806cddee36
parent 170 07218dd3cbca
child 172 ab7bb7734d2a
child 173 939f50e22bda
Debugging emacs (about edebug).
emacs.rst
--- a/emacs.rst	Tue Jul 28 14:42:29 2009 +0300
+++ b/emacs.rst	Wed Aug 05 11:10:45 2009 +0300
@@ -1,47 +1,51 @@
 -*- mode: outline -*-
 
-* How debug ini file?
+* Debugging.
+
+** Using edebug.
+
+Execute ‘M-x edebug-defun’ (also on ‘C-u C-M-x’) on defun in source code to
+enable debugging for desired function. When next time this function invoked
+you entered to its debugging (jamped to its source code).
+
+To start debug execute code which used debugged function.
+
+You can disable edebug on a function by evaluating the function again using
+‘C-M-x’.
+
+** How debug func?
+
+Use M-x debug-on-entry and M-x cancel-debug-on-entry to control
+which functions will enter the debugger when called.
+
+When next time that function called automatically loaded debug-mode.
+
+** How debug ini file?
 
 When your InitFile has a bug, or when you load external files that cause
 errors, the bug is often hard to find, because the Emacs Lisp reader does not
 know about line numbers and files – it just knows an error happened, and
 that’s it.
 
-** Binary Search.
+*** Binary Search.
 
 Select half of the file in a region, and M-x eval-region. Depending on whether
 that causes the error or not, split this half or the other half again, and
 repeat.
 
-** Elisp.
+*** Elisp.
 
  - Use a keyboard macro that moves forward one expression (sexp) and evaluates
    it.
  - Try C-x check-parens.
  - Set (setq debug-on-error t).
 
-** CLI.
+*** CLI.
 
   $ emacs --no-init-file --no-site-file --debug-init
 
-** Simplified Binary Search.
+*** Simplified Binary Search.
 
 Add (error “No error until here”) in the middle of your file. If you get the
 error “No error until here” when reloading the file, move the expression
 towards the back of the file, otherwise towards the front of the file.
-
-* Using edebug.
-
-The main entry point is ‘M-x edebug-defun’ (also on ‘C-u C-M-x’). Use it
-instead of `C-x C-e’ or ‘C-M-x’ to evaluate a ‘defun’ and instrument it for
-debugging.
-
-You can disable edebug on a function by evaluating the function again using
-‘C-M-x’.
-
-* How debug func?
-
-Use M-x debug-on-entry and M-x cancel-debug-on-entry to control
-which functions will enter the debugger when called.
-
-When next time that function called automatically loaded debug-mode.