2012-04-25 49 views
9

我想查看已经打开的GVim窗口中的命令输出。如何在使用--remote时向gvim发送命令?

要看看在新的GVim窗口中的命令的输出,我会做:

mycommand | gvim - 

要打开的文件的现有的窗口,我会做:

gvim --remote-silent myfile 

我如何一起使用它们? mycommand | gvim --remote-silent -确实不是工作(它认为-是当前目录中的文件)。

回答

2

尝试gvim --remote-silent <(mycommand)

0

假设你有gVim打开默认的服务器名GVIM运行,这里是在运行GVIM执行:echo 'It works!'命令:

vim --servername GVIM --remote-send ":echo 'It works!'<CR>" 

此命令将返回什么,它只是将“:echo 'It works!'<CR>”到服务器,并立即返回。

如果需要evalute表达式,得到的结果,你可以使用这个命令:

vim --servername GVIM --remote-expr "version" 

(版本号将返回)

vim --servername GVIM --remote-expr "2+2" 

( “4” 将被退回)

当然,您可以在Vim中声明自己的函数,并将其用作表达式,就像那样:

vim --servername GVIM --remote-expr "MyOwnFunction()" 
+0

有人downvoted。请解释一下,这里有什么问题。 – 2012-05-30 07:41:34