如何在VIM中以leader键开头的重新映射命令?

3
我已经编写了一个宏,将单词apple格式化为.apple(apple)的形式,并将该宏保存以便通过组合键<leader>z调用。以下是映射该宏的命令: nnoremap <leader>z 0yiwI.<esc>a(<esc>hpA),<esc>j0。 问题在于,当我输入数字并跟随<leader>z时,期望命令被重复执行相应的次数,但实际上光标会向下移动10行,即仅仅执行部分操作。请问如何修复这个问题,使我能够正确地输入要重复执行的次数?注意:我已将leader键映射到空格上。

就此而言,它们是“映射”,而不是“重新映射”。 - romainl
将您的宏存储在一个寄存器中,比如寄存器z,并使用“10@z”执行它10次。 - romainl
我每天都使用宏,我认为将其存储起来以避免每次使用VIM时都重新创建它会是一个不错的补充。 - Ramy Osama
1个回答

3
如果您想一遍又一遍地使用那个宏,最轻松的方法是将其分配到您的vimrc寄存器中。
let @z = "0yiwI.\<esc>a(\<esc>hpA),\<esc>j0"

然后像这样使用:

@z
10@z

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接