comparison man/lispref/searching.texi @ 4905:755ae5b97edb

Change "special form" to "special operator" in our sources. Add a compatible function alias, and the relevant manual index entries. src/ChangeLog addition: 2010-01-31 Aidan Kehoe <kehoea@parhasard.net> * symbols.c (Fspecial_operator_p, syms_of_symbols): * eval.c (print_subr, Finteractive_p, Ffuncall) (Ffunction_min_args, Ffunction_max_args, vars_of_eval): * editfns.c: * data.c (Fsubr_max_args): * doc.c (Fbuilt_in_symbol_file): Change "special form" to "special operator" in our sources. man/ChangeLog addition: 2010-01-31 Aidan Kehoe <kehoea@parhasard.net> * xemacs/programs.texi (Defuns): * lispref/variables.texi (Local Variables, Defining Variables) (Setting Variables, Default Value): * lispref/symbols.texi (Definitions): * lispref/searching.texi (Saving Match Data): * lispref/positions.texi (Excursions, Narrowing): * lispref/objects.texi (Primitive Function Type): * lispref/macros.texi (Defining Macros, Backquote): * lispref/lispref.texi (Top): * lispref/intro.texi (A Sample Function Description): * lispref/help.texi (Help Functions): * lispref/functions.texi (What Is a Function, Simple Lambda) (Defining Functions, Calling Functions, Anonymous Functions): * lispref/frames.texi (Input Focus): * lispref/eval.texi (Forms, Function Indirection) (Special Operators, Quoting): * lispref/edebug-inc.texi (Instrumenting) (Specification Examples): * lispref/debugging.texi (Internals of Debugger): * lispref/control.texi (Control Structures, Sequencing): (Conditionals, Combining Conditions, Iteration): (Catch and Throw, Handling Errors): * lispref/commands.texi (Defining Commands, Using Interactive): Terminology change; special operator -> special form. Don't attempt to change this in texinfo.texi or cl.texi, which use macros I don't understand. * lispref/macros.texi (Defining Macros): Give an anonymous macro example here. * lispref/positions.texi (Excursions): Correct some documentation that called a couple of macros special forms. * lispref/searching.texi (Saving Match Data): Drop some documentation of how to write code that works with Emacs 18. * lispref/specifiers.texi (Adding Specifications): Correct this; #'let-specifier is a macro, not a special operator. * lispref/windows.texi (Window Configurations) (Selecting Windows): Correct this, #'save-selected-window and #'save-window-excursion are macros, not special operators. lisp/ChangeLog addition: 2010-01-31 Aidan Kehoe <kehoea@parhasard.net> * obsolete.el: * loadhist.el (symbol-file): * help.el (describe-function-1): * bytecomp.el: (byte-compile-save-current-buffer): * byte-optimize.el (byte-optimize-form-code-walker): * subr.el (subr-arity): Change "special form" to "special operator" in these files, it's the more logical term. * subr.el (special-form-p): Provide this alias for #'special-operator-p.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 31 Jan 2010 20:28:01 +0000
parents 6772ce4d982b
children 62b9ef1ed4ac
comparison
equal deleted inserted replaced
4904:e91e3e353805 4905:755ae5b97edb
1457 @end example 1457 @end example
1458 1458
1459 You can save and restore the match data with @code{save-match-data}: 1459 You can save and restore the match data with @code{save-match-data}:
1460 1460
1461 @defspec save-match-data body@dots{} 1461 @defspec save-match-data body@dots{}
1462 This special form executes @var{body}, saving and restoring the match 1462 This special operator executes @var{body}, saving and restoring the match
1463 data around it. 1463 data around it.
1464 @end defspec 1464 @end defspec
1465
1466 You can use @code{set-match-data} together with @code{match-data} to
1467 imitate the effect of the special form @code{save-match-data}. This is
1468 useful for writing code that can run in Emacs 18. Here is how:
1469
1470 @example
1471 @group
1472 (let ((data (match-data)))
1473 (unwind-protect
1474 @dots{} ; @r{May change the original match data.}
1475 (set-match-data data)))
1476 @end group
1477 @end example
1478 1465
1479 Emacs automatically saves and restores the match data when it runs 1466 Emacs automatically saves and restores the match data when it runs
1480 process filter functions (@pxref{Filter Functions}) and process 1467 process filter functions (@pxref{Filter Functions}) and process
1481 sentinels (@pxref{Sentinels}). 1468 sentinels (@pxref{Sentinels}).
1482 1469