如何使用 vim 处理文件缓存而不是实际文件?

发布于 2024-07-26 07:39:26 字数 299 浏览 5 评论 0原文

我通常使用 vim ssh 到另一台计算机进行开发(请不要发布“使用 Emacs”)。 然而,我注意到当我的网速很慢时 vim 非常慢(废话)。

编辑: 我在本地计算机上使用终端,并使用 vim scp://host/file 命令打开远程文件。 然而,当我这样做时,我输入的每一次按键都会导致 vim 访问网络,从而大大减慢速度。 相反,我希望 vim 读取远程文件,让我进行本地编辑,并且仅在执行 :w 命令时才访问网络。 将其视为回写式缓存选项。

我知道 Komodo Edit 提供了此功能,这就是我的想法的来源。

I typically ssh to another computer to do my development, using vim (don't post "Use Emacs" please). However, I notice that vim is very slow when my internet is slow (duh).

EDIT:
I use a terminal on my local machine and open the remote file with a vim scp://host/file command. However, when I do this, every keystroke that I put in causes vim to go to the network, dramatically slowing things down. Instead, I want vim to read the remote file, let me do my local editing, and only go to the network when I do a :w command. Think of it like a write-back cache option.

I know Komodo Edit offers this functionality, which is where I got the idea from.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

五里雾 2024-08-02 07:39:26

您可以直接在 vim 中通过 ssh 进行编辑,如下所示:

:e scp://[email protected]//path/to/document

您可以在 这个服务器故障问题

You can edit from ssh directly in vim like this:

:e scp://[email protected]//path/to/document

You can find more information in this serverfault question.

有深☉意 2024-08-02 07:39:26

Vim 有一个名为 netrw 的插件(我相信这是最新 vims 的标准)。 我相信这基本上可以实现您想要的功能:它允许您通过透明复制来打开远程服务器上的文件。

请参阅 :help netrwVim 脚本页面

Vim has a plugin (which I believe is standard on most recent vims) called netrw. This basically does what you want I believe: it allows you to open a file on a remote server by copying it transparently.

See :help netrw or The Vim Script page

ゞ花落谁相伴 2024-08-02 07:39:26

如果你打开 vim scp:/// 并且速度很慢,并且每次击键都有网络流量,那么肯定有问题。 Vim 应该仅在保存时生成网络流量。

也许你打开了自动保存? 如果是,请关闭远程文件的功能,或者至少减少其干扰。

If you open vim scp:/// and it is slow, and there is network traffic on every keystroke, then something is definitely wrong. Vim should generate network traffic only on save.

Perhaps you turned on autosave? If yes - turn it off for remote files, or at least make it less intrusive.

萧瑟寒风 2024-08-02 07:39:26

我发现 sshfs 对此非常有用。 它可以通过 sftp 挂载远程目录,然后您可以在本地运行 vim (或其他任何东西)。 在当前的 Ubuntu 上,您可以sudo apt-get install sshfs

I find sshfs very useful for this. It can mount a remote directory over sftp, and then you can run vim (or anything else) locally. On current Ubuntu you can sudo apt-get install sshfs.

简美 2024-08-02 07:39:26

我不知道是否可以在 vim 本身中做到这一点,但如果您使用 Linux,您可能会对 sshfs。 它使用 FUSE(用户空间中的文件系统)通过 ssh 将远程目录挂载到本地目录,然后您可以像在自己的本地计算机上一样使用该远程目录。 它非常强大和可靠(如果您的 ssh 会话关闭,它将自动重新连接,您可能甚至不会注意到它......)。

我几乎每天都使用它,它确实是一个很棒的软件。

I don't know if it is possible to do that in vim itself, but if you're using Linux you may be interested in sshfs. It uses FUSE (Filesystem in Userspace) to mount a remote directory into a local one using ssh, and you can then use this remote directory as if it were on your own local computer. It is very robust and reliable (if your ssh session is closed, it will reconnect automagically and you probably won't even notice it...).

I use it almost every day, and it's really a great piece of software.

浊酒尽余欢 2024-08-02 07:39:26

:e scp user@host:/path/file

请参阅 Vim 中的 :help netrw:help ssh

:e scp user@host:/path/file

See :help netrw and :help ssh in Vim.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文