Warm tip: This article is reproduced from serverfault.com, please click
vim

vim-如何从寄存器输入多行命令?

(vim - How to enter multiple lines of commands from a register?)

发布于 2020-12-02 00:34:34

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

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

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

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

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

Questioner
dannyadam
Viewed
0
filbranden 2020-12-02 09:14:03

你可以用来:@"将默认寄存器的内容作为Ex命令运行。

请参阅:help :@