Many simple commands, such as those invoked with a single key or with M-x command-name RET, can be repeated by invoking them with a numeric argument that serves as a repeat count (see Arguments). However, if the command you want to repeat prompts for input, or uses a numeric argument in another way, that method won’t work.
The command C-x z (repeat
) provides another way to repeat
an Emacs command many times. This command repeats the previous Emacs
command, whatever that was. Repeating a command uses the same arguments
that were used before; it does not read new arguments each time.
To repeat the command more than once, type additional z’s: each z repeats the command one more time. Repetition ends when you type a character other than z or press a mouse button.
For example, suppose you type C-u 2 0 C-d to delete 20 characters. You can repeat that command (including its argument) three additional times, to delete a total of 80 characters, by typing C-x z z z. The first C-x z repeats the command once, and each subsequent z repeats it once again.
Also you can activate repeat-mode
that temporarily enables a
transient mode with short keys after a limited number of commands.
Currently supported shorter key sequences are C-x u u instead of
C-x u C-x u to undo many changes, C-x o o instead of
C-x o C-x o to switch several windows, C-x { { } } ^ ^
v v to resize the selected window interactively, M-g n n p p to
navigate next-error
matches, and C-x ] ] [ [ to navigate
through pages. Any other key exits transient mode and then is
executed normally. The user option repeat-exit-key
defines an
additional key to exit this transient mode. Also it’s possible to
break the repetition chain automatically after some idle time by
customizing the user option repeat-exit-timeout
to specify the
idle time in seconds after which this transient mode will be turned
off.