我知道我可以錄製宏與q<char>
與@<char>
運行它們。我也知道,我可以@@
運行上次使用的宏。一鍵VIM宏/搜索和運行宏交互
但@@
是整整兩個按鍵!這太多了!特別是如果我運行這個宏很多次。我知道<num>@<char>
,但如果我不事先知道<num>
什麼?
我在找的東西,實際上就像是一個運行宏的交互式搜索和替換(請參閱Interactive search/replace regex in Vim?)。這可以做到嗎?
我知道我可以錄製宏與q<char>
與@<char>
運行它們。我也知道,我可以@@
運行上次使用的宏。一鍵VIM宏/搜索和運行宏交互
但@@
是整整兩個按鍵!這太多了!特別是如果我運行這個宏很多次。我知道<num>@<char>
,但如果我不事先知道<num>
什麼?
我在找的東西,實際上就像是一個運行宏的交互式搜索和替換(請參閱Interactive search/replace regex in Vim?)。這可以做到嗎?
應用宏在正常模式下一個按鍵:
:nnoremap , @a
然後,您可以使用「」當你要應用宏,或‘N’當你想跳到下一個搜索發生
要交互式應用宏搜索匹配:
我有這個在我~/.vimrc
:
" <[email protected]> Repeat last macro with a single key combination.
nnoremap <A-2> @@
所以,首先我重播像往常一樣與寄存器名,例如@a
。然後我重複與@@
。然後我意識到我需要幾個重複(但不能使用[count]
),所以我切換到替代 + @(@
在US-英語鍵盤佈局上的2
以上)。