Previous: Command History, Up: Command Loop [Contents][Index]
A keyboard macro is a canned sequence of input events that can be considered a command and made the definition of a key. The Lisp representation of a keyboard macro is a string or vector containing the events. Don’t confuse keyboard macros with Lisp macros (see Macros).
This function executes macro as a sequence of events. If macro is a string or vector, then the events in it are executed exactly as if they had been input by the user. The sequence is not expected to be a single key sequence; normally a keyboard macro definition consists of several key sequences concatenated.
If macro is a symbol, then its function definition is used in place of macro. If that is another symbol, this process repeats. Eventually the result should be a string or vector. If the result is not a symbol, string, or vector, an error is signaled.
The argument count is a repeat count; macro is executed that
many times. If count is omitted or nil
, macro is
executed once. If it is 0, macro is executed over and over until it
encounters an error or a failing search.
This variable contains the string or vector that defines the keyboard
macro that is currently executing. It is nil
if no macro is
currently executing. A command can test this variable to behave
differently when run from an executing macro. Do not set this variable
yourself.
This variable indicates whether a keyboard macro is being defined. A
command can test this variable to behave differently while a macro is
being defined. The commands start-kbd-macro
and
end-kbd-macro
set this variable—do not set it yourself.
This variable is the definition of the most recently defined keyboard
macro. Its value is a string or vector, or nil
.
The commands are described in the user’s manual (see Keyboard Macros in The SXEmacs User’s Manual).
Previous: Command History, Up: Command Loop [Contents][Index]