Go to the first, previous, next, last section, table of contents.


Recursive Editing

Recursive editing is the act of editing a file while the current command is still being evaluated. For example, when using the query-replace command (Meta-%) the Ctrl-r command enters a recursive edit to let you edit the buffer, even though you are still doing a query-replace (which will be resumed when the recursive edit finishes).

As the name suggests a recursive edit calls the editor's main command loop recursively from within a command. Any number of recursive edits may be stacked up and then unwound back to the top-level of the editor.

When a recursive edit is in progress the name of the mode being used to edit the buffer is shown in square brackets, not parentheses as in the top-level instance.

The commands for manipulating recursive edits are as follows,

Ctrl-]
Ctrl-Meta-c
Exit the innermost recursive edit, this has no effect at the top-level.
Meta-x top-level
Return to the outermost edit -- the top-level. This is useful when you get "lost" inside a sequence of recursive edits.
Meta-x recursive-edit
Enter a new recursive edit; this command is usually best avoided to save confusion.

In general, recursive editing is rarely used except in unavoidable circumstances (i.e. in the Lisp debugger).


Go to the first, previous, next, last section, table of contents.