如何异步保存vim远程文件?

Hot*_*hke 6 vim asynchronous netrw

使用编辑远程文件

 vim scp://remote/file
Run Code Online (Sandbox Code Playgroud)

使用:w块保存文件,编辑器直到文件更改保存到远程.

我试图使用:Dispatch :write以避免被阻止,但这不起作用(使用tmux或iterm策略).:Dispatch由插件vim-dispatch提供.

相关的互联网搜索结果表明:

解决方案很有帮助,但需要设置vcs,配置文件等.

我更喜欢

  • 在当地工作
  • 没有为每个文件配置(一次配置编辑器就可以了)
  • 并非每次写入都应该是提交.

保持ssh隧道开放并没有改善它.

更新 我想知道是否存在异步运行保存过程的解决方案.保存过程在这里,如netrw在命令行中显示,scp调用将临时文件复制到远程,这可能需要一些时间.我想同时回到我的编辑中,不要被阻止.我希望这会让我的问题更清晰.

tpope/dispatch的替代方案是: Shougo/vimproc,idbrii/AsyncCommand,我还没有尝试过.

Hot*_*hke 0

SSHFS:我的 sshfs 问题是 vim 插件lightline.vim使用fugitive.vim功能。

当您滚动(行号更改)时,状态行会经常更新,因此显示当前分支的临时函数始终会被评估。

这大大减慢了滚动速度。从状态栏中删除逃亡状态缓解了速度放缓的情况。

还有另一个插件https://github.com/seletskiy/vim-refugi报告说

git 通过 sshfs 慢得要命

我还为逃犯安装了这个插件并应用了他们的提示

由于此脚本使用 ssh 多路复用,因此最好将 ssh 配置为自动打开主连接。

例如,您需要在 ~/.ssh/config 中添加以下内容:

host *
    controlmaster auto
    controlpath   ~/.ssh/connections/%r_%h_%p
Run Code Online (Sandbox Code Playgroud)