首页 > 解决方案 > 如何从寄存器中输入多行命令?

问题描述

如何从一个寄存器执行多行 Vim Ex 命令?例如,如果我复制一些我想尝试的映射,我如何在当前缓冲区中执行这些行,从我复制到的寄存器中?

nnoremap <leader>b :tab split<cr>
nnoremap <buffer> ...
...

我尝试使用:后跟<ctrl-r>"(假设这些行在未命名的寄存器中)以命令行模式粘贴这些行,然后点击<cr>. 粘贴的行似乎由 分隔^M,而不是换行符。该方法不起作用。

我也试过用q:打开命令行窗口,然后按<ctrl-r>",然后按回车键,但这只会执行当前行,而不是我粘贴的所有行。

我可以将这些行粘贴到一个文件中,然后获取该文件,但我正在寻找一种替代的、更直接的方法。

标签: vim

解决方案


您可以使用:@"Ex 命令来运行默认寄存器的内容。

:help :@


推荐阅读