我知道我可以使用录制宏q<char>
并使用@<char>
. 我也知道我可以使用@@
.
而是@@
两个完整的击键!这太多了!特别是如果我多次运行该宏。我知道,但如果我事先<num>@<char>
不知道怎么办?<num>
实际上,我正在寻找的是类似于运行宏的交互式搜索和替换(请参阅Vim 中的交互式搜索/替换正则表达式? )。这可以做到吗?
我知道我可以使用录制宏q<char>
并使用@<char>
. 我也知道我可以使用@@
.
而是@@
两个完整的击键!这太多了!特别是如果我多次运行该宏。我知道,但如果我事先<num>@<char>
不知道怎么办?<num>
实际上,我正在寻找的是类似于运行宏的交互式搜索和替换(请参阅Vim 中的交互式搜索/替换正则表达式? )。这可以做到吗?
一键在正常模式下应用宏 a:
:nnoremap , @a
然后,当您想要应用宏时,可以使用“,”,或者当您想要跳到下一个搜索时使用“n”
以交互方式将宏应用于搜索匹配:
我有这个~/.vimrc
:
" <A-@> Repeat last macro with a single key combination.
nnoremap <A-2> @@
所以,首先我像往常一样使用寄存器名称重播,例如@a
。然后我重复@@
. 然后我意识到我需要更多的重复(但不能使用 a [count]
),所以我切换到Alt+ @(@
在2
美国英语键盘布局上)。