Vimの簡単なFTP公開(Codaのような)

私はVim(MacVim)を数ヶ月間排他的に使用していました。私はそれを大好きです。しかし、Vimを使用する前に、私はCodaを使っていました。私はOSXを使っています。私がCodaについて覚えているのは、編集するたびにファイルをFTP経由で公開する方法です。その後、変更されたファイルを個別にアップロードするか、すべてを一度に公開するかを選択できます。

Vimでこれを行う方法と同様の方法がありますか?

私はnetrwがFTP経由で直接編集できることを知っていますが、私は自分のサイトをすべてオンラインサイトのミラーとしてローカルに実行しているので、必要に応じてローカルで編集してファイルをリモートで公開する必要があります。私は解決のためにgoogledしたが、何も見つけることができない。

エディタで書いている間はVimではるかに生産的ですが、FTPプログラムを開き、別々にファイルを編集してコピーすることは本当の苦痛です。 Codaでの作業と比較して、ウェブサイトで作業するときは全体的に生産性が高い。

任意の提案歓迎:)

1

3 答え

gitベースのコマンドラインftpクライアントである git-ftp を試すことができます。その後、プロジェクトをGitリポジトリとして管理することができ、git-ftpはGitでマークされたファイルのみをアップロードします。

欠点は、あなたがGitを学ばなければならないということです - そして、それはあなたが必要とするもののために少し過度のものです。 あなたがGitを学び、使用しようとしているのは、もう一つの利点です。

0
追加された
それはこの問題を解決するためのかなり良いアイデアのように見えます。私は見てみましょう!
追加された 著者 Coby,
  1. Transmit, Cyberduck and YummyFTP (the ones I know) all have their own version of "automated folder syncing" where you work locally and any modified files are uploaded on change: you setup an "observer" and never have to hit a special button or shortcut again.

  2. If you want to only use MacVim you could write a little command that uploads the current file on save: a script that would use the current file's path to construct an scp command. But this doesn't seem very portable/practical to me. It appears some people have already written something like that: here and there.

  3. The right way is (not only in my opinion) to:

    • have everything under some kind of VCS like Git, Subversion or Mercurial or whatever floats your boat

    • write your code in a local clone/checkout and test the hell out of it on a local server

    • commit only working code

    • push milestones to a staging server used by you and your clients to test everything, this part can be automated via a post-commit hook or something like that

    • deploy only validated changes on your production server.

    All the aforementioned Version Control Systems can be used directly from Vim's command line with :!git commit or :!svn update… If you need more abstraction, Fugitive (Git-only) or VCSCommand (multi-VCS, my choice) are here to help.

ファイルをアップロードすることによる生産性の低下:非常に異なる神経学的ニーズを持つ非常に異なるタスクを本質的に実行するため、非常に正常だと思います。この速度バンプは、ブラウザのレイアウト変更をプレビューしたり、Photoshopや他の同様のタスクで色をルックアップしたりする際にも経験できます。私はPhotoshop、Chromeの開発ツールやOutlookをVimの中からパイロットする方法は知らないし、このようなギズモが本当に存在するとは思わないので、おそらくそのことに気づくだろう。

0
追加された
ご回答有難うございます。私は全面的に項目3に同意しますが、問題はちょうど私の仕事がシェルアクセスのない安価なWebホスティングサーバー(したがってVCSはありません)のためです。したがって、ソリューションはFTP中心である必要があります。 Gitをローカルで使用し、すべてのサイトのローカルインストールをテストしてから、公開準備が整ったコードをアップロードします。あなたの最後のポイントも良いです:私はVimの中からすべてを行う方法がないことを受け入れることができてうれしく思います。私が気づいていない単純な解決策があるかどうかを見たいと思っていたと思います。再度、感謝します!
追加された 著者 Coby,

私はそれ以来、Transmitで動作する Vimプラグインを見つけました。私のメインのFTPクライアントとして使用することになります)、私は単純なキーマップ(Ctrl + U)で現在のファイルをサーバーにアップロードすることができます。

これは、非常に単純な解決策であることと、私の生産性を大幅に改善するために必要なものの十分なバランスとの間で、良いバランスを取っています。

それ以上の提案はまだ歓迎されています!

0
追加された