? ? 我用過非常多編輯器,
EditPlus、EmEditor、Notepad++、Notepad2、UltraEdit、Editra、Vim,還有包含netbeans , zendstudio, dreamweaver 等。 最后我遇見了sublime text。??sublime是我見過的最好的編輯器,大型IDE能實現(xiàn)的功能, 用sublime裝上對應插件,都能實現(xiàn)。 它是一個小型編輯器, 執(zhí)行速度非常快。如今是鼓起勇氣換掉你曾經編輯器的時候了。假設你曾經沒有聽說過sublime, 能夠看看這個介紹視頻: http://v.youku.com/v_show/id_XMzU5NzQ5ODgw.html
??sublime本身功能有限,我們須要裝上一些插件使其變得強大。sublime在各個操作系統(tǒng)下都能夠執(zhí)行,但在linux下執(zhí)行須要注意中文輸入的問題。 以下我主要介紹一下經常使用插件、配置的建議以及在linux下執(zhí)行的注意事項。
??一,經常使用插件
? ?? ? ?1,package control。 ?我們用sublime差點兒都會首先安裝這個插件,這個插件是管理插件的功能,先安裝它,再安裝其它插件就方便了。??安裝方法:
? ?? ? 點擊sublime的菜單條 view->show console ;如今打開了控制臺, 這個控制臺有上下兩欄, 上面一欄會實時顯示sublime執(zhí)行了什么插件,輸出執(zhí)行結果, 假設你安裝的某個插件不能正常執(zhí)行,應該先在這里看看有沒有報錯。以下欄是一個輸入框,能夠執(zhí)行python代碼。我們輸入以下的代碼點擊回車執(zhí)行, 就能安裝好package control了。
? ?? ??
- import urllib2,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();os.makedirs(ipp) if not os.path.exists(ipp) else None;open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read())
? ?? ? 然后我們按住 ctrl+shift+p。此時會輸出一個輸入框, 輸入install。??選擇package contrl: install package 回車 ,須要稍定一會兒,右下角狀態(tài)欄會顯示正在連接的提示文字。 使用sublime時注意看右下角狀態(tài)欄,非常多插件的提示信息都顯示在這里,這個狀態(tài)欄非常小,初次使用的人都有可能沒有注意到它。
? ??
? ???
? ?稍等一會兒后,它會出現(xiàn)一個插件列表, 你也能夠在輸入框中輸入文字進行搜索插件。 搜索到自己想安裝的插件,再選擇它,回車。 就自己主動給你安裝好了。
??假設要卸載插件, ctrl+shift+p 輸入 remove, 選擇package control:remove package 然后再選擇已安裝的插件, 回車就可以卸載。
? ?假設package control 安裝插件時失敗了, 我們能夠採用手動安裝的方式, 在google上去搜索插件, 下載插件的源碼。在sublime的菜單條點擊 preferences->Browse package..??此時會打開插件文件夾。然后把你下載的插件源碼復制進去就能夠了。
??ctrl+shift+p 打開的輸入框面板是什么? 英文叫做 “Anything panel” ,不論什么操作都能夠在這個面板里面完畢。我暫且翻譯為“萬能面板”。 打開萬能面板有幾種方式。??
??ctrl+shift+p 打開時,我們須要在面板中輸入一個命令,然后運行命令。全部菜單條能操作事都能夠在這里輸入命令進行操作。
??ctrl+p 打開時,能高速查找文件。
??ctrl+r 打開時, 能查找當前文件里的函數。
??ctrl+g 打開時,能跳轉到指定行。
??大家開始接觸sublime時對它的環(huán)境還不是非常熟悉,全部我在這里說得有點多, 簡單總結一下前面說的。
??控制臺的作用: 能夠在這里運行python代碼,和查看一些運行結果,假設插件運行不正常,能夠在這里看看有沒有報錯。
??右下角狀態(tài)欄: 非常多提示信息都會顯示在那里,注意常常查看。
??萬能面板:全部的操作都能夠在這里進行,又能夠在這里輸入命令,又能夠在這里查找文件,也能夠在這里查找函數等等。
??安裝插件的方式:除了package control 安裝還能夠手動安裝。
2,ctags。? 這個插件能跨文件跳轉,跳轉到指定函數聲明的地方。 使用package control 搜索ctags 進行安裝(安裝ctags插件就能夠了, 另一個 CTags for PHP 插件沒什么用)。注意安裝好插件后要須要安裝ctags命令。window 下載 ctags.exe?? http://vdisk.weibo.com/s/7QZd7 ?。 將ctags.exe文件放在一個環(huán)境變量能訪問到的地方。打開cmd, 輸入ctags,假設有這個命令,證明成功了。 ubuntu下安裝執(zhí)行命令:sudo apt-get install exuberant-ctags 。?
? ? 然后在sublime項目目錄右鍵, 會出現(xiàn)Ctag:Rebuild Tags 的菜單。點擊它,然后會生成.tags的文件。
??
然后在你代碼中, 光標放在某個函數上, 點擊ctrl+shift+鼠標左鍵 就能夠跳轉到函數聲明的地方。
3, sublimecodeintel 代碼提示。 ?sublime默認的代碼提示僅僅能提示系統(tǒng)函數,用戶自己創(chuàng)建的函數、類不能提示。 假設想要提示自己建立的函數。 能夠安裝sublimecodeintel插件。
sublimecodeintel 安裝后須要配置,文件:插件文件夾/.codeintel/config 中 添加
-
"PHP": {
-
? ?? ???"php": 'D:\SaeServer\php\php.exe',
-
? ?? ???"phpExtraPaths": ['D:\SaeServer\php\stdlib'],
-
? ?? ???"phpConfigFile": 'D:\SaeServer\apache\php.ini'
- ? ? },
配置了php運行文件的地址, php的配置文件地址, phpExtraPaths 是額外須要代碼提示的類庫,除了當前項目下的PHP代碼能夠提示外 phpExtraPaths中定義的文件夾下的PHP代碼也能提示。??D:\SaeServer\php\stdlib 是SaeServer中 SAE本地模擬文件的文件夾, 所以配置后無論在哪兒 都能有SAE代碼的提示。
??安裝sublimecodeintel后, 按alt+鼠標左鍵也能和ctags一樣跳轉到函數聲明的地方。 可是假設有兩個文件聲明了相同名稱的函數, sublimecodeintel僅僅會跳轉到第一個找到的函數, 而ctags會讓你選擇要跳轉到哪個文件。所以我們一般還是用ctags的跳轉功能。
4,語法提示。 ?我們須要在寫代碼的時候假設有語法錯誤,能馬上提示我們, 能夠安裝這兩個插件:sublimelint 和Phpcs , sublimeint 須要系統(tǒng)有php命令。 所以須要設置好php的環(huán)境變量。 sublimelint的語法錯誤提示是顯示在狀態(tài)欄上面的,所以在編敲代碼的時候注意時??纯礌顟B(tài)欄。 而Phpcs的語法錯誤提示是在我們保存文件時彈出萬能面板顯示錯誤,sublimelint的錯誤提示實時但不明顯。 Phpcs的錯誤提示不是實時的,但非常明顯。 因此我們一般這兩個插件都要安裝。??Phpcs除了代碼提示的共,還有其它功能,可是我臨時沒有弄明確其它功能怎么用, 大家能夠去研究一下,假設知道怎么用了再告訴我一下。
5,goto document。? 這個插件能幫助我們高速查看手冊。 比方我們在寫php代碼時, 突然忘記了某個函數怎么用了,將鼠標放在這個函數上,然后按F1,它能高速打開PHP手冊中說明這個函數使用方法的地方。?
? ? 安裝好 goto document插件后我們再配置快捷鍵F1 跳轉到文檔。 打開sublime的菜單條Preferences->key bindings -User??設置快捷鍵:
-
[
-
? ? { "keys": ["f1"], "command": "goto_documentation" }
- ]
6,function name display。 ?這個插件能夠在狀態(tài)欄顯示出當前光標處于哪個函數中。
7,GBK Encoding Support 。 ?sublime本身不支持GBK編碼, 能夠安裝這個插件讓它支持。
8,SVN插件。 windows下能夠安裝Tortoise和 Tortoisesvn的client。然后在sublime中在文件夾或文件右鍵都能夠提交svn了。 在ubuntu下能夠安裝rabbitvcs 結合這個插件: https://github.com/kervin/sublime-svn/downloads ?實現(xiàn)相同的功能。
9,gist。 我們建立html文件時,做有些同樣的代碼。 這時候我們喜歡能有一個代碼模板, 不能寫反復同樣的代碼, gits插件能實現(xiàn)代碼模板的功能。 它能見我們自己創(chuàng)建的代碼模板,代碼片段保持在github中的gist下。 http://lucifr.com/2012/03/07/sub ... al-snippet-manager/ ?這里介紹了具體的使用方法。
10,代碼凝視格式化。
additional PHP snippet插件能提示phpdocument格式的代碼
還能高速輸出開源協(xié)議, 輸入php- 會有提示
安裝DocBlockr 插件,能形成凝視塊。不用每次敲凝視的斜杠或星號。
11,成對匹配的增強。 ?像這些符號是成對的:花括號{}, 中括號[],括號:() ,引號“” 等。 這些符號當我們鼠標放在開始符號的位置的時候, 希望能明顯看到結尾符號在哪兒sublime默認是下劃線,非常不明顯, 想要明顯一點,能夠安裝插件??BracketHighlighter。
12,格式化PHP代碼。 ??安裝 php-beautifier 插件,使用php-beautifier還須要安裝 PHP Beutifier的pear包:
pear install PHP_Beautifier
安裝好后, 打開PHP文件,ctrl+alt+f 就能為你自己主動格式化代碼。
13,Xdebug。
??能夠安裝xdebug插件,做代碼調試功能。 這是大型IDE都有的功能, 小型編輯器非常少能做到,可是sublime卻又對應的插件能實現(xiàn)xdebug的功能。
你的PHP須要安裝xdebug擴展。使用時須要在項目文件夾下建立一個.sublime-project文件
-
{
-
? ? "folders":
-
? ? [
-
? ?? ???{
-
? ?? ?? ?? ?"path": "D:\ysd\ysdv8"
-
? ?? ???},
-
? ? ],
-
-
? ? "settings": {
-
? ?? ???"xdebug": { "url": "http://yunshangdian.com" }
-
? ? }
- }
注意給程序設置斷點。否則不能見效果。 具體使用方法見: https://github.com/Kindari/SublimeXdebug
你假設也要寫前端代碼, 還能夠安裝一些和html,js相關的插件。如 ZenCoding,jQuery,jQuery Mobile Snippets,jQuery Snippets pack等。
二,配置建議。
用戶配置建議(打開菜單條Preferences->Setting-user):
? ? {
? ? "color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme",
? ? "default_line_ending": "unix",
? ? "detect_slow_plugins": false,
? ? "font_face": "Microsoft YaHei",
? ? "font_size": 10.0,
? ? "auto_match_enabled": false,
? ? }
auto_match_enabled設置為false后能夠關閉括號的自己主動完畢。如我們輸入左括號時sublime自己主動將右括號打出來了,往往我們不習慣這樣, 此時你設置auto_match_enabled為false就可以。
快捷鍵配置的建議(菜單條Preferences->key bindings -User):
? ? [
? ? { "keys": ["f1"], "command": "goto_documentation" },
? ? { "keys": ["alt+shift+`"], "command": "clone_file" }
? ? ]
F1高速打開文檔, 這個快捷鍵的設置前面已經說了。
alt+shift+` 快捷鍵又有什么用呢? 我們須要同一個文件在左右兩欄同一時候打開。
先按快捷鍵: alt+shift+2 。 此時會出現(xiàn)左右兩欄的布局。
再按alt+shift+`(`鍵是tab鍵上面?zhèn)€鍵), 此時會復制一份當前文件, 再把新復制的那份文件拖動到右欄。 這樣就實現(xiàn)了同一文件左右兩欄同一時候打開了。
切換回一欄布局,按 alt+shift+1
顏色配置建議:
sublime對無效(invalid)的顏色提示 往往會提示錯誤。顏色非常難看。 能夠去掉對invalid的顏色提示。
插件文件夾下\Color Scheme - Default\Monokai.tmTheme文件里, 刪除
-
<dict>
-
? ? <key>name</key>
-
? ? <string>Invalid</string>
-
? ? <key>scope</key>
-
? ? <string>invalid</string>
-
? ? <key>settings</key>
-
? ? <dict>
-
? ? <key>background</key>
-
? ? <string>#F92672</string>
-
? ? <key>fontStyle</key>
-
? ? <string></string>
-
? ? <key>foreground</key>
-
? ? <string>#F8F8F0</string>
-
? ? </dict>
- ? ? </dict>
成對匹配默認是綠色,有點難看,
插件文件夾下\Color Scheme - Default\Monokai.tmTheme文件里Class name 鍵中的:
改為:
-
<dict>
-
? ? <key>name</key>
-
? ? <string>Class name</string>
-
? ? <key>scope</key>
-
? ? <string>entity.name.class</string>
-
? ? <key>settings</key>
-
? ? <dict>
-
? ? <key>background</key>
-
? ? <string>#F92672</string>
-
? ? <key>fontStyle</key>
-
? ? <string></string>
-
? ? <key>foreground</key>
-
? ? <string>#F8F8F0</string>
-
? ? </dict>
- ? ? </dict>
三,在linux下使用。
? ? linux下使用時,中文不能輸入的問題, 使用scim輸入法方式能夠解決。詳細解決方法: http://www.haogongju.net/art/1312281
??盡管scim能讓我們輸入中文后, 可是也不是非常完美,有候選詞不尾隨的問題, sublime失焦后候選詞會消失的問題。候選詞消失的問題,能夠把sublime獨立到一個單獨的工作區(qū)中來臨時解決問題。
更多文章、技術交流、商務合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
