Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
a, закончили запись нажатием q и поняли, что сделали ошибку, забыв в конце, например, переход на новую строку с помощью j, в этом случае, чтобы не переписывать макрос (иногда они получаются очень большими), можно нажать qA (регистр a заглавная буква) и дописать недостающие команды.j и затем указывать количество раз выполнения макроса, например, как в статье 100@a, можно выделить последовательность строк с помощью V, нажать : и затем в командном режиме вызвать макрос через normal. Команда будет выглядеть так :'<,'>normal @a. Плюс этого подхода в том, что макрос выполнится на всех строках, даже если какая-то строка могла нарушить ход выполнения последовательности макросов, при обычном подходе.a, а не переписывание регистра A? Какие условия должны быть выполнены, чтобы писать всё-таки в A?a и code>A — разные регистры, на самом деле один и тот же, а при использовании дозаписи нужно брать тот, который в верхнем регистре, работает это как с [y]ank, так и с записью [q].nore обладают таким нехорошим свойством, потому их у меня в vimrc практически нет (редко, но иногда мне всё же нужна именно зависимость от других привязок). А макросов так вообще — их слишком легко перезаписать — хотя использую я макросы часто.
Макросы в Vim — это просто