Рассматривать:
apple
pear
Поместите курсор на первую строку и введите Yp
:
apple
apple
pear
Наведите курсор на pear
строку и введите, .
чтобы повторить последнюю команду. Это повторяет только p
(а не комбинацию Yp
), производя:
apple
apple
pear
apple
Я хотел бы сказать способ .
повторить последние N команд. Что-то вроде 2.
повторения комбинации Yp
для получения:
apple
apple
pear
pear
Конечно, это не сработает - оно повторяется p
дважды. Но идея заключается в том, чтобы «повторить последовательность последних 2 команд».
Я знаю, что могу q
записывать последовательности команд и повторять их @@
, но это решение не идеально, так как требует, чтобы вы все время планировали заранее, тогда как на практике вы часто не понимаете, что вам нужно что-то повторять до тех пор, пока ты сделал это
Есть ли способ добиться того, чего я хочу?
Утешительный приз: Если вышеперечисленное невозможно, можно ли повторить воспроизведение последнего макроса? Например, если я набрал текст @@
для воспроизведения моего последнего макроса, я бы хотел, чтобы последующий .
текст был эквивалентен @@
повторному вводу - чего не происходит (например, если результат @@
зависит от строки, на которой вы находитесь)
nno <silent> @@ @@:sil! call repeat#set('@@', v:count1)<CR>
Но чтобы оно работало, вам нужно установить этот плагин: github.com/tpope/vim-repeat