開啟 Aptana 的 upload current file on save

以往我撰寫 PHP 的兩個工具是 vimjEditvim 比較常用)。
當時會選 jEdit 是因為 jEdit 提供了 FTP 遠端存取的功能,更改或新增的程式檔可以自動上傳到遠端主機。
昨天在 PTT 的 PHP 板看到有人提到 Aptana Studio,今天想到就抓來玩看看。

令我驚豔的是,Aptana Studio 也提供了遠端存取的功能,包括 FTP、FTPS、SFTP,以及各種版本控制系統。
不過,試了一下之後,發現它沒有辦法自動讓更改或新增的程式檔上傳到遠端主機,只能儲存後,再手動作 upload。
在網路上搜尋解決方法後,我卻發現工具列上的 Scripts -> Synchronize -> Upload Current File On Save 是壞掉的。 =_=|||

在即將放棄使用 Aptana Studio 時,我發現了 這個討論串,而且也順利解決自動上傳的問題。
討論串的內容有點亂,所以把解法整理在這邊,順便幫自己留個備份(以免以後又要找解法):

  1. Aptana Studio 安裝的資料夾找出 upload_current_file_on_save.js 這個檔案,並編輯它。
  2. 在 header 的部份補上這兩行:
    Listener: commandService().addExecutionListener(this);
    Key: M1+S

    補完之後的 header 大概像這樣:

    /* Listener: commandService().addExecutionListener(this);
     * Currently an example script (disabled)> Copy as your own script, and modify
     * the Listener command as shown below
     *
     * Menu: Synchronize > Upload Current File On Save
     * Key: M1+S
     * Kudos: Ingo Muschenetz
     * License: EPL 1.0
     * DOM: http://localhost/com.aptana.ide.syncing.doms
     * DOM: http://download.eclipse.org/technology/dash/update/org.eclipse.eclipsemonkey.lang.javascript
     */
  3. 在檔案最後面補上這段:
    function main() {
       sync.uploadCurrentEditor();
    }
  4. 存檔並重新執行 Aptana Studio

之後只要按下 Ctrl + s 儲存檔案,該檔案就會自動上傳到遠端主機囉。 :-D