我通常使用vim ssh到另一台计算机进行开发(请不要发布“使用Emacs”)。但是,我注意到当我的网络速度很慢时,vim非常慢(呃)。
编辑: 我在本地计算机上使用终端并使用vim scp:// host / file命令打开远程文件。但是,当我这样做时,我放入的每次按键都会导致vim进入网络,从而大大减慢了速度。相反,我希望vim读取远程文件,让我进行本地编辑,只有当我执行:w命令时才进入网络。可以把它想象成一个回写缓存选项。
我知道Komodo Edit提供了这个功能,这是我从中获得的想法。
答案 0 :(得分:6)
您可以直接在vim中编辑ssh,如下所示:
:e scp://remoteuser@server.tld//path/to/document
您可以在this serverfault question中找到更多信息。
答案 1 :(得分:1)
Vim有一个名为netrw的插件(我相信这是最近的vims的标准配置)。这基本上是你想要的:它允许你通过透明地复制它来打开远程服务器上的文件。
请参阅:help netrw
或The Vim Script page
答案 2 :(得分:1)
如果你打开vim scp:///并且它很慢,并且每次按键都有网络流量,那么肯定是错误的。 Vim只应在保存时生成网络流量。
也许你开启了自动保存?如果是 - 请关闭远程文件,或者至少减少干扰。
答案 3 :(得分:0)
我发现sshfs对此非常有用。它可以通过sftp挂载远程目录,然后你可以在本地运行vim(或其他任何东西)。在当前的Ubuntu上,您可以sudo apt-get install sshfs
。
答案 4 :(得分:0)
我不知道是否可以在vim中做到这一点,但如果你使用Linux,你可能会对sshfs感兴趣。它使用FUSE(用户空间中的文件系统)使用ssh将远程目录安装到本地目录,然后您可以像使用本地计算机一样使用此远程目录。它非常强大和可靠(如果你的ssh会话关闭,它将自动重新连接,你可能甚至不会注意到它......)。
我几乎每天都在使用它,它真的是一个很棒的软件。
答案 5 :(得分:0)
:e scp user@host:/path/file
请参阅Vim中的:help netrw
和:help ssh
。