我在vimscript中有一个自定义函数,它创建一个字符串,然后将它回显到底层控制台。目前,我使用cmd-c复制并粘贴该输出,将其复制到mac os x剪贴板。我想通过将回显管道传输到pbcopy来缩短这个工作流程,我试过了:
:echo "hello" <BAR> !pbcopy
但当然这不起作用。我也尝试将输出捕获到寄存器中然后输出:
:@a!pbcopy
但它只是尝试执行存储在@a中的字符串,这不是vim命令。我觉得这应该是直截了当的,谢谢。
答案 0 :(得分:6)
假设pbcopy
从stdin
获取其输入,您可以尝试使用system()
:call system('pbcopy', 'hello')
:call system('pbcopy', @a)
有关详细信息,请参阅
:h system()
答案 1 :(得分:2)
你使用什么版本的Vim?在任何合理的最新版本(通过Mac Ports / Homebrew或更好的MacVim安装)一个简单的
let @*="text"
会将text
放在剪贴板上。
请参阅:h clipboard
。