2011-10-28 30 views
1

我一直使用議會(的MacVim)專供個月了,我喜歡它。雖然使用Vim前,我用科達(我在OSX),並有一件事我想念科達是通過FTP標誌着我要發佈的文件,每當我編輯的方式。然後,我可以選擇單獨上傳修改後的文件單個文件,或一次性發布所有文件。簡單FTP發佈Vim的(如科達)

有什麼事情會做這種或類似的Vim的?

我知道NETRW可以直接通過FTP編輯,但我作爲在線網站的鏡子本地運行我所有的網站,所以我需要在本地爲遠程編輯和發佈文件,當我需要的。我谷歌搜索解決方案,但無法找到任何東西。

我在Vim的是更加富有成效,同時的編輯器,但不必打開FTP程序和狩獵和啄跨文件進行復制,因爲我編輯seperately是一個真正的痛苦,使我少生產與在科達工作相比,在網站上工作的總體情況。

任何建議表示歡迎:)

回答

0

我自從偶然發現Vim plugin與Transmit(我正好用作我的主要FTP客戶端)一起工作,並且允許我使用簡單的鍵盤映射(Ctrl + U)將當前文件上載到服務器中。

這打擊是一個非常簡單的解決方案之間的一個很好的平衡,和一個沒有足夠的什麼,我需要顯著提高我的工作效率。

還有什麼建議仍然歡迎!

0
  1. 發送,Cyber​​duck的和YummyFTP(那些我知道)都有自己的版本的「自動文件夾同步」,你在本地工作和任何修改過的文件在上傳變化:你設置了一個「觀察者」,並且不必再次點擊特殊按鈕或快捷鍵。

  2. 如果您只想使用MacVim,您可以編寫一個用於在保存時上載當前文件的小命令:使用當前文件路徑構建scp命令的腳本。但是這對我來說似乎不是很便攜/實用。看來有些人已經寫類似的東西:herethere

  3. 正確的做法是(not only in my opinion)到:

    • 有下某種如Git,顛覆或水銀或任何VCS的一切你的船浮筒

    • 編寫代碼在本地克隆/結帳和測試的地獄它的本地服務器

    • 承諾只工作代碼

    • 推里程碑,使用您和您的客戶測試所有臨時服務器,這部分可以通過post-commit鉤子或類似的

    • 部署生產服務器上只有合法變化的東西是自動的。

    上述所有的版本控制系統可以直接從Vim的命令行與:!git commit:!svn update使用...如果你需要更多的抽象,Fugitive(GIT-只),或VCSCommand(多VCS,我的選擇)是這裏幫助。

在你的生產力損失,由於上傳文件:我認爲這是非常正常的,因爲你基本上是執行具有非常不同的神經需求非常不同的任務。在預覽瀏覽器中的佈局更改,查找Photoshop中的顏色或任何其他類似任務時,也可能會遇到此速度凹凸現象。我不知道從Vim內部試用Photoshop,Chrome的開發工具或Outlook的方式,我不認爲這樣的Gizmo可能會重新存在,因此您可能不得不忍受它。

+0

感謝您的回答。我完全同意第3項,但問題是我的所有工作都在廉價的虛擬主機服務器上,沒有shell訪問權(因此沒有VCS),所以解決方案需要以FTP爲中心。我在本地使用Git,在上傳準備就緒的代碼之前,測試所有網站的本地安裝。你的最後一點也很好:我很高興接受Vim內部沒有辦法做所有事情 - 我想我只想看看是否有一個我不知道的簡單解決方案。再次感謝! – Coby

0

你可以嘗試git-ftp - 基於Git的命令行FTP客戶端。然後,您可以將項目作爲Git存儲庫進行管理,並且git-ftp只會上傳標有Git的文件 - 並且只有在它們發生更改時纔會這樣。

的缺點是,你將要學習Git的 - 這是你需要的東西有點大材小用。 好處是你要學習和使用Git。

+0

這對於解決這個問題看起來很不錯。我會看一看! – Coby