Поміркуйте:
apple
pear
Поставте курсор на перший рядок і введіть Yp, створюючи:
apple
apple
pear
Поставте курсор на pearрядок і введіть, .щоб повторити останню команду. Це повторює лише p(а не комбінацію Yp), створюючи:
apple
apple
pear
apple
Мені б хотілося сказати .повторити останні N команд. Щось на кшталт 2.повторення комбінації Ypдля отримання:
apple
apple
pear
pear
Ofc це не спрацює - повторюється pдвічі. Але ідеєю було б "повторити послідовність останніх двох команд".
Я знаю, що можу qзаписати послідовності команд і повторити їх @@, але це рішення не є ідеальним, оскільки вимагає, щоб ви планували все заздалегідь, тоді як на практиці ви часто не усвідомлюєте, що потрібно щось повторювати до після ти це зробив.
Чи є спосіб досягти того, що я хочу?
Приз за втіху: Якщо вищезазначене неможливо, чи є спосіб повторити останнє відтворення макросу? Наприклад, якщо я набрав @@для відтворення останнього макросу, я хотів би, щоб наступний .був еквівалентний @@повторному набору тексту - чого це не є (наприклад, якщо результат @@залежить від рядка, на якому ви перебуваєте)
nno <silent> @@ @@:sil! call repeat#set('@@', v:count1)<CR>Але щоб воно працювало, вам потрібно встановити цей плагін: github.com/tpope/vim-repeat