我正在寻找一种映射:w命令的方法,这样当我使用它时,它将rsync当前目录并保存有问题的文件.理想情况下,rsync命令生成的响应应该在vim中返回,但不能在当前文件中返回,而是作为工具提示或其他内容返回.
我设法在TextMate中实现了这一点,现在我正在寻求开始与Vim合作.我一直在尝试这样的事情:map w:w |!rsync.但这似乎不起作用(我是初学者:))
我很感激任何帮助.
谢谢,乔
你可以挂钩到BufWritePost.我不记得确切的语法,但" :he BufWritePost
"和" :he autocommand
"应该对你有帮助.
你设置了一个像这样的基本钩子(模式匹配文件,所以你可以做*.your_extension):
:au BufWritePost * !rsync
此外,应该有一些方法使其缓冲局部.
如果你想保留本地副本,那么viraptor建议的BufWritePost autocmd是最好的选择,但假设你安装了netrw插件(默认的Vim运行时文件的一部分),你也可以启动vim:
vim rsync://myrsync_server.com/path
并且只需将文件编辑为本地文件:save将更新远程服务器.
:help rsync