我不时想做的事情就是将vim命令的输出粘贴到缓冲区中.例如,当我正在编辑我的vimrc时,能够摆弄,statusline然后能够做类似于
"=set statusline?<Enter>p
Run Code Online (Sandbox Code Playgroud)
问题是,产量
E121: Undefined variable: set
E15: Invalid expression: set statusline?
Press ENTER or type command to continue
Run Code Online (Sandbox Code Playgroud)
我认为这是可能的,而且我对内置函数以及如何使用它们不够了解(我看到expand在这里和那里使用过,但在任何情况下都没有成功地使它适用于我),即使我(认为我)对正常模式有相当深刻的理解.
请注意,这个具体的例子有点人为,但我现在想不出更好的一个.对于上面的具体用例,我可以只":p获得set我在实验中使用的整个命令,然后编辑以适应,但我经常遇到其他情况,我希望vim告诉我一些事情,然后我想粘贴输出在某个地方,我可以继续看待它,同时继续我的工作.
您可以粘贴选项设置:
"=&statusline<Enter>p
Run Code Online (Sandbox Code Playgroud)
但是,我不知道有什么方法可以将任意命令的输出放入缓冲区。