Vim --remote-expr示例

时间:2011-05-29 12:32:23

标签: vim

由于我的google-fu让我失望,任何人都可以给我一个关于如何使用--remote-expr或任何其他命令行技巧将文本插入当前缓冲区或设置cfile的简单示例。 (任何: - 命令会很好。)

--remote-expr E449: Invalid expression received的所有内容都是{{1}}。

2 个答案:

答案 0 :(得分:7)

:help E449引导您了解一个基本示例。不幸的是它有点太基础了:

remote_expr({server}, {string} [, {idvar}])
     

<强>示例:

:echo remote_expr("gvim", "2+2")
:echo remote_expr("gvim1", "b:current_syntax")

在命令行中,变为

 $ vim --servername "gvim" --remote-expr "2+2"
 4

要了解您可以使用表达式执行的操作,请参阅:help expr

命令Vim从命令行

插入文本

您最好使用--remote-send以与mapabbr s类似的方式发送密钥序列:

$ vim --servername Foo --remote-send "GoHello world! <ESC>"

将在活动窗口缓冲区的末尾附加一个新行。

答案 1 :(得分:0)

如果要执行命令,假设:ls,要获取缓冲区列表,可以这样做

vim --servername GVIM --remote-expr "execute(\"ls\")"

这将打印GVIM服务器中所有缓冲区的列表。请注意转义的引号。