Sublime Text 入門及技巧
如何優雅地使用Sublime Text3
http://www.jianshu.com/p/3cb5c6f2421c
看了 Nettuts+ 對 Sublime Text 2 的介紹,立刻就興奮了,誠如作者 Jeffrey Way 所說:“《永遠的毀滅公爵》都發布了,TextMate 2 還沒發”,你還能指望它么?TextMate 開發者的消極態度已經無法讓人忍受了。而作為一款跨 OS X、Linux 和 Windows 三大系統平台的文字編輯器,Sublime Text 2 功能日進,大有取 TextMate 而代之的勢頭,
以下就將 Nettuts+ 的這篇文章做一粗略翻譯,固然不是面面俱到,用做入門卻是足夠了。以下均是以 Windows 版本為主,但對 Mac和 Linux 版來說也是相通的。
| 內容列表 |
|---|
| 換個耐看點些的圖標 |
| 嘗試開發版本 |
| 快捷的命令面板 |
| 即時的文件切換 |
| 隨心所欲的跳轉 |
| 多重選擇(Multi-Selection) |
| 縮進指示(Indent Guide) |
| 安裝包控制(Package Control) |
| 對齊 |
| Vim 模式 |
| 無干擾模式(Distraction Free Mode) |
| TextMate Bundle |
| 主題 |
| 命令行工具 |
| 總結 |
嘗試開發版本
Sublime Text 2 目前更新十分活躍,如果想要嘗試最新的功能,建議下載並安裝 dev 版本。
快捷的命令面板

和 TextMate 類似,Sublime Text 2 也提供了很方便的命令調用方式:Command Palette(命令面板)。調用方法:直接在 Tool 菜單中選擇 Command Palette,或是用快捷鍵:Ctrl + Shift + P,輸入命令名稱(中的字母)就可以實時搜索到相應的命令、選項、snippet 和 syntex, 按下回車就可以直接執行,減少了查找的麻煩。
即時的文件切換
按下 Ctrl + P(Windows),輸入想要切換到的文件的文件名,都不用按下回車鍵,目標文件就已經展現在眼前了,雖然 Vim 配合 PeepOpen 也可以實現同樣的功能,但速度卻遠沒有這么迅速。
隨心所欲的跳轉
Ctrl + P 之所以被叫做 Goto Anything 並不是虛名:
- 用 Ctrl
+ P可以快速跳轉到當前項目中的任意文件,可進行關鍵詞匹配。 - 用 Ctrl
+ P后@(或是Ctrl+R)可以快速列出/跳轉到某個函數(很爽的是在 markdown 當中是匹配到標題,而且還是帶縮進的!)。 - 用 Ctrl
+ P后#可以在當前文件中進行搜索。 - 用 Ctrl
+ P后:(或是Ctrl+G)加上數字可以跳轉到相應的行。 - 而更酷的是你可以用 Ctrl
+P加上一些關鍵詞跳轉到某個文件同時加上@來列出/跳轉到目標文件中的某個函數,或是同時加上#來在目標文件中進行搜索,或是同時加上:和數字來跳轉到目標文件中相應的行。
多重選擇(Multi-Selection)
多重選擇功能允許在頁面中同時存在多個光標,讓很多本來需要正則表達式、高級搜索和替換才能完成的任務也變得游刃有余了。看看 Nettut+ 提供的實例可能更為直觀一些:
激活多重選擇的方法有兩幾種:
- 按住
Command或Alt,然后在頁面中希望中現光標的位置點擊。 - 選擇數行文本,然后按下
Shift + Command + L。 - 通過反復按下
Control/Command + D即可將全文中與光標當前所在位置的詞相同的詞逐一加入選擇,而直接按下Alt+F3(Windows) 或是Ctrl+Command+G(Mac) 即可一次性選擇所有相同的詞。 - 按下鼠標中鍵來進行垂直方向的縱列選擇,也可以進入多重編輯狀態。
縮進指示(Indent Guide)
更新:縮進指示已經被集成進 Sublime Text 2 中,不需要安裝插件了。
縮進指示這個小功能可以讓代碼的層級關系更加清晰,在 Sublime Text 2 中,可以通過一個插件來實現這個功能。
安裝方法:
- 下載 IndentGuides 插件。
- 解壓后,將文件夾重命名為
Indent Guides,並放入Packages目錄中。找到Packages目錄的簡單方法是在 Sublime Text 2 的Preferences菜單中選擇Browse Packages。 - 重啟 Sublime Text 2
安裝包控制(Package Control)
上一條中的安裝插件的方法是不是很麻煩呢?其實和 TextMate 可安裝 Bundle、Plugin 一樣,Sublime Text 2 也擁有良好的擴展功能,這就是安裝包(Package);同樣,就像 TextMate 有用來安裝、升級、卸載 Bundle 的 GetBundles 一樣,Sublime Text 2 也有其用來進行 Package 控制的插件:Sublime Package Control。通過 Sublime Package Control,安裝、升級和卸載 Package 也變得輕松寫意了。
安裝 Package Control 的方法:
- 打開 Sublime Text 2,按下
Control + `調出 Console -
將以下代碼粘貼進命令行中並回車:
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()) -
重啟 Sublime Text 2,如果在
Preferences -> Package Settings中見到Package Control這一項,就說明安裝成功了。
使用 Package Control 安裝 Package 的方法將在后面用到的地方詳述。
對齊
對於某些喜歡整齊的碼農來說,看到下面這種情況可能是讓其無法忍受的:
var joe = 'joe'; var johnny = 'johnny'; var quaid = 'quaid';
一定要改成這樣才會安心:
var joe = 'joe'; var johnny = 'johnny'; var quaid = 'quaid';
TextMate 里也有這樣的功能(Option + Command + ])可以自動實現以上的對齊過程,而在 Sublime Text 2 之中,一個 Sublime Alignment 插件也可以輕松實現。
以下就通過 Package Control 來安裝這個插件:
-
按下
Shift + Command + P調出命令面板。 -
輸入
install調出Package Control: Install Package選項,按下回車。 -
在列表中找到
Alignment,按下回車進行安裝。 -
重啟 Sublime Text 2 使之生效。現在通過選中文本並按下 Shift + Command + A
Ctrl + Command + A就可以進行對齊操作了。
通過這個方法就可以簡便的安裝更多的插件,雖然目前的安裝源中插件並不是很多,但相信以后會更加豐富的。
Vim 模式
是的,Sublime Text 2 dev 版已經支持 Vim 的編輯模式了,如果更喜歡 Vim 的編輯模式,可以通過以下方法來激活 Vintage mode:
- 按下
Shift + Command + P調出命令面板。 - 輸入
user global setting調出Preferences:User Global Settings,並按下回車。 -
這時會打開一個 Global.sublime-settings 的文件,如果是第一次修改,它應該是個空文件,把以下文本粘貼進去:
{ "ignored_packages": [] } -
保存這個文件,這時按下 ESC 鍵,再按下一些你熟悉的 Vim 命令,是不是很有親切感?
無干擾模式(Distraction Free Mode)
現在的編輯器如果沒有一個無干擾模式似乎都說不過去了,在 Sublime Text 2 中,只要按下 Control + Shift + Command + F 或是在菜單 View 中選擇 Enter Distraction Free Mode 就可以進入這個 UI 最小化模式了。如果是在用 Mac OS X Lion 的話,Sublime Text 2 還同時支持 Lion 的原生全屏模式。
通過修改 “Preferences” -> “File Settings - More” -> “Distraction Free - User” 可以對防干擾模式進行一些設置:
{ "line_numbers": false, //是否顯示行號 "gutter": false, //是否顯示邊列 "draw_centered": true, //是否居中顯示 "wrap_width": 80, //換行寬度(單位:字符) "word_wrap": true, //是否自動換行 "scroll_past_end": true //滾動能否超過結尾 }
TextMate Bundle
Sublime Text 2 很給力的一點就是它同時支持一些 TextMate 的 Bundle。
Sublime Text 2 對於 TextMate Bundle 中的 Snippet 有着良好的原生支持,把 Bundle 放到 Packages 目錄里就能用。但對 Bundle 中的 command 並不支持,此外,TextMate 的色彩主題 [1] 也是可以放到 Packages 目錄里直接用的。估計隨着 Sublime Text 2 越來越火,會有更多 TextMate 的 Bundle 被移植過來。
主題
這里所講的主題不同於針對代碼的 Color Scheme,是指針對 Sublime 程序本身的主題,目前可以安裝的是 Ian Hill 的 Soda。
因為源中已經添加,所以這款主題的安裝同樣可以通過 Package Control,非常方便。目前 Soda 主題提供了明暗兩種風格。
激活方法,同樣要修改 User Global Settings:
-
按下
Shift + Command + P調出命令面板。 -
輸入
user global setting調出Preferences:User Global Settings,並按下回車。 -
添加以下代碼激活 Soda Light 主題:
{ "theme": "Soda Light.sublime-theme" }添加以下代碼激活 Soda Dark 主題:
{ "theme": "Soda Dark.sublime-theme" } -
保存生效。
命令行工具
和 TextMate 和 MacVim 一樣,Sublime Text 2 也提供了很方便的命令行工具以方便通過終端來快速的調用 Sublime Text 2 程序來打開文件/目錄/項目等。
要使用命令行工具,你需要創建一個符號鏈接,在終端(Terminal.app)中運行:
ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl
然后運行 subl --help 可以查看 subl 命令的使用方法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
總結
在試用 Sublime Text 2 的過程中,“快”和“順”是給 Lucifr 最強烈的感受,就如同 Chrome 瀏覽器一樣,Sublime 的各種操作都給人以很流暢的感受。良好的中文支持也是 TextMate 所不具備的,雖然以目前的插件數量和質量還不能完全替代 TextMate,但還是讓人十分期待的。唯一讓人糾結的是價格,$59 的注冊價確實不便宜(明顯是照着 TextMate 的 $58 加一塊定的嘛),好在目前測試階段還可以無限試用。
更多 Sublime Text 2 相關文章,請關注這里。
sublime配置全攻略
大家好,今天給大家分享一款編輯器:sublime text2
我用過很多編輯器,
EditPlus、EmEditor、Notepad++、Notepad2、UltraEdit、Editra、Vim,還有包括netbeans , zendstudio, dreamweaver 等。 最后我遇見了sublime text。 sublime是我見過的最好的編輯器,大型IDE能實現的功能, 用sublime裝上相應插件,都能實現。 它是一個小型編輯器, 運行速度很快。現在是鼓起勇氣換掉你以前編輯器的時候了。如果你以前沒有聽說過sublime, 可以看看這個介紹視頻:http://v.youku.com/v_show/id_XMzU5NzQ5ODgw.html
sublime本身功能有限,我們需要裝上一些插件使其變得強大。sublime在各個操作系統下都可以運行,但在linux下運行需要注意中文輸入的問題。 下面我主要介紹一下常用插件、配置的建議以及在linux下運行的注意事項。
一,常用插件
1,package control。 我們用sublime幾乎都會首先安裝這個插件,這個插件是管理插件的功能,先安裝它,再安裝其他插件就方便了。 安裝方法:
點擊sublime的菜單欄 view->show console ;現在打開了控制台, 這個控制台有上下兩欄, 上面一欄會實時顯示sublime執行了什么插件,輸出執行結果, 如果你安裝的某個插件不能正常運行,應該先在這里看看有沒有報錯。下面欄是一個輸入框,可以運行python代碼。我們輸入下面的代碼點擊回車運行, 就能安裝好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 回車 ,需要稍定一會兒,右下角狀態欄會顯示正在連接的提示文字。 使用sublime時注意看右下角狀態欄,很多插件的提示信息都顯示在這里,這個狀態欄很小,初次使用的人都有可能沒有注意到它。
稍等一會兒后,它會出現一個插件列表, 你也可以在輸入框中輸入文字進行搜索插件。 搜索到自己想安裝的插件,再選擇它,回車。 就自動給你安裝好了。
如果要卸載插件, 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時對它的環境還不是很熟悉,所有我在這里說得有點多, 簡單總結一下前面說的。
控制台的作用: 可以在這里執行python代碼,和查看一些執行結果,如果插件運行不正常,可以在這里看看有沒有報錯。
右下角狀態欄: 很多提示信息都會顯示在那里,注意經常查看。
萬能面板:所有的操作都可以在這里進行,又可以在這里輸入命令,又可以在這里查找文件,也可以在這里查找函數等等。
安裝插件的方式:除了package control 安裝還可以手動安裝。
2,ctags。 這個插件能跨文件跳轉,跳轉到指定函數聲明的地方。 使用package control 搜索ctags 進行安裝(安裝ctags插件就可以了, 還有一個 CTags for PHP 插件沒什么用)。注意安裝好插件后要需要安裝ctags命令。window 下載 ctags.exe http://vdisk.weibo.com/s/7QZd7 。 將ctags.exe文件放在一個環境變量能訪問到的地方。打開cmd, 輸入ctags,如果有這個命令,證明成功了。 ubuntu下安裝運行命令:sudo apt-get install exuberant-ctags 。
然后在sublime項目文件夾右鍵, 會出現Ctag:Rebuild Tags 的菜單。點擊它,然后會生成.tags的文件。
然后在你代碼中, 光標放在某個函數上, 點擊ctrl+shift+鼠標左鍵 就可以跳轉到函數聲明的地方。
3, sublimecodeintel 代碼提示。 sublime默認的代碼提示只能提示系統函數,用戶自己創建的函數、類不能提示。 如果想要提示自己建立的函數。 可以安裝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 需要系統有php命令。 所以需要設置好php的環境變量。 sublimelint的語法錯誤提示是顯示在狀態欄上面的,所以在編寫程序的時候注意時常看看狀態欄。 而Phpcs的語法錯誤提示是在我們保存文件時彈出萬能面板顯示錯誤,sublimelint的錯誤提示實時但不明顯。 Phpcs的錯誤提示不是實時的,但很明顯。 因此我們一般這兩個插件都要安裝。 Phpcs除了代碼提示的共,還有其他功能,但是我暫時沒有弄明白其他功能怎么用, 大家可以去研究一下,如果知道怎么用了再告訴我一下。
5,goto document。 這個插件能幫助我們快速查看手冊。 比如我們在寫php代碼時, 突然忘記了某個函數怎么用了,將鼠標放在這個函數上,然后按F1,它能快速打開PHP手冊中說明這個函數用法的地方。
安裝好 goto document插件后我們再配置快捷鍵F1 跳轉到文檔。 打開sublime的菜單欄Preferences->key bindings -User 設置快捷鍵:
- [
- { "keys": ["f1"], "command": "goto_documentation" }
- ]
這樣設置后, 按F1就能跳轉到文檔了。
6,function name display。 這個插件可以在狀態欄顯示出當前光標處於哪個函數中。
7,GBK Encoding Support 。 sublime本身不支持GBK編碼, 可以安裝這個插件讓它支持。
8,SVN插件。windows下可以安裝Tortoise和 Tortoisesvn的客戶端。然后在sublime中在目錄或文件右鍵都可以提交svn了。 在ubuntu下可以安裝rabbitvcs 結合這個插件:https://github.com/kervin/sublime-svn/downloads 實現同樣的功能。
9,gist。我們建立html文件時,做有些相同的代碼。 這時候我們喜歡能有一個代碼模板, 不能寫重復相同的代碼, gits插件能實現代碼模板的功能。 它能見我們自己創建的代碼模板,代碼片段保持在github中的gist下。http://lucifr.com/2012/03/07/sub ... al-snippet-manager/ 這里介紹了詳細的用法。
10,代碼注釋格式化。
additional PHP snippet插件能提示phpdocument格式的代碼
還能快速輸出開源協議, 輸入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卻又相應的插件能實現xdebug的功能。
你的PHP需要安裝xdebug擴展。使用時需要在項目目錄下建立一個.sublime-project文件
- {
- "folders":
- [
- {
- "path": "D:\ysd\ysdv8"
- },
- ],
- "settings": {
- "xdebug": { "url": "http://yunshangdian.com" }
- }
- }
path配置項配置了程序所在路徑。
注意給程序設置斷點。否則不能見效果。 詳細用法見: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 。 此時會出現左右兩欄的布局。
再按alt+shift+`(`鍵是tab鍵上面個鍵), 此時會復制一份當前文件, 再把新復制的那份文件拖動到右欄。 這樣就實現了同一文件左右兩欄同時打開了。
切換回一欄布局,按 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獨立到一個單獨的工作區中來暫時解決這個問題。
windows7 下sublime text的PHP開發環境
現在在開發一個PHP項目,函數跳轉是一個大問題,每次全文搜索也實在是太讓人郁悶
剛好現在用的是Sublime text,最近剛找到的神器,它里面有Ctags功能,不過還需要尋找到合適PHP的ctags.exe
下面是一些資源的位置:
http://untidy.net/blog/2006/10/04/ctags-php-5-support/ 支持PHP5的ctags
1、在Sublime text中安裝ctags擴展.
2、下載 http://untidy.net/blog/2006/10/04/ctags-php-5-support/ 中的ctags,放置在Path路徑能夠找到的地方
3、在項目根目錄運行
ctags -R -f .tags
過一會就會在項目根目錄生成一個.tags的文件
D:\DEV>dir .tags 2012/04/19 12:51 12,983,350 .tags 1 個文件 12,983,350 字節
有點大,大概有12M
最后記錄一下常用的快捷鍵
跳到定義處使用”ctrl+t ctrl+t” or ”Ctrl+Alt+]”
跳回來使用”ctrl+t ctrl+b” or ”Ctrl+Alt+[“






