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]