如何解决Vim-远程表达式示例
| 既然我的google-fu让我失败了,谁能给我一个简单的示例,说明如何使用--remote-expr
或任何其他命令行技巧将文本插入当前缓冲区或设置cfile。 (任何:-command都会很好。)
我设法用--remote-expr
得到的所有东西都是E449: Invalid expression received
。
解决方法
: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
发送键序列的方式与使用map
或abbr
的方式类似:
$ vim --servername Foo --remote-send \"GoHello world! <ESC>\"
将在活动窗口的缓冲区末尾添加新行。
, 如果要执行命令,假设为:ls
,以获取缓冲区列表,则可以执行以下操作
vim --servername GVIM --remote-expr \"execute(\\\"ls\\\")\"
这将打印GVIM服务器中所有缓冲区的列表。请注意转义的引号。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。