summaryrefslogtreecommitdiff
path: root/devdocs/elisp/edebug.html
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2024-04-07 13:41:34 -0500
committerCraig Jennings <c@cjennings.net>2024-04-07 13:41:34 -0500
commit754bbf7a25a8dda49b5d08ef0d0443bbf5af0e36 (patch)
treef1190704f78f04a2b0b4c977d20fe96a828377f1 /devdocs/elisp/edebug.html
new repository
Diffstat (limited to 'devdocs/elisp/edebug.html')
-rw-r--r--devdocs/elisp/edebug.html97
1 files changed, 97 insertions, 0 deletions
diff --git a/devdocs/elisp/edebug.html b/devdocs/elisp/edebug.html
new file mode 100644
index 00000000..ce147b09
--- /dev/null
+++ b/devdocs/elisp/edebug.html
@@ -0,0 +1,97 @@
+ <h3 class="section">Edebug</h3> <p>Edebug is a source-level debugger for Emacs Lisp programs, with which you can: </p> <ul> <li> Step through evaluation, stopping before and after each expression. </li>
+<li> Set conditional or unconditional breakpoints. </li>
+<li> Stop when a specified condition is true (the global break event). </li>
+<li> Trace slow or fast, stopping briefly at each stop point, or at each breakpoint. </li>
+<li> Display expression results and evaluate expressions as if outside of Edebug. </li>
+<li> Automatically re-evaluate a list of expressions and display their results each time Edebug updates the display. </li>
+<li> Output trace information on function calls and returns. </li>
+<li> Stop when an error occurs. </li>
+<li> Display a backtrace, omitting Edebug’s own frames. </li>
+<li> Specify argument evaluation for macros and defining forms. </li>
+<li> Obtain rudimentary coverage testing and frequency counts. </li>
+</ul> <p>The first three sections below should tell you enough about Edebug to start using it. </p> <table class="menu" border="0" cellspacing="0"> <tr>
+<td align="left" valign="top">• <a href="using-edebug" accesskey="1">Using Edebug</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Introduction to use of Edebug. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="instrumenting" accesskey="2">Instrumenting</a>
+</td>
+<td> </td>
+<td align="left" valign="top">You must instrument your code in order to debug it with Edebug. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="edebug-execution-modes" accesskey="3">Modes</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Execution modes, stopping more or less often. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="jumping" accesskey="4">Jumping</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Commands to jump to a specified place. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="edebug-misc" accesskey="5">Misc</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Miscellaneous commands. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="breaks" accesskey="6">Breaks</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Setting breakpoints to make the program stop. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="trapping-errors" accesskey="7">Trapping Errors</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Trapping errors with Edebug. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="edebug-views" accesskey="8">Views</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Views inside and outside of Edebug. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="edebug-eval" accesskey="9">Eval</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Evaluating expressions within Edebug. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="eval-list">Eval List</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Expressions whose values are displayed each time you enter Edebug. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="printing-in-edebug">Printing in Edebug</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Customization of printing. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="trace-buffer">Trace Buffer</a>
+</td>
+<td> </td>
+<td align="left" valign="top">How to produce trace output in a buffer. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="coverage-testing">Coverage Testing</a>
+</td>
+<td> </td>
+<td align="left" valign="top">How to test evaluation coverage. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="the-outside-context">The Outside Context</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Data that Edebug saves and restores. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="edebug-and-macros">Edebug and Macros</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Specifying how to handle macro calls. </td>
+</tr> <tr>
+<td align="left" valign="top">• <a href="edebug-options">Options</a>
+</td>
+<td> </td>
+<td align="left" valign="top">Option variables for customizing Edebug. </td>
+</tr> </table><div class="_attribution">
+ <p class="_attribution-p">
+ Copyright &copy; 1990-1996, 1998-2022 Free Software Foundation, Inc. <br>Licensed under the GNU GPL license.<br>
+ <a href="https://www.gnu.org/software/emacs/manual/html_node/elisp/Edebug.html" class="_attribution-link">https://www.gnu.org/software/emacs/manual/html_node/elisp/Edebug.html</a>
+ </p>
+</div>