1. 程式人生 > >Sublime Text 3設定吊炸天PHP開發環境

Sublime Text 3設定吊炸天PHP開發環境

1. 下載安裝Sublime Text 3 2. 安裝Sublime包管理器pci - Package Control     來Subl3安裝Package Control很麻煩,現在簡單的方法來了     (1)、簡單的安裝方法     使用Ctrl+`快捷鍵或者通過View->Show Console選單開啟命令列,貼上如下程式碼:     import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( '
http://sublime.wbond.net/
' + pf.replace(' ','%20')).read())
    如果順利的話,此時就可以在Preferences選單下看到Package Settings和Package Control兩個選單了。     順便貼下Sublime Text2 的程式碼:     import urllib2,os; pf='Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join( ipp, pf), 'wb' ).write( urllib2.urlopen( '
http://sublime.wbond.net/
' +pf.replace( ' ','%20' )).read()); print( 'Please restart Sublime Text to finish installation')
    注意:如果安裝報錯,比如連線遠端伺服器失敗之類的,請設定wbond.net的host,相關host如下:     50.116.33.29        sublime.wbond.net     (2)、手動安裝     可能由於各種原因,無法使用程式碼安裝,那可以通過以下步驟手動安裝Package Control:     1.點選Preferences > Browse Packages選單     2.進入開啟的目錄的上層目錄,然後再進入Installed Packages/目錄     3.下載Package Control.sublime-package並複製到Installed Packages/目錄     4.重啟Sublime Text。 * 說明:每次喚醒包管理配置都可以使用 Ctrl + Shift + P 方式喚醒命令列,然後輸入 pic 快取 Package Control: install package 元件 * 3. PHP程式碼語法正確性驗證外掛 SublimeLinter
(1) Windows環境安裝配置好php執行環境(安裝PHP執行引擎),或者使用 xampp 等整合環境。 我安裝的xampp環境,相關PHP.exe路徑是:C:\xampp\php\php.exe ,然後設定相關環境變數 PATH ,然後設定該變數最後增加:c:\xampp\php 路徑。 (2) 安裝 SublimeLinter 和 SublimeLinter-php 元件 Ctrl + Shift + P 喚醒後輸入:pic,開啟包管理檔案,然後輸入 sublimelinter,選擇選裝;然後再pic喚醒輸入:sublimelinter-php  安裝完外掛以後去配置一下外掛相關配置,在 Sublime Text 3選單開啟:Preferences -> Package Setting -> SublimeLinter -> Setting User,把如下內容填充進去: {     "user": {         "debug": false,         "delay": 0.25,         "error_color": "D02000",         "gutter_theme": "Packages/SublimeLinter/gutter-themes/Default/Default.gutter-theme",         "gutter_theme_excludes": [],         "lint_mode": "background",         "linters": {             "annotations": {                 "@disable": false,                 "args": [],                 "errors": [                     "FIXME"                 ],                 "excludes": [],                 "warnings": [                     "NOTE",                     "README",                     "TODO",                     "XXX",                     "@todo"                 ]             },             "php": {                 "@disable": false,                 "args": [],                 "excludes": []             },             "summitlinter": {                 "@disable": false,                 "args": [],                 "excludes": [],                 "globals": "",                 "ignore": "channel",                 "limit": null,                 "only": ""             }         },         "mark_style": "outline",         "no_column_highlights_line": false,         "passive_warnings": false,         "paths": {             "linux": [],             "osx": [],             "windows": [                 "c:\\xampp\\php"             ]         },         "python_paths": {             "linux": [],             "osx": [],             "windows": []         },         "rc_search_limit": 3,         "shell_timeout": 10,         "show_errors_on_save": false,         "show_marks_in_minimap": true,         "sublimelinter": "save-only",         "sublimelinter_executable_map": {             "php": "c:\\xampp\\php\\php.exe"         },         "syntax_map": {             "html (django)": "html",             "html (rails)": "html",             "html 5": "html",             "javascript (babel)": "javascript",             "magicpython": "python",             "php": "php",             "python django": "python",             "pythonimproved": "python"         },         "warning_color": "DDB700",         "wrap_find": true     } } 說明:注意裡面的兩個php路徑必須跟我們實際php指令碼引擎路徑一致。 (3) 儲存配置檔案後重啟Sublime編輯器,然後編輯任何php程式碼檔案,如果程式碼語法有錯誤都會及時提醒啦。 4. 安裝自動程式碼提醒+當前檔案內函式定義等跳轉外掛:SublimeCodeIntel 說明:外掛 SublimeCodeIntel 是能夠在當前檔案內的程式碼互相跳轉,同時支援當前所有專案目錄下面程式碼的自動識別跳轉。(跳轉是自動的) Ctrl + P 喚醒 輸入 pic 進入包管理工具,輸入 SublimeCodeIntel,安裝該包管理工具,安裝完以後就可以使用了。 說明: (1) 檔案內程式碼跳轉 在碰到相關要跳轉的函式、類等,按 Alt + 滑鼠左鍵 就可以跳轉了。 (2) 程式碼提示 把整個相關要編輯的工程目錄拖入到Sublime編輯器中,然後就會自動進行相關的程式碼生成提醒工作,你在整個目錄下面做任何程式碼編輯情況下,都會自動下拉提醒相關程式碼。 5. 跨檔案程式碼跳轉外掛:Ctags Ctags 是一個經典的程式碼跳轉外掛,在很多編輯器中都可以使用。 主要步驟:安裝ctags程式 -> 對應專案程式碼生成ctags所以 -> 給sublime安裝ctags外掛 -> 開啟相關生產好ctags索引檔案的專案目錄匯入到sublime -> 進行相關程式碼跳轉 (1) 下載ctag生成程式 從 http://ctags.sourceforge.net/ 下載ctags索引生成程式,把ctags.exe放入到環境變數,方便在任何cmd環境下都可以執行ctags索引生成程式 (2) 生成ctags索引 cmd下進入對應的專案程式碼目錄,然後執行: ctags -R -f .tags --fields=+aimSl --language=php 或者: ctags -R -f .tags --fields=+aimSl --language-force=php 生成後會發現當前目錄下有一個 .tag 檔案,就是我們生成好的索引檔案。 (3) 在 Sublime Text 中安裝外掛:Ctags Ctrl + P 喚醒輸入pic進入包管理工具,輸入 Ctags ,安裝該外掛。 (4) 使用相關程式碼跳轉功能 把我們上面生成了 .tag 索引檔案的目錄整個拖入到Sublime編輯器中,然後開啟任意程式碼檔案,在看到呼叫其他類庫函式的地方,按 Ctrl + Shift + 滑鼠左鍵,就可以跳轉到相關程式碼檔案,再按 Ctrl + Shift + 滑鼠右鍵,就能夠跳轉回來源的程式碼檔案,非常方便。 6. 程式碼實時同步到測試伺服器外掛:Sftp 一般情況,我們編寫完成程式碼以後,需要上傳到除錯伺服器進行除錯,最好每個操作都是實時的,不用單獨用scp/ftp/samba等方式拷貝檔案到伺服器端,比較麻煩,所以需要再編輯器完成後直接把程式碼上傳到伺服器的操作。 sftp 外掛就能夠幹這個事兒,會利用 sftp方式利用ssh服務把程式碼傳到伺服器。 (1) 安裝外掛:sftp Ctrl + P 喚醒輸入pic進入包管理工具,輸入 sftp ,安裝該外掛。 (2) 配置該外掛 把相關專案目錄拖入到 Sublime 編輯器,然後找到程式碼路徑根節點,右鍵 選擇 SFTP -> Map to Remote... 然後進行相關配置: {     // The tab key will cycle through the settings when first created     // sftp, ftp or ftps     "type": "sftp",     "save_before_upload": false,     "upload_on_save": true,     "sync_down_on_open": false,     "sync_skip_deletes": false,     "sync_same_age": true,     "confirm_downloads": false,     "confirm_sync": true,     "confirm_overwrite_newer": false,     "host": "遠端SSH伺服器地址",     "user": "使用者名稱",     "password": "登陸密碼",     "port": "22",     "remote_path": "遠端伺服器程式碼存放目錄",     "ignore_regexes": [         "\\.sublime-(project|workspace)", "sftp-config(-alt\\d?)?\\.json",         "sftp-settings\\.json", "/venv/", "\\.svn/", "\\.hg/", "\\.git/",         "\\.bzr", "_darcs", "CVS", "\\.DS_Store", "Thumbs\\.db", "desktop\\.ini"     ],     //"file_permissions": "664",     //"dir_permissions": "775",     //"extra_list_connections": 0,     "connect_timeout": 30,     //"keepalive": 120,     //"ftp_passive_mode": true,     //"ftp_obey_passive_host": false,     //"ssh_key_file": "~/.ssh/id_rsa",     //"sftp_flags": ["-F", "/path/to/ssh_config"],     //"preserve_modification_times": false,     //"remote_time_offset_in_hours": 0,     //"remote_encoding": "utf-8",     //"remote_locale": "C",     //"allow_config_upload": false, } 配置完成後儲存配置,重啟 Sublime。 (3) 使用該外掛 第一次使用的時候,需要把所有程式碼都同步到 遠端SSH伺服器,選擇 Sublime 編輯器左側需要同步資料夾的根目錄,右鍵,選擇 SFTP -> Upload Folder,然後就開始傳輸了,等傳輸完成,ssh伺服器程式碼就跟本地一樣了。 然後每次修改程式碼後,再 Ctrl + S 儲存的時候,都會自動同步程式碼到ssh伺服器了,完全自動,不需要人工干預。 7. 其他相關好用外掛 DocBlockr:自動給函式變數增加註釋功能,可以修改配置設定哪些需要那些不需要,一般建議修改配置都是修改 Setting User 級別的配置 Encoding Helpr: 編碼助手,再安裝完外掛後,右下角會顯示當前檔案的編碼,非常方便,特別是識別UTF8、GBK、UTF8 with BOM 等編碼非常好用 PHP Code Beautifier:PHP程式碼美化外掛 Compare Side-by-Side:對比兩個程式碼檔案的差異 SVN/Git:相關版本管理工具 //...繼續新增中