Editing text files can often require repetitive actions, which can be slow and error-prone. Vim includes a powerful macro system that extends upon named registers introduced in the previous chapter.
So what is a macro? Interacting with Vim to perform a task involves typing a sequence of keys. Those keys can be concatenated together into a string, which defines the specific sequence of keys required to perform our task. This string can be stored in a named register, just like any string.
The difference between a macro and any other string is how that string is interpreted when retrieved from the register. When we execute a macro, Vim interprets the string in the specified register as a sequence of commands as if we were typing them.
Macros are quite powerful, and are useful for solving quick one-off editing tasks as well as for executing common tasks across multiple files.
One of the nice things about Vim macros is the ease with which they can be created, which is the topic of the next section.