有时我创建宏。有时我会多次创建相同的宏。

有时我会厌倦于再次创建相同的宏。我可以存储宏吗?我可以加载宏的预设吗?我可以制作一个宏并将其永久保存吗?

#1 楼

是的你可以!有两种方法可以做到这一点。默认情况下,所有寄存器将保存到您的viminfo文件中,并在启动vim后加载。这是最简单的方法。但是,这并非万无一失。如果您不小心记录/拖动每个寄存器,则会丢失它们。

保存特定宏的更好方法是将其放入您的.vimrc中。例如,假设您要将foo保存到宏a中。这可以通过在vimrc中使用

let @a='foo'


来实现。如果您已经制作了宏,则可以输入

ilet @a='<C-r><C-r>a'<esc>

以粘贴宏的当前内容,如果您不想再次输入全部内容。


感谢安德鲁·基顿指出<C-r><C-r>

评论


您可能需要使用 (两个,而不是一个)来按原样插入文本

–安德鲁·基顿(Andrew Keeton)
19年3月20日在16:51



@AndrewKeeton哦,进步很大。谢谢你让我知道

–詹姆斯
19年4月12日在16:38

如果您的宏包含特殊键序列,例如,则 将不起作用,“ ap没有此问题。

–dedowsdi
19年11月7日在6:08

请注意,您可以映射字符串,例如vimrc中的`nnoremap fo foo',以便您建立直接的键绑定。好处是您可以保持寄存器清洁。

– TamaMcGlinn
20-10-22在13:43