一个更强大的点(重复)版本

时间:2013-05-23 19:46:01

标签: vim

我知道用q录制到寄存器中,但我想知道是否可以设置一些内容来快速调用最后一次录制,就像.回忆最后一次短编辑一样命令(有关.)的讨论,请参阅here

我知道@@,但只有在@z执行z后才能使用qz。 例如要进行录制,您必须输入q,继续执行您的操作@z,然后为了运行录制,您必须@@才能开始nnoremap , @q - 重复一遍。

我的黑客解决方案现在是绑定qq,它允许我使用q录制并以{{1}}结束录制。是否有更好的东西(例如,通过单次击键记录到特定寄存器中的东西,特定重复最后记录的宏的东西)?诚然,这不是一个巨大的进步,因为它已经非常优秀。

对我来说,一个易于使用的寄存器通常比需要更多工作的大量寄存器更有用。虽然这可能只是因为我很难记住事情并且没有看到自己有效地使用多个。

2 个答案:

答案 0 :(得分:2)

由于您希望对所有宏使用相同的寄存器并根据需要对其进行记录,因此您可以在_vimrc文件中设置并执行该寄存器,以便@@被“填充”。

在_vimrc文件中,添加:

let @z = ''
execute 'normal @z'

现在,只要您在注册z中录制宏,就可以立即使用@@执行。

答案 1 :(得分:0)

您可以尝试一些类似于您所要求的插件:

RepeatLast.vimrecord-repeat.vim

另一个选项可能是使用某个功能并将其与repeat.vim相关联。