Show
Ignore:
Timestamp:
07/29/06 07:48:34 (2 years ago)
Author:
miyoshi
Message:

Sync up with Emacs CVS HEAD.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/lispref/control.texi

    r4111 r4131  
    222222the value of the @code{cond}.  The remaining clauses are ignored. 
    223223 
    224 If the value of @var{condition} is @code{nil}, the clause ``fails'', so 
     224If the value of @var{condition} is @code{nil}, the clause ``fails,'' so 
    225225the @code{cond} moves on to the following clause, trying its 
    226226@var{condition}. 
     
    624624 
    625625  One way to use @code{catch} and @code{throw} is to exit from a doubly 
    626 nested loop.  (In most languages, this would be done with a ``go to''.
     626nested loop.  (In most languages, this would be done with a ``go to.''
    627627Here we compute @code{(foo @var{i} @var{j})} for @var{i} and @var{j} 
    628628varying from 0 to 9: 
     
    784784 
    785785@defun signal error-symbol data 
     786This 
    786787@anchor{Definition of signal} 
    787 This function signals an error named by @var{error-symbol}.  The 
     788@c unfortunately, a page break is allowed if the anchor immediately 
     789@c follows the @defun, due to hard-to-fix TeXnicalities.   
     790function signals an error named by @var{error-symbol}.  The 
    788791argument @var{data} is a list of additional Lisp objects relevant to the 
    789792circumstances of the error. 
     
    847850have already been exited, and the handler cannot return to them. 
    848851 
    849 If there is no applicable handler for the error, the current command is 
    850 terminated and control returns to the editor command loop, because the 
    851 command loop has an implicit handler for all kinds of errors.  The 
     852If there is no applicable handler for the error, it terminates the 
     853current command and returns control to the editor command loop.  (The 
     854command loop has an implicit handler for all kinds of errors.)  The 
    852855command loop's handler uses the error symbol and associated data to 
    853 print an error message. 
     856print an error message.  You can use the variable 
     857@code{command-error-function} to control how this is done: 
     858 
     859@defvar command-error-function 
     860This variable, if non-@code{nil}, specifies a function to use to 
     861handle errors that return control to the Emacs command loop.  The 
     862function should take three arguments: @var{data}, a list of the same 
     863form that @code{condition-case} would bind to its variable; 
     864@var{context}, a string describing the situation in which the error 
     865occurred, or (more often) @code{nil}; and @code{caller}, the Lisp 
     866function which called the primitive that signaled the error. 
     867@end defvar 
    854868 
    855869@cindex @code{debug-on-error} use