【问题标题】:Gvim / Vim as a FTP-program?Gvim / Vim 作为 FTP 程序?
【发布时间】:2015-06-23 13:45:45
【问题描述】:

我是一个相当新的 Gvim(或 Vim)用户,我绝对爱上了它。早些时候,每当我处理 HTML 和 PHP 文件时,我都会使用 Dreamweaver,因为在文件之间跳转很容易(NERDTree 为我解决了这个问题)。但是在 Dreamweaver 中将文件上传到远程服务器特别容易(因为它只是按“CTRL-shift-U”,然后 Dreamweaver 将(尝试)上传它)。它绝不是完美无缺的,但它在 90% 的时间里都有效,这很可爱。而 NERDTree 无法做到这一点。

我用谷歌搜索过,但没有任何运气。所以我只是好奇,在将文件上传到远程服务器时,其他 Vim og Gvim 用户会做什么?他们真的是 alt-tabbing 到 Filezilla 程序并通过它上传吗?看起来很笨拙。

尽管我担心当我提出最后一个附加问题时这个话题会被关闭,但我仍然会冒险:万一在 Vim 或 Gvim 中没有好的方法可以做到这一点。这里的人们可以推荐哪些其他程序,用于具有良好集成 FTP 客户端的漂亮文本编辑器/编码编辑器?

【问题讨论】:

  • Vim 内置的 FTP 插件没有帮助吗? marksanborn.net/software/…
  • 该插件让用户可以远程编辑文件(直接在服务器上)。因此,如果我想保留一个本地副本,那么我将不得不再次进行 Filezilla-dance 并在编辑完文件后下载文件。 :-/
  • 如果这是我的工作流程,我会在版本控制下在本地保留一份副本,并将新文件放在 ftp 服务器上。如果您的 ftp 服务器有 ssh,您可以使用 RCS 进行简单的版本控制。

标签: vim ftp editor


【解决方案1】:

我建议您采用一种适用于您选择的版本控制系统的自动化部署方法。有各种各样的解决方案:CapistranoFabricbeanstalkapp 等等。有较低技术的解决方案,如 rsync 或使用 git push

但是,如果您必须使用 FTP 并且不能使用部署脚本,那么我建议您使用文件监视程序(例如 gruntguardgulp)。这些程序将监视您的文件,然后在创建/修改/删除文件时执行任何命令或插件(例如guard-upload)。

【讨论】:

  • 不错的输入。 Grunt、Guard 和 Gulp 的好主意。我对这些没有任何经验,但快速的谷歌搜索显示,这可能是要走的路。
【解决方案2】:

这是内置在 Vim 中的,每个 Vim 安装都附带标准 netrw 插件。具有讽刺意味的是,NERDTree 旨在部分替换 netrw...但我认为它仅替换了本地目录的 netrw。

您在评论中说您担心保留本地副本。不要担心那个。只需编辑您的本地副本,保存它,然后在您准备上传时:

:w ftp://example.com/path/to/file

这与您在本地系统上保存文件的第二个副本的方式完全相同。如果您想继续处理本地副本,请务必使用 :w 而不是 :saveas

NERDTree 可能(尽管不太可能)会与此产生一些冲突,因为它旨在部分替换 netrw。如果遇到问题,您可以尝试禁用 NERDTree,但我认为它的设计目的是很好地发挥作用。

【讨论】:

  • 只是补充一下,因为我花了很长时间才弄清楚这一点:出于某种原因,您必须(或至少我必须)将斜杠加倍在路径中。应用于您给出的示例,这将是:w ftp://lieven@example.com//path//to//file。还要记下:NetUserPass,以防您输入错误密码。
【解决方案3】:

我建议您使用基于 FUSE 的第三方工具 + 一些 GUI 工具以方便安装。这种方法的优点是,您不仅可以使用 Vim 编辑文件而不会分心,还可以将 UNIX shell 的所有功能用于您的任务。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多