# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2021-11-07 12:11+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. type: section #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:13 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:14 #, no-wrap msgid "Edebug" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:15 #, no-wrap msgid "Edebug debugging facility" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:19 msgid "" "Edebug is a source-level debugger for Emacs Lisp programs, with which you " "can:" msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:23 msgid "Step through evaluation, stopping before and after each expression." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:26 msgid "Set conditional or unconditional breakpoints." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:29 msgid "Stop when a specified condition is true (the global break event)." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:33 msgid "" "Trace slow or fast, stopping briefly at each stop point, or at each " "breakpoint." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:37 msgid "Display expression results and evaluate expressions as if outside of Edebug." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:41 msgid "" "Automatically re-evaluate a list of expressions and display their results " "each time Edebug updates the display." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:44 msgid "Output trace information on function calls and returns." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:47 msgid "Stop when an error occurs." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:50 msgid "Display a backtrace, omitting Edebug's own frames." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:53 msgid "Specify argument evaluation for macros and defining forms." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:56 msgid "Obtain rudimentary coverage testing and frequency counts." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:60 msgid "" "The first three sections below should tell you enough about Edebug to start " "using it." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:82 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:83 #, no-wrap msgid "Using Edebug" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Introduction to use of Edebug." msgstr "" #. type: node #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:152 #, no-wrap msgid "Instrumenting" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "You must instrument your code in order to debug it with Edebug." msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Modes: Edebug Execution Modes" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Execution modes, stopping more or less often." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:344 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:345 #, no-wrap msgid "Jumping" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Commands to jump to a specified place." msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Misc: Edebug Misc" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Miscellaneous commands." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:474 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:475 #, no-wrap msgid "Breaks" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Setting breakpoints to make the program stop." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:613 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:614 #, no-wrap msgid "Trapping Errors" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Trapping errors with Edebug." msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Views: Edebug Views" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Views inside and outside of Edebug." msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Eval: Edebug Eval" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Evaluating expressions within Edebug." msgstr "" #. type: node #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:724 #, no-wrap msgid "Eval List" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Expressions whose values are displayed each time you enter Edebug." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:830 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:831 #, no-wrap msgid "Printing in Edebug" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Customization of printing." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:883 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:884 #, no-wrap msgid "Trace Buffer" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "How to produce trace output in a buffer." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:930 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:931 #, no-wrap msgid "Coverage Testing" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "How to test evaluation coverage." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1001 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1002 #, no-wrap msgid "The Outside Context" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Data that Edebug saves and restores." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1142 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1143 #, no-wrap msgid "Edebug and Macros" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Specifying how to handle macro calls." msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Options: Edebug Options" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:80 msgid "Option variables for customizing Edebug." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:90 msgid "" "To debug a Lisp program with Edebug, you must first @dfn{instrument} the " "Lisp code that you want to debug. A simple way to do this is to first move " "point into the definition of a function or macro and then do @kbd{C-u C-M-x} " "(@code{eval-defun} with a prefix argument). See @ref{Instrumenting}, for " "alternative ways to instrument code." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:97 msgid "" "Once a function is instrumented, any call to the function activates Edebug. " "Depending on which Edebug execution mode you have selected, activating " "Edebug may stop execution and let you step through the function, or it may " "update the display and continue execution while checking for debugging " "commands. The default execution mode is step, which stops execution. " "@xref{Edebug Execution Modes}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:101 msgid "" "Within Edebug, you normally view an Emacs buffer showing the source of the " "Lisp code you are debugging. This is referred to as the @dfn{source code " "buffer}, and it is temporarily read-only." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:105 msgid "" "An arrow in the left fringe indicates the line where the function is " "executing. Point initially shows where within the line the function is " "executing, but this ceases to be true if you move point yourself." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:109 msgid "" "If you instrument the definition of @code{fac} (shown below) and then " "execute @code{(fac 3)}, here is what you would normally see. Point is at " "the open-parenthesis before @code{if}." msgstr "" #. type: example #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:115 #, no-wrap msgid "" "(defun fac (n)\n" "=>@point{}(if (< 0 n)\n" " (* n (fac (1- n)))\n" " 1))\n" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:117 #, no-wrap msgid "stop points" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:123 msgid "" "The places within a function where Edebug can stop execution are called " "@dfn{stop points}. These occur both before and after each subexpression " "that is a list, and also after each variable reference. Here we use periods " "to show the stop points in the function @code{fac}:" msgstr "" #. type: example #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:129 #, no-wrap msgid "" "(defun fac (n)\n" " .(if .(< 0 n.).\n" " .(* n. .(fac .(1- n.).).).\n" " 1).)\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:136 msgid "" "The special commands of Edebug are available in the source code buffer in " "addition to the commands of Emacs Lisp mode. For example, you can type the " "Edebug command @key{SPC} to execute until the next stop point. If you type " "@key{SPC} once after entry to @code{fac}, here is the display you will see:" msgstr "" #. type: example #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:142 #, no-wrap msgid "" "(defun fac (n)\n" "=>(if @point{}(< 0 n)\n" " (* n (fac (1- n)))\n" " 1))\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:146 msgid "" "When Edebug stops execution after an expression, it displays the " "expression's value in the echo area." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:151 msgid "" "Other frequently used commands are @kbd{b} to set a breakpoint at a stop " "point, @kbd{g} to execute until a breakpoint is reached, and @kbd{q} to exit " "Edebug and return to the top-level command loop. Type @kbd{?} to display a " "list of all Edebug commands." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:153 #, no-wrap msgid "Instrumenting for Edebug" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:154 #, no-wrap msgid "instrumenting for Edebug" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:159 msgid "" "In order to use Edebug to debug Lisp code, you must first @dfn{instrument} " "the code. Instrumenting code inserts additional code into it, to invoke " "Edebug at the proper places." msgstr "" #. type: kindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:160 #, no-wrap msgid "C-M-x" msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:161 #, no-wrap msgid "eval-defun @r{(Edebug)}" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:171 msgid "" "When you invoke command @kbd{C-M-x} (@code{eval-defun}) with a prefix " "argument on a function definition, it instruments the definition before " "evaluating it. (This does not modify the source code itself.) If the " "variable @code{edebug-all-defs} is non-@code{nil}, that inverts the meaning " "of the prefix argument: in this case, @kbd{C-M-x} instruments the definition " "@emph{unless} it has a prefix argument. The default value of " "@code{edebug-all-defs} is @code{nil}. The command @kbd{M-x edebug-all-defs} " "toggles the value of the variable @code{edebug-all-defs}." msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:172 #, no-wrap msgid "eval-region @r{(Edebug)}" msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:173 #, no-wrap msgid "eval-buffer @r{(Edebug)}" msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:174 #, no-wrap msgid "eval-current-buffer @r{(Edebug)}" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:182 msgid "" "If @code{edebug-all-defs} is non-@code{nil}, then the commands " "@code{eval-region}, @code{eval-current-buffer}, and @code{eval-buffer} also " "instrument any definitions they evaluate. Similarly, " "@code{edebug-all-forms} controls whether @code{eval-region} should " "instrument @emph{any} form, even non-defining forms. This doesn't apply to " "loading or evaluations in the minibuffer. The command @kbd{M-x " "edebug-all-forms} toggles this option." msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:183 #, no-wrap msgid "edebug-eval-top-level-form" msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:184 #, no-wrap msgid "edebug-defun" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:189 msgid "" "Another command, @kbd{M-x edebug-eval-top-level-form}, is available to " "instrument any top-level form regardless of the values of " "@code{edebug-all-defs} and @code{edebug-all-forms}. @code{edebug-defun} is " "an alias for @code{edebug-eval-top-level-form}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:199 msgid "" "While Edebug is active, the command @kbd{I} " "(@code{edebug-instrument-callee}) instruments the definition of the function " "or macro called by the list form after point, if it is not already " "instrumented. This is possible only if Edebug knows where to find the " "source for that function; for this reason, after loading Edebug, " "@code{eval-region} records the position of every definition it evaluates, " "even if not instrumenting it. See also the @kbd{i} command " "(@pxref{Jumping}), which steps into the call after instrumenting the " "function." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:206 msgid "" "Edebug knows how to instrument all the standard special forms, " "@code{interactive} forms with an expression argument, anonymous lambda " "expressions, and other defining forms. However, Edebug cannot determine on " "its own what a user-defined macro will do with the arguments of a macro " "call, so you must provide that information using Edebug specifications; for " "details, @pxref{Edebug and Macros}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:211 msgid "" "When Edebug is about to instrument code for the first time in a session, it " "runs the hook @code{edebug-setup-hook}, then sets it to @code{nil}. You can " "use this to load Edebug specifications associated with a package you are " "using, but only when you use Edebug." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:212 #, no-wrap msgid "edebug, failure to instrument" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:217 msgid "" "If Edebug detects a syntax error while instrumenting, it leaves point at the " "erroneous code and signals an @code{invalid-read-syntax} error. Example:" msgstr "" #. type: example #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:220 #, no-wrap msgid "@error{} Invalid read syntax: \"Expected lambda expression\"\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:225 msgid "" "One potential reason for such a failure to instrument is that some macro " "definitions are not yet known to Emacs. To work around this, load the file " "which defines the function you are about to instrument." msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:226 #, no-wrap msgid "eval-expression @r{(Edebug)}" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:232 msgid "" "To remove instrumentation from a definition, simply re-evaluate its " "definition in a way that does not instrument. There are two ways of " "evaluating forms that never instrument them: from a file with @code{load}, " "and from the minibuffer with @code{eval-expression} (@kbd{M-:})." msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:233 #, no-wrap msgid "edebug-remove-instrumentation" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:238 msgid "" "A different way to remove the instrumentation from a definition is to use " "the @code{edebug-remove-instrumentation} command. It also allows removing " "the instrumentation from everything that has been instrumented." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:241 msgid "" "@xref{Edebug Eval}, for other evaluation functions available inside of " "Edebug." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:242 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:243 #, no-wrap msgid "Edebug Execution Modes" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:245 #, no-wrap msgid "Edebug execution modes" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:253 msgid "" "Edebug supports several execution modes for running the program you are " "debugging. We call these alternatives @dfn{Edebug execution modes}; do not " "confuse them with major or minor modes. The current Edebug execution mode " "determines how far Edebug continues execution before stopping---whether it " "stops at each stop point, or continues to the next breakpoint, for " "example---and how much Edebug displays the progress of the evaluation before " "it stops." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:258 msgid "" "Normally, you specify the Edebug execution mode by typing a command to " "continue the program in a certain mode. Here is a table of these commands; " "all except for @kbd{S} resume execution of the program, at least for a " "certain distance." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:260 #, no-wrap msgid "S" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:264 msgid "" "Stop: don't execute any more of the program, but wait for more Edebug " "commands (@code{edebug-stop})." msgstr "" #. type: key{#1} #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:265 #, no-wrap msgid "SPC" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:267 msgid "Step: stop at the next stop point encountered (@code{edebug-step-mode})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:268 #, no-wrap msgid "n" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:272 msgid "" "Next: stop at the next stop point encountered after an expression " "(@code{edebug-next-mode}). Also see @code{edebug-forward-sexp} in " "@ref{Jumping}." msgstr "" #. type: code{#1} #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:273 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1217 #, no-wrap msgid "t" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:276 msgid "" "Trace: pause (normally one second) at each Edebug stop point " "(@code{edebug-trace-mode})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:277 #, no-wrap msgid "T" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:280 msgid "" "Rapid trace: update the display at each stop point, but don't actually pause " "(@code{edebug-Trace-fast-mode})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:281 #, no-wrap msgid "g" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:283 msgid "" "Go: run until the next breakpoint (@code{edebug-go-mode}). " "@xref{Breakpoints}." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:284 #, no-wrap msgid "c" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:287 msgid "" "Continue: pause one second at each breakpoint, and then continue " "(@code{edebug-continue-mode})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:288 #, no-wrap msgid "C" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:291 msgid "" "Rapid continue: move point to each breakpoint, but don't pause " "(@code{edebug-Continue-fast-mode})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:292 #, no-wrap msgid "G" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:295 msgid "" "Go non-stop: ignore breakpoints (@code{edebug-Go-nonstop-mode}). You can " "still stop the program by typing @kbd{S}, or any editing command." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:299 msgid "" "In general, the execution modes earlier in the above list run the program " "more slowly or stop sooner than the modes later in the list." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:307 msgid "" "When you enter a new Edebug level, Edebug will normally stop at the first " "instrumented function it encounters. If you prefer to stop only at a break " "point, or not at all (for example, when gathering coverage data), change the " "value of @code{edebug-initial-mode} from its default @code{step} to " "@code{go}, or @code{Go-nonstop}, or one of its other values (@pxref{Edebug " "Options}). You can do this readily with @kbd{C-x C-a C-m} " "(@code{edebug-set-initial-mode}):" msgstr "" #. type: deffn #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:308 #, no-wrap msgid "Command edebug-set-initial-mode" msgstr "" #. type: kindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:309 #, no-wrap msgid "C-x C-a C-m" msgstr "" #. type: deffn #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:314 msgid "" "This command, bound to @kbd{C-x C-a C-m}, sets @code{edebug-initial-mode}. " "It prompts you for a key to indicate the mode. You should enter one of the " "eight keys listed above, which sets the corresponding mode." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:319 msgid "" "Note that you may reenter the same Edebug level several times if, for " "example, an instrumented function is called several times from one command." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:325 msgid "" "While executing or tracing, you can interrupt the execution by typing any " "Edebug command. Edebug stops the program at the next stop point and then " "executes the command you typed. For example, typing @kbd{t} during " "execution switches to trace mode at the next stop point. You can use " "@kbd{S} to stop execution without doing anything else." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:330 msgid "" "If your function happens to read input, a character you type intending to " "interrupt execution may be read by the function instead. You can avoid such " "unintended results by paying attention to when your program wants input." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:331 #, no-wrap msgid "keyboard macros (Edebug)" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:338 msgid "" "Keyboard macros containing the commands in this section do not completely " "work: exiting from Edebug, to resume the program, loses track of the " "keyboard macro. This is not easy to fix. Also, defining or executing a " "keyboard macro outside of Edebug does not affect commands inside Edebug. " "This is usually an advantage. See also the @code{edebug-continue-kbd-macro} " "option in @ref{Edebug Options}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:339 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1767 #, no-wrap msgid "edebug-sit-for-seconds" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:342 msgid "" "This option specifies how many seconds to wait between execution steps in " "trace mode or continue mode. The default is 1 second." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:352 msgid "" "The commands described in this section execute until they reach a specified " "location. All except @kbd{i} make a temporary breakpoint to establish the " "place to stop, then switch to go mode. Any other breakpoint reached before " "the intended stop point will also stop execution. @xref{Breakpoints}, for " "the details on breakpoints." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:356 msgid "" "These commands may fail to work as expected in case of nonlocal exit, as " "that can bypass the temporary breakpoint where you expected the program to " "stop." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:358 #, no-wrap msgid "h" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:360 msgid "Proceed to the stop point near where point is (@code{edebug-goto-here})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:361 #, no-wrap msgid "f" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:364 msgid "Run the program for one expression (@code{edebug-forward-sexp})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:365 #, no-wrap msgid "o" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:367 msgid "" "Run the program until the end of the containing sexp " "(@code{edebug-step-out})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:368 #, no-wrap msgid "i" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:371 msgid "" "Step into the function or macro called by the form after point " "(@code{edebug-step-in})." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:375 msgid "" "The @kbd{h} command proceeds to the stop point at or after the current " "location of point, using a temporary breakpoint." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:380 msgid "" "The @kbd{f} command runs the program forward over one expression. More " "precisely, it sets a temporary breakpoint at the position that " "@code{forward-sexp} would reach, then executes in go mode so that the " "program will stop at breakpoints." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:385 msgid "" "With a prefix argument @var{n}, the temporary breakpoint is placed @var{n} " "sexps beyond point. If the containing list ends before @var{n} more " "elements, then the place to stop is after the containing expression." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:389 msgid "" "You must check that the position @code{forward-sexp} finds is a place that " "the program will really get to. In @code{cond}, for example, this may not " "be true." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:394 msgid "" "For flexibility, the @kbd{f} command does @code{forward-sexp} starting at " "point, rather than at the stop point. If you want to execute one expression " "@emph{from the current stop point}, first type @kbd{w} (@code{edebug-where}) " "to move point there, and then type @kbd{f}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:402 msgid "" "The @kbd{o} command continues out of an expression. It places a temporary " "breakpoint at the end of the sexp containing point. If the containing sexp " "is a function definition itself, @kbd{o} continues until just before the " "last sexp in the definition. If that is where you are now, it returns from " "the function and then stops. In other words, this command does not exit the " "currently executing function unless you are positioned after the last sexp." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:407 msgid "" "Normally, the @kbd{h}, @kbd{f}, and @kbd{o} commands display ``Break'' and " "pause for @code{edebug-sit-for-seconds} before showing the result of the " "form just evaluated. You can avoid this pause by setting " "@code{edebug-sit-on-break} to @code{nil}. @xref{Edebug Options}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:413 msgid "" "The @kbd{i} command steps into the function or macro called by the list form " "after point, and stops at its first stop point. Note that the form need not " "be the one about to be evaluated. But if the form is a function call about " "to be evaluated, remember to use this command before any of the arguments " "are evaluated, since otherwise it will be too late." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:418 msgid "" "The @kbd{i} command instruments the function or macro it's supposed to step " "into, if it isn't instrumented already. This is convenient, but keep in " "mind that the function or macro remains instrumented unless you explicitly " "arrange to deinstrument it." msgstr "" #. type: node #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:419 #, no-wrap msgid "Edebug Misc" msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:420 #, no-wrap msgid "Miscellaneous Edebug Commands" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:423 msgid "Some miscellaneous Edebug commands are described here." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:425 #, no-wrap msgid "?" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:427 msgid "Display the help message for Edebug (@code{edebug-help})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:428 #, no-wrap msgid "a" msgstr "" #. type: itemx #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:429 #, no-wrap msgid "C-]" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:432 msgid "" "Abort one level back to the previous command level " "(@code{abort-recursive-edit})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:433 #, no-wrap msgid "q" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:439 msgid "" "Return to the top level editor command loop (@code{top-level}). This exits " "all recursive editing levels, including all levels of Edebug activity. " "However, instrumented code protected with @code{unwind-protect} or " "@code{condition-case} forms may resume debugging." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:440 #, no-wrap msgid "Q" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:443 msgid "" "Like @kbd{q}, but don't stop even for protected code " "(@code{edebug-top-level-nonstop})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:444 #, no-wrap msgid "r" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:447 msgid "" "Redisplay the most recently known expression result in the echo area " "(@code{edebug-previous-result})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:448 #, no-wrap msgid "d" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:451 msgid "" "Display a backtrace, excluding Edebug's own functions for clarity " "(@code{edebug-pop-to-backtrace})." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:454 msgid "" "@xref{Backtraces}, for a description of backtraces and the commands which " "work on them." msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:455 #, no-wrap msgid "edebug-backtrace-show-instrumentation" msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:456 #, no-wrap msgid "edebug-backtrace-hide-instrumentation" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:460 msgid "" "If you would like to see Edebug's functions in the backtrace, use @kbd{M-x " "edebug-backtrace-show-instrumentation}. To hide them again use @kbd{M-x " "edebug-backtrace-hide-instrumentation}." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:464 msgid "" "If a backtrace frame starts with @samp{>} that means that Edebug knows where " "the source code for the frame is located. Use @kbd{s} to jump to the source " "code for the current frame." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:467 msgid "The backtrace buffer is killed automatically when you continue execution." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:473 msgid "" "You can invoke commands from Edebug that activate Edebug again recursively. " "Whenever Edebug is active, you can quit to the top level with @kbd{q} or " "abort one recursive edit level with @kbd{C-]}. You can display a backtrace " "of all the pending evaluations with @kbd{d}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:480 msgid "" "Edebug's step mode stops execution when the next stop point is reached. " "There are three other ways to stop Edebug execution once it has started: " "breakpoints, the global break condition, and source breakpoints." msgstr "" #. type: node #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:485 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:487 #, no-wrap msgid "Breakpoints" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:485 msgid "Breakpoints at stop points." msgstr "" #. type: subsubsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:485 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:561 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:562 #, no-wrap msgid "Global Break Condition" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:485 msgid "Breaking on an event." msgstr "" #. type: subsubsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:485 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:584 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:585 #, no-wrap msgid "Source Breakpoints" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:485 msgid "Embedding breakpoints in source code." msgstr "" #. type: subsubsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:488 #, no-wrap msgid "Edebug Breakpoints" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:490 #, no-wrap msgid "breakpoints (Edebug)" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:497 msgid "" "While using Edebug, you can specify @dfn{breakpoints} in the program you are " "testing: these are places where execution should stop. You can set a " "breakpoint at any stop point, as defined in @ref{Using Edebug}. For setting " "and unsetting breakpoints, the stop point that is affected is the first one " "at or after point in the source code buffer. Here are the Edebug commands " "for breakpoints:" msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:499 #, no-wrap msgid "b" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:505 msgid "" "Set a breakpoint at the stop point at or after point " "(@code{edebug-set-breakpoint}). If you use a prefix argument, the " "breakpoint is temporary---it turns off the first time it stops the program. " "An overlay with the @code{edebug-enabled-breakpoint} or " "@code{edebug-disabled-breakpoint} faces is put at the breakpoint." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:506 #, no-wrap msgid "u" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:509 msgid "" "Unset the breakpoint (if any) at the stop point at or after point " "(@code{edebug-unset-breakpoint})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:510 #, no-wrap msgid "U" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:513 msgid "Unset any breakpoints in the current form (@code{edebug-unset-breakpoints})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:514 #, no-wrap msgid "D" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:519 msgid "" "Toggle whether to disable the breakpoint near point " "(@code{edebug-toggle-disable-breakpoint}). This command is mostly useful if " "the breakpoint is conditional and it would take some work to recreate the " "condition." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:520 #, no-wrap msgid "x @var{condition} @key{RET}" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:525 msgid "" "Set a conditional breakpoint which stops the program only if evaluating " "@var{condition} produces a non-@code{nil} value " "(@code{edebug-set-conditional-breakpoint}). With a prefix argument, the " "breakpoint is temporary." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:526 #, no-wrap msgid "B" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:529 msgid "" "Move point to the next breakpoint in the current definition " "(@code{edebug-next-breakpoint})." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:535 msgid "" "While in Edebug, you can set a breakpoint with @kbd{b} and unset one with " "@kbd{u}. First move point to the Edebug stop point of your choice, then " "type @kbd{b} or @kbd{u} to set or unset a breakpoint there. Unsetting a " "breakpoint where none has been set has no effect." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:538 msgid "" "Re-evaluating or reinstrumenting a definition removes all of its previous " "breakpoints." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:546 msgid "" "A @dfn{conditional breakpoint} tests a condition each time the program gets " "there. Any errors that occur as a result of evaluating the condition are " "ignored, as if the result were @code{nil}. To set a conditional breakpoint, " "use @kbd{x}, and specify the condition expression in the minibuffer. " "Setting a conditional breakpoint at a stop point that has a previously " "established conditional breakpoint puts the previous condition expression in " "the minibuffer so you can edit it." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:551 msgid "" "You can make a conditional or unconditional breakpoint @dfn{temporary} by " "using a prefix argument with the command to set the breakpoint. When a " "temporary breakpoint stops the program, it is automatically unset." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:554 msgid "" "Edebug always stops or pauses at a breakpoint, except when the Edebug mode " "is Go-nonstop. In that mode, it ignores breakpoints entirely." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:560 msgid "" "To find out where your breakpoints are, use the @kbd{B} command, which moves " "point to the next breakpoint following point, within the same function, or " "to the first breakpoint if there are no following breakpoints. This command " "does not continue execution---it just moves point in the buffer." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:564 #, no-wrap msgid "stopping on events" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:565 #, no-wrap msgid "global break condition" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:572 msgid "" "A @dfn{global break condition} stops execution when a specified condition is " "satisfied, no matter where that may occur. Edebug evaluates the global " "break condition at every stop point; if it evaluates to a non-@code{nil} " "value, then execution stops or pauses depending on the execution mode, as if " "a breakpoint had been hit. If evaluating the condition gets an error, " "execution does not stop." msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:573 #, no-wrap msgid "edebug-set-global-break-condition" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:579 msgid "" "The condition expression is stored in @code{edebug-global-break-condition}. " "You can specify a new expression using the @kbd{X} command from the source " "code buffer while Edebug is active, or using @kbd{C-x X X} from any buffer " "at any time, as long as Edebug is loaded " "(@code{edebug-set-global-break-condition})." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:583 msgid "" "The global break condition is the simplest way to find where in your code " "some event occurs, but it makes code run much more slowly. So you should " "reset the condition to @code{nil} when not using it." msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:587 #, no-wrap msgid "edebug" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:588 #, no-wrap msgid "source breakpoints" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:596 msgid "" "All breakpoints in a definition are forgotten each time you reinstrument " "it. If you wish to make a breakpoint that won't be forgotten, you can write " "a @dfn{source breakpoint}, which is simply a call to the function " "@code{edebug} in your source code. You can, of course, make such a call " "conditional. For example, in the @code{fac} function, you can insert the " "first line as shown below, to stop when the argument reaches zero:" msgstr "" #. type: example #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:603 #, no-wrap msgid "" "(defun fac (n)\n" " (if (= n 0) (edebug))\n" " (if (< 0 n)\n" " (* n (fac (1- n)))\n" " 1))\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:608 msgid "" "When the @code{fac} definition is instrumented and the function is called, " "the call to @code{edebug} acts as a breakpoint. Depending on the execution " "mode, Edebug stops or pauses there." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:612 msgid "" "If no instrumented code is being executed when @code{edebug} is called, that " "function calls @code{debug}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:621 msgid "" "Emacs normally displays an error message when an error is signaled and not " "handled with @code{condition-case}. While Edebug is active and executing " "instrumented code, it normally responds to all unhandled errors. You can " "customize this with the options @code{edebug-on-error} and " "@code{edebug-on-quit}; see @ref{Edebug Options}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:628 msgid "" "When Edebug responds to an error, it shows the last stop point encountered " "before the error. This may be the location of a call to a function which " "was not instrumented, and within which the error actually occurred. For an " "unbound variable error, the last known stop point might be quite distant " "from the offending variable reference. In that case, you might want to " "display a full backtrace (@pxref{Edebug Misc})." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:634 msgid "" "If you change @code{debug-on-error} or @code{debug-on-quit} while Edebug is " "active, these changes will be forgotten when Edebug becomes inactive. " "Furthermore, during Edebug's recursive edit, these variables are bound to " "the values they had outside of Edebug." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:635 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:636 #, no-wrap msgid "Edebug Views" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:642 msgid "" "These Edebug commands let you view aspects of the buffer and window status " "as they were before entry to Edebug. The outside window configuration is " "the collection of windows and contents that were in effect outside of " "Edebug." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:644 #, no-wrap msgid "P" msgstr "" #. type: itemx #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:645 #, no-wrap msgid "v" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:648 msgid "" "Switch to viewing the outside window configuration " "(@code{edebug-view-outside}). Type @kbd{C-x X w} to return to Edebug." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:649 #, no-wrap msgid "p" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:654 msgid "" "Temporarily display the outside current buffer with point at its outside " "position (@code{edebug-bounce-point}), pausing for one second before " "returning to Edebug. With a prefix argument @var{n}, pause for @var{n} " "seconds instead." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:655 #, no-wrap msgid "w" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:658 msgid "" "Move point back to the current stop point in the source code buffer " "(@code{edebug-where})." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:662 msgid "" "If you use this command in a different window displaying the same buffer, " "that window will be used instead to display the current definition in the " "future." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:663 #, no-wrap msgid "W" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:667 msgid "" "Toggle whether Edebug saves and restores the outside window configuration " "(@code{edebug-toggle-save-windows})." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:671 msgid "" "With a prefix argument, @kbd{W} only toggles saving and restoring of the " "selected window. To specify a window that is not displaying the source code " "buffer, you must use @kbd{C-x X W} from the global keymap." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:676 msgid "" "You can view the outside window configuration with @kbd{v} or just bounce to " "the point in the current buffer with @kbd{p}, even if it is not normally " "displayed." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:681 msgid "" "After moving point, you may wish to jump back to the stop point. You can do " "that with @kbd{w} from a source code buffer. You can jump back to the stop " "point in the source code buffer from any buffer using @kbd{C-x X w}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:689 msgid "" "Each time you use @kbd{W} to turn saving @emph{off}, Edebug forgets the " "saved outside window configuration---so that even if you turn saving back " "@emph{on}, the current window configuration remains unchanged when you next " "exit Edebug (by continuing the program). However, the automatic redisplay " "of @file{*edebug*} and @file{*edebug-trace*} may conflict with the buffers " "you wish to see unless you have enough windows open." msgstr "" #. type: node #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:690 #, no-wrap msgid "Edebug Eval" msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:691 #, no-wrap msgid "Evaluation" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:699 msgid "" "While within Edebug, you can evaluate expressions as if Edebug were not " "running. Edebug tries to be invisible to the expression's evaluation and " "printing. Evaluation of expressions that cause side effects will work as " "expected, except for changes to data that Edebug explicitly saves and " "restores. @xref{The Outside Context}, for details on this process." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:701 #, no-wrap msgid "e @var{exp} @key{RET}" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:705 msgid "" "Evaluate expression @var{exp} in the context outside of Edebug " "(@code{edebug-eval-expression}). That is, Edebug tries to minimize its " "interference with the evaluation." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:706 #, no-wrap msgid "M-: @var{exp} @key{RET}" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:709 msgid "" "Evaluate expression @var{exp} in the context of Edebug itself " "(@code{eval-expression})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:710 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:749 #, no-wrap msgid "C-x C-e" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:715 msgid "" "Evaluate the expression before point, in the context outside of Edebug " "(@code{edebug-eval-last-sexp}). With the prefix argument of zero (@kbd{C-u " "0 C-x C-e}), don't shorten long items (like strings and lists)." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:717 #, no-wrap msgid "lexical binding (Edebug)" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:723 msgid "" "Edebug supports evaluation of expressions containing references to lexically " "bound symbols created by the following constructs in @file{cl.el}: " "@code{lexical-let}, @code{macrolet}, and @code{symbol-macrolet}." msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:725 #, no-wrap msgid "Evaluation List Buffer" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:731 msgid "" "You can use the @dfn{evaluation list buffer}, called @file{*edebug*}, to " "evaluate expressions interactively. You can also set up the @dfn{evaluation " "list} of expressions to be evaluated automatically each time Edebug updates " "the display." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:733 #, no-wrap msgid "E" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:736 msgid "" "Switch to the evaluation list buffer @file{*edebug*} " "(@code{edebug-visit-eval-list})." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:741 msgid "" "In the @file{*edebug*} buffer you can use the commands of Lisp Interaction " "mode (@pxref{Lisp Interaction,,, emacs, The GNU Emacs Manual}) as well as " "these special commands:" msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:743 #, no-wrap msgid "C-j" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:748 msgid "" "Evaluate the expression before point, in the outside context, and insert the " "value in the buffer (@code{edebug-eval-print-last-sexp}). With prefix " "argument of zero (@kbd{C-u 0 C-j}), don't shorten long items (like strings " "and lists)." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:752 msgid "" "Evaluate the expression before point, in the context outside of Edebug " "(@code{edebug-eval-last-sexp})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:753 #, no-wrap msgid "C-c C-u" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:756 msgid "" "Build a new evaluation list from the contents of the buffer " "(@code{edebug-update-eval-list})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:757 #, no-wrap msgid "C-c C-d" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:760 msgid "" "Delete the evaluation list group that point is in " "(@code{edebug-delete-eval-item})." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:761 #, no-wrap msgid "C-c C-w" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:764 msgid "" "Switch back to the source code buffer at the current stop point " "(@code{edebug-where})." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:769 msgid "" "You can evaluate expressions in the evaluation list window with @kbd{C-j} or " "@kbd{C-x C-e}, just as you would in @file{*scratch*}; but they are evaluated " "in the context outside of Edebug." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:773 msgid "" "The expressions you enter interactively (and their results) are lost when " "you continue execution; but you can set up an @dfn{evaluation list} " "consisting of expressions to be evaluated each time execution stops." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:774 #, no-wrap msgid "evaluation list group" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:778 msgid "" "To do this, write one or more @dfn{evaluation list groups} in the evaluation " "list buffer. An evaluation list group consists of one or more Lisp " "expressions. Groups are separated by comment lines." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:783 msgid "" "The command @kbd{C-c C-u} (@code{edebug-update-eval-list}) rebuilds the " "evaluation list, scanning the buffer and using the first expression of each " "group. (The idea is that the second expression of the group is the value " "previously computed and displayed.)" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:789 msgid "" "Each entry to Edebug redisplays the evaluation list by inserting each " "expression in the buffer, followed by its current value. It also inserts " "comment lines so that each expression becomes its own group. Thus, if you " "type @kbd{C-c C-u} again without changing the buffer text, the evaluation " "list is effectively unchanged." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:794 msgid "" "If an error occurs during an evaluation from the evaluation list, the error " "message is displayed in a string as if it were the result. Therefore, " "expressions using variables that are not currently valid do not interrupt " "your debugging." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:797 msgid "" "Here is an example of what the evaluation list window looks like after " "several expressions have been added to it:" msgstr "" #. type: smallexample #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:817 #, no-wrap msgid "" "(current-buffer)\n" "#\n" ";---------------------------------------------------------------\n" "(selected-window)\n" "#\n" ";---------------------------------------------------------------\n" "(point)\n" "196\n" ";---------------------------------------------------------------\n" "bad-var\n" "\"Symbol's value as variable is void: bad-var\"\n" ";---------------------------------------------------------------\n" "(recursion-depth)\n" "0\n" ";---------------------------------------------------------------\n" "this-command\n" "eval-last-sexp\n" ";---------------------------------------------------------------\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:825 msgid "" "To delete a group, move point into it and type @kbd{C-c C-d}, or simply " "delete the text for the group and update the evaluation list with @kbd{C-c " "C-u}. To add a new expression to the evaluation list, insert the expression " "at a suitable place, insert a new comment line, then type @kbd{C-c C-u}. " "You need not insert dashes in the comment line---its contents don't matter." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:829 msgid "" "After selecting @file{*edebug*}, you can return to the source code buffer " "with @kbd{C-c C-w}. The @file{*edebug*} buffer is killed when you continue " "execution, and recreated next time it is needed." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:833 #, no-wrap msgid "printing (Edebug)" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:834 #, no-wrap msgid "printing circular structures" msgstr "" #. type: pindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:835 #, no-wrap msgid "cust-print" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:838 msgid "" "If an expression in your program produces a value containing circular list " "structure, you may get an error when Edebug attempts to print it." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:845 msgid "" "One way to cope with circular structure is to set @code{print-length} or " "@code{print-level} to truncate the printing. Edebug does this for you; it " "binds @code{print-length} and @code{print-level} to the values of the " "variables @code{edebug-print-length} and @code{edebug-print-level} (so long " "as they have non-@code{nil} values). @xref{Output Variables}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:846 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1705 #, no-wrap msgid "edebug-print-length" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:849 msgid "" "If non-@code{nil}, Edebug binds @code{print-length} to this value while " "printing results. The default value is @code{50}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:851 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1710 #, no-wrap msgid "edebug-print-level" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:854 msgid "" "If non-@code{nil}, Edebug binds @code{print-level} to this value while " "printing results. The default value is @code{50}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:859 msgid "" "You can also print circular structures and structures that share elements " "more informatively by binding @code{print-circle} to a non-@code{nil} value." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:861 msgid "Here is an example of code that creates a circular structure:" msgstr "" #. type: example #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:865 #, no-wrap msgid "" "(setq a (list 'x 'y))\n" "(setcar a a)\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:874 msgid "" "If @code{print-circle} is non-@code{nil}, printing functions (e.g., " "@code{prin1}) will print @code{a} as @samp{#1=(#1# y)}. The @samp{#1=} " "notation labels the structure that follows it with the label @samp{1}, and " "the @samp{#1#} notation references the previously labeled structure. This " "notation is used for any shared elements of lists or vectors." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:875 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1715 #, no-wrap msgid "edebug-print-circle" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:878 msgid "" "If non-@code{nil}, Edebug binds @code{print-circle} to this value while " "printing results. The default value is @code{t}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:882 msgid "" "For further details about how printing can be customized, see @pxref{Output " "Functions}." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:885 #, no-wrap msgid "trace buffer" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:891 msgid "" "Edebug can record an execution trace, storing it in a buffer named " "@file{*edebug-trace*}. This is a log of function calls and returns, showing " "the function names and their arguments and values. To enable trace " "recording, set @code{edebug-trace} to a non-@code{nil} value." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:894 msgid "" "Making a trace buffer is not the same thing as using trace execution mode " "(@pxref{Edebug Execution Modes})." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:900 msgid "" "When trace recording is enabled, each function entry and exit adds lines to " "the trace buffer. A function entry record consists of @samp{::::@{}, " "followed by the function name and argument values. A function exit record " "consists of @samp{::::@}}, followed by the function name and result of the " "function." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:904 msgid "" "The number of @samp{:}s in an entry shows its recursion depth. You can use " "the braces in the trace buffer to find the matching beginning or end of " "function calls." msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:905 #, no-wrap msgid "edebug-print-trace-before" msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:906 #, no-wrap msgid "edebug-print-trace-after" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:910 msgid "" "You can customize trace recording for function entry and exit by redefining " "the functions @code{edebug-print-trace-before} and " "@code{edebug-print-trace-after}." msgstr "" #. type: defmac #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:911 #, no-wrap msgid "edebug-tracing string body@dots{}" msgstr "" #. type: defmac #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:917 msgid "" "This macro requests additional trace information around the execution of the " "@var{body} forms. The argument @var{string} specifies text to put in the " "trace buffer, after the @samp{@{} or @samp{@}}. All the arguments are " "evaluated, and @code{edebug-tracing} returns the value of the last form in " "@var{body}." msgstr "" #. type: defun #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:919 #, no-wrap msgid "edebug-trace format-string &rest format-args" msgstr "" #. type: defun #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:923 msgid "" "This function inserts text in the trace buffer. It computes the text with " "@code{(apply 'format @var{format-string} @var{format-args})}. It also " "appends a newline to separate entries." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:929 msgid "" "@code{edebug-tracing} and @code{edebug-trace} insert lines in the trace " "buffer whenever they are called, even if Edebug is not active. Adding text " "to the trace buffer also scrolls its window to show the last lines inserted." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:933 #, no-wrap msgid "coverage testing (Edebug)" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:934 #, no-wrap msgid "frequency counts" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:935 #, no-wrap msgid "performance analysis (Edebug)" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:938 msgid "" "Edebug provides rudimentary coverage testing and display of execution " "frequency." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:946 msgid "" "Coverage testing works by comparing the result of each expression with the " "previous result; each form in the program is considered covered if it has " "returned two different values since you began testing coverage in the " "current Emacs session. Thus, to do coverage testing on your program, " "execute it under various conditions and note whether it behaves correctly; " "Edebug will tell you when you have tried enough different conditions that " "each form has returned two different values." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:952 msgid "" "Coverage testing makes execution slower, so it is only done if " "@code{edebug-test-coverage} is non-@code{nil}. Frequency counting is " "performed for all executions of an instrumented function, even if the " "execution mode is Go-nonstop, and regardless of whether coverage testing is " "enabled." msgstr "" #. type: kindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:953 #, no-wrap msgid "C-x X =" msgstr "" #. type: findex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:954 #, no-wrap msgid "edebug-temp-display-freq-count" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:959 msgid "" "Use @kbd{C-x X =} (@code{edebug-display-freq-count}) to display both the " "coverage information and the frequency counts for a definition. Just " "@kbd{=} (@code{edebug-temp-display-freq-count}) displays the same " "information temporarily, only until you type another key." msgstr "" #. type: deffn #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:960 #, no-wrap msgid "Command edebug-display-freq-count" msgstr "" #. type: deffn #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:963 msgid "" "This command displays the frequency count data for each line of the current " "definition." msgstr "" #. type: deffn #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:970 msgid "" "It inserts frequency counts as comment lines after each line of code. You " "can undo all insertions with one @code{undo} command. The counts appear " "under the @samp{(} before an expression or the @samp{)} after an expression, " "or on the last character of a variable. To simplify the display, a count is " "not shown if it is equal to the count of an earlier expression on the same " "line." msgstr "" #. type: deffn #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:974 msgid "" "The character @samp{=} following the count for an expression says that the " "expression has returned the same value each time it was evaluated. In other " "words, it is not yet covered for coverage testing purposes." msgstr "" #. type: deffn #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:977 msgid "" "To clear the frequency count and coverage data for a definition, simply " "reinstrument it with @code{eval-defun}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:982 msgid "" "For example, after evaluating @code{(fac 5)} with a source breakpoint, and " "setting @code{edebug-test-coverage} to @code{t}, when the breakpoint is " "reached, the frequency data looks like this:" msgstr "" #. type: example #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:993 #, no-wrap msgid "" "(defun fac (n)\n" " (if (= n 0) (edebug))\n" ";#6 1 = =5\n" " (if (< 0 n)\n" ";#5 =\n" " (* n (fac (1- n)))\n" ";# 5 0\n" " 1))\n" ";# 0\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:999 msgid "" "The comment lines show that @code{fac} was called 6 times. The first " "@code{if} statement returned 5 times with the same result each time; the " "same is true of the condition on the second @code{if}. The recursive call " "of @code{fac} did not return at all." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1010 msgid "" "Edebug tries to be transparent to the program you are debugging, but it does " "not succeed completely. Edebug also tries to be transparent when you " "evaluate expressions with @kbd{e} or with the evaluation list buffer, by " "temporarily restoring the outside context. This section explains precisely " "what context Edebug restores, and how Edebug fails to be completely " "transparent." msgstr "" #. type: subsubsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1015 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1017 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1018 #, no-wrap msgid "Checking Whether to Stop" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1015 msgid "When Edebug decides what to do." msgstr "" #. type: subsubsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1015 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1041 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1042 #, no-wrap msgid "Edebug Display Update" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1015 msgid "When Edebug updates the display." msgstr "" #. type: subsubsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1015 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1096 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1097 #, no-wrap msgid "Edebug Recursive Edit" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1015 msgid "When Edebug stops execution." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1023 msgid "" "Whenever Edebug is entered, it needs to save and restore certain data before " "even deciding whether to make trace information or stop the program." msgstr "" #. type: vindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1026 #, no-wrap msgid "edebug-max-depth" msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1033 msgid "" "@code{max-lisp-eval-depth} (@pxref{Eval}) and @code{max-specpdl-size} " "(@pxref{Local Variables}) are both increased to reduce Edebug's impact on " "the stack. You could, however, still run out of stack space when using " "Edebug. You can also enlarge the value of @code{edebug-max-depth} if Edebug " "reaches the limit of recursion depth instrumenting code that contains very " "large quoted lists." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1038 msgid "" "The state of keyboard macro execution is saved and restored. While Edebug " "is active, @code{executing-kbd-macro} is bound to @code{nil} unless " "@code{edebug-continue-kbd-macro} is non-@code{nil}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1050 msgid "" "When Edebug needs to display something (e.g., in trace mode), it saves the " "current window configuration from outside Edebug (@pxref{Window " "Configurations}). When you exit Edebug, it restores the previous window " "configuration." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1057 msgid "" "Emacs redisplays only when it pauses. Usually, when you continue execution, " "the program re-enters Edebug at a breakpoint or after stepping, without " "pausing or reading input in between. In such cases, Emacs never gets a " "chance to redisplay the outside configuration. Consequently, what you see " "is the same window configuration as the last time Edebug was active, with no " "interruption." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1061 msgid "" "Entry to Edebug for displaying something also saves and restores the " "following data (though some of them are deliberately not restored if an " "error or quit signal occurs)." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1064 #, no-wrap msgid "current buffer point and mark (Edebug)" msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1067 msgid "" "Which buffer is current, and the positions of point and the mark in the " "current buffer, are saved and restored." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1069 #, no-wrap msgid "window configuration (Edebug)" msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1072 msgid "" "The outside window configuration is saved and restored if " "@code{edebug-save-windows} is non-@code{nil} (@pxref{Edebug Options})." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1078 msgid "" "The window configuration is not restored on error or quit, but the outside " "selected window @emph{is} reselected even on error or quit in case a " "@code{save-excursion} is active. If the value of @code{edebug-save-windows} " "is a list, only the listed windows are saved and restored." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1081 msgid "" "The window start and horizontal scrolling of the source code buffer are not " "restored, however, so that the display remains coherent within Edebug." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1085 msgid "" "The value of point in each displayed buffer is saved and restored if " "@code{edebug-save-displayed-buffer-points} is non-@code{nil}." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1090 msgid "" "The variables @code{overlay-arrow-position} and @code{overlay-arrow-string} " "are saved and restored, so you can safely invoke Edebug from the recursive " "edit elsewhere in the same buffer." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1094 msgid "" "@code{cursor-in-echo-area} is locally bound to @code{nil} so that the cursor " "shows up in the window." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1101 msgid "" "When Edebug is entered and actually reads commands from the user, it saves " "(and later restores) these additional data:" msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1105 msgid "The current match data. @xref{Match Data}." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1112 msgid "" "The variables @code{last-command}, @code{this-command}, " "@code{last-command-event}, @code{last-input-event}, @code{last-event-frame}, " "@code{last-nonmenu-event}, and @code{track-mouse}. Commands in Edebug do " "not affect these variables outside of Edebug." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1116 msgid "" "Executing commands within Edebug can change the key sequence that would be " "returned by @code{this-command-keys}, and there is no way to reset the key " "sequence from Lisp." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1121 msgid "" "Edebug cannot save and restore the value of @code{unread-command-events}. " "Entering Edebug while this variable has a nontrivial value can interfere " "with execution of the program you are debugging." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1125 msgid "" "Complex commands executed while in Edebug are added to the variable " "@code{command-history}. In rare cases this can alter execution." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1130 msgid "" "Within Edebug, the recursion depth appears one deeper than the recursion " "depth outside Edebug. This is not true of the automatically updated " "evaluation list window." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1135 msgid "" "@code{standard-output} and @code{standard-input} are bound to @code{nil} by " "the @code{recursive-edit}, but Edebug temporarily restores them during " "evaluations." msgstr "" #. type: itemize #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1140 msgid "" "The state of keyboard macro definition is saved and restored. While Edebug " "is active, @code{defining-kbd-macro} is bound to " "@code{edebug-continue-kbd-macro}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1147 msgid "" "To make Edebug properly instrument expressions that call macros, some extra " "care is needed. This subsection explains the details." msgstr "" #. type: subsubsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1153 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1155 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1156 #, no-wrap msgid "Instrumenting Macro Calls" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1153 msgid "The basic problem." msgstr "" #. type: subsubsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1153 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1243 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1244 #, no-wrap msgid "Specification List" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1153 msgid "How to specify complex patterns of evaluation." msgstr "" #. type: node #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1153 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1482 #, no-wrap msgid "Backtracking" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1153 msgid "What Edebug does when matching fails." msgstr "" #. type: subsubsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1153 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1523 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1524 #, no-wrap msgid "Specification Examples" msgstr "" #. type: menuentry #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1153 msgid "To help understand specifications." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1164 msgid "" "When Edebug instruments an expression that calls a Lisp macro, it needs " "additional information about the macro to do the job properly. This is " "because there is no a-priori way to tell which subexpressions of the macro " "call are forms to be evaluated. (Evaluation may occur explicitly in the " "macro body, or when the resulting expansion is evaluated, or any time " "later.)" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1170 msgid "" "Therefore, you must define an Edebug specification for each macro that " "Edebug will encounter, to explain the format of calls to that macro. To do " "this, add a @code{debug} declaration to the macro definition. Here is a " "simple example that shows the specification for the @code{for} example macro " "(@pxref{Argument Evaluation})." msgstr "" #. type: smallexample #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1177 #, no-wrap msgid "" "(defmacro for (var from init to final do &rest body)\n" " \"Execute a simple \\\"for\\\" loop.\n" "For example, (for i from 1 to 10 do (print i)).\"\n" " (declare (debug (symbolp \"from\" form \"to\" form \"do\" &rest form)))\n" " ...)\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1185 msgid "" "The Edebug specification says which parts of a call to the macro are forms " "to be evaluated. For simple macros, the specification often looks very " "similar to the formal argument list of the macro definition, but " "specifications are much more general than macro arguments. @xref{Defining " "Macros}, for more explanation of the @code{declare} form." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1197 msgid "" "Take care to ensure that the specifications are known to Edebug when you " "instrument code. If you are instrumenting a function which uses a macro " "defined in another file, you may first need to either evaluate the " "@code{require} forms in the file containing your function, or explicitly " "load the file containing the macro. If the definition of a macro is wrapped " "by @code{eval-when-compile}, you may need to evaluate it." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1203 msgid "" "You can also define an edebug specification for a macro separately from the " "macro definition with @code{def-edebug-spec}. Adding @code{debug} " "declarations is preferred, and more convenient, for macro definitions in " "Lisp, but @code{def-edebug-spec} makes it possible to define Edebug " "specifications for special forms implemented in C." msgstr "" #. type: defmac #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1204 #, no-wrap msgid "def-edebug-spec macro specification" msgstr "" #. type: defmac #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1208 msgid "" "Specify which expressions of a call to macro @var{macro} are forms to be " "evaluated. @var{specification} should be the Edebug specification. Neither " "argument is evaluated." msgstr "" #. type: defmac #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1211 msgid "The @var{macro} argument can actually be any symbol, not just a macro name." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1215 msgid "" "Here is a table of the possibilities for @var{specification} and how each " "directs processing of arguments." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1220 msgid "" "All arguments are instrumented for evaluation. This is short for " "@code{(body)}." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1221 #, no-wrap msgid "a symbol" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1225 msgid "" "The symbol must have an Edebug specification, which is used instead. This " "indirection is repeated until another kind of specification is found. This " "allows you to inherit the specification from another macro." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1226 #, no-wrap msgid "a list" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1230 msgid "" "The elements of the list describe the types of the arguments of a calling " "form. The possible elements of a specification list are described in the " "following sections." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1235 msgid "" "If a macro has no Edebug specification, neither through a @code{debug} " "declaration nor through a @code{def-edebug-spec} call, the variable " "@code{edebug-eval-macro-args} comes into play." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1236 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1639 #, no-wrap msgid "edebug-eval-macro-args" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1241 msgid "" "This controls the way Edebug treats macro arguments with no explicit Edebug " "specification. If it is @code{nil} (the default), none of the arguments is " "instrumented for evaluation. Otherwise, all arguments are instrumented." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1246 #, no-wrap msgid "Edebug specification list" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1253 msgid "" "A @dfn{specification list} is required for an Edebug specification if some " "arguments of a macro call are evaluated while others are not. Some elements " "in a specification list match one or more arguments, but others modify the " "processing of all following elements. The latter, called @dfn{specification " "keywords}, are symbols beginning with @samp{&} (such as @code{&optional})." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1259 msgid "" "A specification list may contain sublists, which match arguments that are " "themselves lists, or it may contain vectors used for grouping. Sublists and " "groups thus subdivide the specification list into a hierarchy of levels. " "Specification keywords apply only to the remainder of the sublist or group " "they are contained in." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1263 msgid "" "When a specification list involves alternatives or repetition, matching it " "against an actual macro call may require backtracking. For more details, " "@pxref{Backtracking}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1268 msgid "" "Edebug specifications provide the power of regular expression matching, plus " "some context-free grammar constructs: the matching of sublists with balanced " "parentheses, recursive processing of forms, and recursion via indirect " "specifications." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1272 msgid "" "Here's a table of the possible elements of a specification list, with their " "meanings (see @ref{Specification Examples}, for the referenced examples):" msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1274 #, no-wrap msgid "sexp" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1277 msgid "A single unevaluated Lisp object, which is not instrumented." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1278 #, no-wrap msgid "form" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1282 msgid "" "A single evaluated expression, which is instrumented. If your macro wraps " "the expression with @code{lambda} before it is evaluated, use " "@code{def-form} instead. See @code{def-form} below." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1283 #, no-wrap msgid "place" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1285 msgid "A generalized variable. @xref{Generalized Variables}." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1286 #, no-wrap msgid "body" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1290 msgid "" "Short for @code{&rest form}. See @code{&rest} below. If your macro wraps " "its body of code with @code{lambda} before it is evaluated, use " "@code{def-body} instead. See @code{def-body} below." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1291 #, no-wrap msgid "lambda-expr" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1293 msgid "A lambda expression with no quoting." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1294 #, no-wrap msgid "&optional" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1298 msgid "" "All following elements in the specification list are optional; as soon as " "one does not match, Edebug stops matching at this level." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1303 msgid "" "To make just a few elements optional, followed by non-optional elements, use " "@code{[&optional @var{specs}@dots{}]}. To specify that several elements " "must all match or none, use @code{&optional [@var{specs}@dots{}]}. See the " "@code{defun} example." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1304 #, no-wrap msgid "&rest" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1310 msgid "" "All following elements in the specification list are repeated zero or more " "times. In the last repetition, however, it is not a problem if the " "expression runs out before matching all of the elements of the specification " "list." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1314 msgid "" "To repeat only a few elements, use @code{[&rest @var{specs}@dots{}]}. To " "specify several elements that must all match on every repetition, use " "@code{&rest [@var{specs}@dots{}]}." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1315 #, no-wrap msgid "&or" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1320 msgid "" "Each of the following elements in the specification list is an alternative. " "One of the alternatives must match, or the @code{&or} specification fails." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1324 msgid "" "Each list element following @code{&or} is a single alternative. To group " "two or more list elements as a single alternative, enclose them in " "@code{[@dots{}]}." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1325 #, no-wrap msgid "¬" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1331 msgid "" "Each of the following elements is matched as alternatives as if by using " "@code{&or}, but if any of them match, the specification fails. If none of " "them match, nothing is matched, but the @code{¬} specification succeeds." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1334 #, no-wrap msgid "&define" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1340 msgid "" "Indicates that the specification is for a defining form. Edebug's " "definition of a defining form is a form containing one or more code forms " "which are saved and executed later, after the execution of the defining " "form." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1345 msgid "" "The defining form itself is not instrumented (that is, Edebug does not stop " "before and after the defining form), but forms inside it typically will be " "instrumented. The @code{&define} keyword should be the first element in a " "list specification." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1346 #, no-wrap msgid "nil" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1350 msgid "" "This is successful when there are no more arguments to match at the current " "argument list level; otherwise it fails. See sublist specifications and the " "backquote example." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1351 #, no-wrap msgid "gate" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1352 #, no-wrap msgid "preventing backtracking" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1357 msgid "" "No argument is matched but backtracking through the gate is disabled while " "matching the remainder of the specifications at this level. This is " "primarily used to generate more specific syntax error messages. See " "@ref{Backtracking}, for more details. Also see the @code{let} example." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1358 #, no-wrap msgid "&error" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1362 msgid "" "@code{&error} should be followed by a string, an error message, in the " "edebug-spec; it aborts the instrumentation, displaying the message in the " "minibuffer." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1363 #, no-wrap msgid "&interpose" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1377 msgid "" "Lets a function control the parsing of the remaining code. It takes the " "form @code{&interpose @var{spec} @var{fun} @var{args...}} and means that " "Edebug will first match @var{spec} against the code and then call @var{fun} " "with the code that matched @code{spec}, a parsing function @var{pf}, and " "finally @var{args...}. The parsing function expects a single argument " "indicating the specification list to use to parse the remaining code. It " "should be called exactly once and returns the instrumented code that " "@var{fun} is expected to return. For example @code{(&interpose symbolp " "pcase--match-pat-args)} matches sexps whose first element is a symbol and " "then lets @code{pcase--match-pat-args} lookup the specs associated with that " "head symbol according to @code{pcase--match-pat-args} and pass them to the " "@var{pf} it received as argument." msgstr "" #. type: var{#1} #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1378 #, no-wrap msgid "other-symbol" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1379 #, no-wrap msgid "indirect specifications" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1382 msgid "" "Any other symbol in a specification list may be a predicate or an indirect " "specification." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1388 msgid "" "If the symbol has an Edebug specification, this @dfn{indirect specification} " "should be either a list specification that is used in place of the symbol, " "or a function that is called to process the arguments. The specification " "may be defined with @code{def-edebug-elem-spec}:" msgstr "" #. type: defun #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1389 #, no-wrap msgid "def-edebug-elem-spec element specification" msgstr "" #. type: defun #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1392 msgid "" "Define the @var{specification} to use in place of the symbol @var{element}. " "@var{specification} has to be a list." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1397 msgid "" "Otherwise, the symbol should be a predicate. The predicate is called with " "the argument, and if the predicate returns @code{nil}, the specification " "fails and the argument is not instrumented." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1400 msgid "" "Some suitable predicates include @code{symbolp}, @code{integerp}, " "@code{stringp}, @code{vectorp}, and @code{atom}." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1401 #, no-wrap msgid "[@var{elements}@dots{}]" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1402 #, no-wrap msgid "[@dots{}] (Edebug)" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1405 msgid "" "A vector of elements groups the elements into a single @dfn{group " "specification}. Its meaning has nothing to do with vectors." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1406 #, no-wrap msgid "\"@var{string}\"" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1410 msgid "" "The argument should be a symbol named @var{string}. This specification is " "equivalent to the quoted symbol, @code{'@var{symbol}}, where the name of " "@var{symbol} is the @var{string}, but the string form is preferred." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1411 #, no-wrap msgid "(vector @var{elements}@dots{})" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1414 msgid "" "The argument should be a vector whose elements must match the @var{elements} " "in the specification. See the backquote example." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1415 #, no-wrap msgid "(@var{elements}@dots{})" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1418 msgid "" "Any other list is a @dfn{sublist specification} and the argument must be a " "list whose elements match the specification @var{elements}." msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1419 #, no-wrap msgid "dotted lists (Edebug)" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1428 msgid "" "A sublist specification may be a dotted list and the corresponding list " "argument may then be a dotted list. Alternatively, the last @sc{cdr} of a " "dotted list specification may be another sublist specification (via a " "grouping or an indirect specification, e.g., @code{(spec . [(more " "specs@dots{})])}) whose elements match the non-dotted list arguments. This " "is useful in recursive specifications such as in the backquote example. " "Also see the description of a @code{nil} specification above for terminating " "such recursion." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1433 msgid "" "Note that a sublist specification written as @code{(specs . nil)} is " "equivalent to @code{(specs)}, and @code{(specs . " "(sublist-elements@dots{}))} is equivalent to @code{(specs " "sublist-elements@dots{})}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1439 msgid "" "Here is a list of additional specifications that may appear only after " "@code{&define}. See the @code{defun} example." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1441 #, no-wrap msgid "&name" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1450 msgid "" "Extracts the name of the current defining form from the code. It takes the " "form @code{&name [@var{prestring}] @var{spec} [@var{poststring}] @var{fun} " "@var{args...}} and means that Edebug will match @var{spec} against the code " "and then call @var{fun} with the concatenation of the current name, " "@var{args...}, @var{prestring}, the code that matched @code{spec}, and " "@var{poststring}. If @var{fun} is absent, it defaults to a function that " "concatenates the arguments (with an @code{@@} between the previous name and " "the new)." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1451 #, no-wrap msgid "name" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1454 msgid "" "The argument, a symbol, is the name of the defining form. Shorthand for " "@code{[&name symbolp]}." msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1457 msgid "" "A defining form is not required to have a name field; and it may have " "multiple name fields." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1458 #, no-wrap msgid "arg" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1462 msgid "" "The argument, a symbol, is the name of an argument of the defining form. " "However, lambda-list keywords (symbols starting with @samp{&}) are not " "allowed." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1463 #, no-wrap msgid "lambda-list" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1464 #, no-wrap msgid "lambda-list (Edebug)" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1466 msgid "This matches a lambda list---the argument list of a lambda expression." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1467 #, no-wrap msgid "def-body" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1473 msgid "" "The argument is the body of code in a definition. This is like @code{body}, " "described above, but a definition body must be instrumented with a different " "Edebug call that looks up information associated with the definition. Use " "@code{def-body} for the highest level list of forms within the definition." msgstr "" #. type: item #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1474 #, no-wrap msgid "def-form" msgstr "" #. type: table #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1480 msgid "" "The argument is a single, highest-level form in a definition. This is like " "@code{def-body}, except it is used to match a single form rather than a list " "of forms. As a special case, @code{def-form} also means that tracing " "information is not output when the form is executed. See the " "@code{interactive} example." msgstr "" #. type: subsubsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1483 #, no-wrap msgid "Backtracking in Specifications" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1485 #, no-wrap msgid "backtracking" msgstr "" #. type: cindex #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1486 #, no-wrap msgid "syntax error (Edebug)" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1493 msgid "" "If a specification fails to match at some point, this does not necessarily " "mean a syntax error will be signaled; instead, @dfn{backtracking} will take " "place until all alternatives have been exhausted. Eventually every element " "of the argument list must be matched by some element in the specification, " "and every required element in the specification must match some argument." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1504 msgid "" "When a syntax error is detected, it might not be reported until much later, " "after higher-level alternatives have been exhausted, and with the point " "positioned further from the real error. But if backtracking is disabled " "when an error occurs, it can be reported immediately. Note that " "backtracking is also reenabled automatically in several situations; when a " "new alternative is established by @code{&optional}, @code{&rest}, or " "@code{&or}, or at the start of processing a sublist, group, or indirect " "specification. The effect of enabling or disabling backtracking is limited " "to the remainder of the level currently being processed and lower levels." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1509 msgid "" "Backtracking is disabled while matching any of the form specifications (that " "is, @code{form}, @code{body}, @code{def-form}, and @code{def-body}). These " "specifications will match any form so any error must be in the form itself " "rather than at a higher level." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1516 msgid "" "Backtracking is also disabled after successfully matching a quoted symbol, " "string specification, or @code{&define} keyword, since this usually " "indicates a recognized construct. But if you have a set of alternative " "constructs that all begin with the same symbol, you can usually work around " "this constraint by factoring the symbol out of the alternatives, e.g., " "@code{[\"foo\" &or [first case] [second case] ...]}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1522 msgid "" "Most needs are satisfied by these two ways that backtracking is " "automatically disabled, but occasionally it is useful to explicitly disable " "backtracking by using the @code{gate} specification. This is useful when " "you know that no higher alternatives could apply. See the example of the " "@code{let} specification." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1528 msgid "" "It may be easier to understand Edebug specifications by studying the " "examples provided here." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1534 msgid "" "Consider a hypothetical macro @code{my-test-generator} that runs tests on " "supplied lists of data. Although it is Edebug's default behavior to not " "instrument arguments as code, as controlled by @code{edebug-eval-macro-args} " "(@pxref{Instrumenting Macro Calls}), it can be useful to explicitly document " "that the arguments are data:" msgstr "" #. type: example #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1537 #, no-wrap msgid "(def-edebug-spec my-test-generator (&rest sexp))\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1543 msgid "" "A @code{let} special form has a sequence of bindings and a body. Each of " "the bindings is either a symbol or a sublist with a symbol and optional " "expression. In the specification below, notice the @code{gate} inside of " "the sublist to prevent backtracking once a sublist is found." msgstr "" #. type: example #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1558 #, no-wrap msgid "" "(def-edebug-spec let\n" " ((&rest\n" " &or symbolp (gate symbolp &optional form))\n" " body))\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1566 msgid "" "Edebug uses the following specifications for @code{defun} and the associated " "argument list and @code{interactive} specifications. It is necessary to " "handle interactive forms specially since an expression argument is actually " "evaluated outside of the function body. (The specification for " "@code{defmacro} is very similar to that for @code{defun}, but allows for the " "@code{declare} statement.)" msgstr "" #. type: smallexample #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1573 #, no-wrap msgid "" "(def-edebug-spec defun\n" " (&define name lambda-list\n" " [&optional stringp] ; @r{Match the doc string, if present.}\n" " [&optional (\"interactive\" interactive)]\n" " def-body))\n" "\n" msgstr "" #. type: smallexample #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1579 #, no-wrap msgid "" "(def-edebug-elem-spec 'lambda-list\n" " '(([&rest arg]\n" " [&optional [\"&optional\" arg &rest arg]]\n" " &optional [\"&rest\" arg]\n" " )))\n" "\n" msgstr "" #. type: smallexample #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1582 #, no-wrap msgid "" "(def-edebug-elem-spec 'interactive\n" " '(&optional &or stringp def-form)) ; @r{Notice: @code{def-form}}\n" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1590 msgid "" "The specification for backquote below illustrates how to match dotted lists " "and use @code{nil} to terminate recursion. It also illustrates how " "components of a vector may be matched. (The actual specification defined by " "Edebug is a little different, and does not support dotted lists because " "doing so causes very deep recursion that could fail.)" msgstr "" #. type: smallexample #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1593 #, no-wrap msgid "" "(def-edebug-spec \\` (backquote-form)) ; @r{Alias just for clarity.}\n" "\n" msgstr "" #. type: smallexample #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1599 #, no-wrap msgid "" "(def-edebug-elem-spec 'backquote-form\n" " '(&or ([&or \",\" \",@@\"] &or (\"quote\" backquote-form) form)\n" " (backquote-form . [&or nil backquote-form])\n" " (vector &rest backquote-form)\n" " sexp))\n" msgstr "" #. type: subsection #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1602 #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1603 #, no-wrap msgid "Edebug Options" msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1609 msgid "These options affect the behavior of Edebug:" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1610 #, no-wrap msgid "edebug-setup-hook" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1617 msgid "" "Functions to call before Edebug is used. Each time it is set to a new " "value, Edebug will call those functions once and then reset " "@code{edebug-setup-hook} to @code{nil}. You could use this to load up " "Edebug specifications associated with a package you are using, but only when " "you also use Edebug. @xref{Instrumenting}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1619 #, no-wrap msgid "edebug-all-defs" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1624 msgid "" "If this is non-@code{nil}, normal evaluation of defining forms such as " "@code{defun} and @code{defmacro} instruments them for Edebug. This applies " "to @code{eval-defun}, @code{eval-region}, @code{eval-buffer}, and " "@code{eval-current-buffer}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1627 msgid "" "Use the command @kbd{M-x edebug-all-defs} to toggle the value of this " "option. @xref{Instrumenting}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1629 #, no-wrap msgid "edebug-all-forms" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1634 msgid "" "If this is non-@code{nil}, the commands @code{eval-defun}, " "@code{eval-region}, @code{eval-buffer}, and @code{eval-current-buffer} " "instrument all forms, even those that don't define anything. This doesn't " "apply to loading or evaluations in the minibuffer." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1637 msgid "" "Use the command @kbd{M-x edebug-all-forms} to toggle the value of this " "option. @xref{Instrumenting}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1645 msgid "" "When this is non-@code{nil}, all macro arguments will be instrumented in the " "generated code. For any macro, the @code{debug} declaration overrides this " "option. So to specify exceptions for macros that have some arguments " "evaluated and some not, use the @code{debug} declaration specify an Edebug " "form specification." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1647 #, no-wrap msgid "edebug-save-windows" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1652 msgid "" "If this is non-@code{nil}, Edebug saves and restores the window " "configuration. That takes some time, so if your program does not care what " "happens to the window configurations, it is better to set this variable to " "@code{nil}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1655 msgid "If the value is a list, only the listed windows are saved and restored." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1658 msgid "" "You can use the @kbd{W} command in Edebug to change this variable " "interactively. @xref{Edebug Display Update}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1660 #, no-wrap msgid "edebug-save-displayed-buffer-points" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1663 msgid "" "If this is non-@code{nil}, Edebug saves and restores point in all displayed " "buffers." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1668 msgid "" "Saving and restoring point in other buffers is necessary if you are " "debugging code that changes the point of a buffer that is displayed in a " "non-selected window. If Edebug or the user then selects the window, point " "in that buffer will move to the window's value of point." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1672 msgid "" "Saving and restoring point in all buffers is expensive, since it requires " "selecting each window twice, so enable this only if you need it. " "@xref{Edebug Display Update}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1674 #, no-wrap msgid "edebug-initial-mode" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1679 msgid "" "If this variable is non-@code{nil}, it specifies the initial execution mode " "for Edebug when it is first activated. Possible values are @code{step}, " "@code{next}, @code{go}, @code{Go-nonstop}, @code{trace}, @code{Trace-fast}, " "@code{continue}, and @code{Continue-fast}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1683 msgid "" "The default value is @code{step}. This variable can be set interactively " "with @kbd{C-x C-a C-m} (@code{edebug-set-initial-mode}). @xref{Edebug " "Execution Modes}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1685 #, no-wrap msgid "edebug-trace" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1689 msgid "" "If this is non-@code{nil}, trace each function entry and exit. Tracing " "output is displayed in a buffer named @file{*edebug-trace*}, one function " "entry or exit per line, indented by the recursion level." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1691 msgid "Also see @code{edebug-tracing}, in @ref{Trace Buffer}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1693 #, no-wrap msgid "edebug-test-coverage" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1696 msgid "" "If non-@code{nil}, Edebug tests coverage of all expressions debugged. " "@xref{Coverage Testing}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1698 #, no-wrap msgid "edebug-continue-kbd-macro" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1703 msgid "" "If non-@code{nil}, continue defining or executing any keyboard macro that is " "executing outside of Edebug. Use this with caution since it is not " "debugged. @xref{Edebug Execution Modes}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1708 msgid "" "If non-@code{nil}, the default value of @code{print-length} for printing " "results in Edebug. @xref{Output Variables}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1713 msgid "" "If non-@code{nil}, the default value of @code{print-level} for printing " "results in Edebug. @xref{Output Variables}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1718 msgid "" "If non-@code{nil}, the default value of @code{print-circle} for printing " "results in Edebug. @xref{Output Variables}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1720 #, no-wrap msgid "edebug-unwrap-results" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1727 msgid "" "If non-@code{nil}, Edebug tries to remove any of its own instrumentation " "when showing the results of expressions. This is relevant when debugging " "macros where the results of expressions are themselves instrumented " "expressions. As a very artificial example, suppose that the example " "function @code{fac} has been instrumented, and consider a macro of the form:" msgstr "" #. type: smallexample #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1733 #, no-wrap msgid "" "(defmacro test () \"Edebug example.\"\n" " (if (symbol-function 'fac)\n" " @dots{}))\n" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1741 msgid "" "If you instrument the @code{test} macro and step through it, then by default " "the result of the @code{symbol-function} call has numerous " "@code{edebug-after} and @code{edebug-before} forms, which can make it " "difficult to see the actual result. If @code{edebug-unwrap-results} is " "non-@code{nil}, Edebug tries to remove these forms from the result." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1743 #, no-wrap msgid "edebug-on-error" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1747 msgid "" "Edebug binds @code{debug-on-error} to this value, if @code{debug-on-error} " "was previously @code{nil}. @xref{Trapping Errors}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1749 #, no-wrap msgid "edebug-on-quit" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1753 msgid "" "Edebug binds @code{debug-on-quit} to this value, if @code{debug-on-quit} was " "previously @code{nil}. @xref{Trapping Errors}." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1760 msgid "" "If you change the values of @code{edebug-on-error} or @code{edebug-on-quit} " "while Edebug is active, their values won't be used until the @emph{next} " "time Edebug is invoked via a new command." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1761 #, no-wrap msgid "edebug-global-break-condition" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1765 msgid "" "If non-@code{nil}, an expression to test for at every stop point. If the " "result is non-@code{nil}, then break. Errors are ignored. @xref{Global " "Break Condition}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1770 msgid "" "Number of seconds to pause when a breakpoint is reached and the execution " "mode is trace or continue. @xref{Edebug Execution Modes}." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1772 #, no-wrap msgid "edebug-sit-on-break" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1776 msgid "" "Whether or not to pause for @code{edebug-sit-for-seconds} on reaching a " "breakpoint. Set to @code{nil} to prevent the pause, non-@code{nil} to allow " "it." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1778 #, no-wrap msgid "edebug-behavior-alist" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1784 msgid "" "By default, this alist contains one entry with the key @code{edebug} and a " "list of three functions, which are the default implementations of the " "functions inserted in instrumented code: @code{edebug-enter}, " "@code{edebug-before} and @code{edebug-after}. To change Edebug's behavior " "globally, modify the default entry." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1790 msgid "" "Edebug's behavior may also be changed on a per-definition basis by adding an " "entry to this alist, with a key of your choice and three functions. Then " "set the @code{edebug-behavior} symbol property of an instrumented definition " "to the key of the new entry, and Edebug will call the new functions in place " "of its own for that definition." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1792 #, no-wrap msgid "edebug-new-definition-function" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1799 msgid "" "A function run by Edebug after it wraps the body of a definition or " "closure. After Edebug has initialized its own data, this function is called " "with one argument, the symbol associated with the definition, which may be " "the actual symbol defined or one generated by Edebug. This function may be " "used to set the @code{edebug-behavior} symbol property of each definition " "instrumented by Edebug." msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1801 #, no-wrap msgid "edebug-after-instrumentation-function" msgstr "" #. type: defopt #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs - #: Sources/doc/lispref/edebug.texi:1806 msgid "" "To inspect or modify Edebug's instrumentation before it is used, set this " "variable to a function which takes one argument, an instrumented top-level " "form, and returns either the same or a replacement form, which Edebug will " "then use as the final result of instrumentation." msgstr ""