看了 Nettuts+ 對 Sublime Text 2 的介紹,立刻就興奮了,誠如作者 Jeffrey Way 所說:“《永遠的毀滅公爵》都發布了,TextMate 2 還沒發”,你還能指望它麼?TextMate 開發者的消極態度已經無法讓人忍受了。而作爲一款跨 OS X、Linux 和 Windows 三大系統平臺的文字編輯器,Sublime Text 2 功能日進,大有取 TextMate 而代之的勢頭,
以下就將 Nettuts+ 的這篇文章做一粗略翻譯,固然不是面面俱到,用做入門卻是足夠了。以下均是以 Mac 版本爲主,但對 Windows 和 Linux 版來說也是相通的。
內容列表 |
---|
換個耐看點些的圖標 |
嘗試開發版本 |
快捷的命令面板 |
即時的文件切換 |
隨心所欲的跳轉 |
多重選擇(Multi-Selection) |
縮進指示(Indent Guide) |
安裝包控制(Package Control) |
對齊 |
Vim 模式 |
無干擾模式(Distraction Free Mode) |
TextMate Bundle |
主題 |
命令行工具 |
總結 |
換個耐看點些的圖標
更新:更多可用替換圖標
Sublime Text 2 目前還處於測試階段,默認的黑方塊圖標看起來實在不夠養眼,Nate Beaty 製作了一個不錯的替代品。
Mac 下的替換方法:
- 在
應用程序
目錄中找到 Sublime Text 2,按住 Ctrl 並點擊之,在彈出的菜單中選擇“顯示包內容”。 - 進入
Contents/Resources/
目錄,用新下載的圖標替換Sublime Text 2.icns
。
嘗試開發版本
Sublime Text 2 目前更新十分活躍,如果想要嘗試最新的功能,建議下載並安裝 dev 版本。
快捷的命令面板
和 TextMate 類似,Sublime Text 2 也提供了很方便的命令調用方式:Command Palette(命令面板)。調用方法:直接在 Tool
菜單中選擇 Command
Palette
,或是用快捷鍵:Shift + Command +
P
,輸入命令名稱(中的字母)就可以實時搜索到相應的命令、選項、snippet 和 syntex, 按下回車就可以直接執行,減少了查找的麻煩。
即時的文件切換
按下 Command + P
(Mac) 或是 Ctrl
+ P
(Windows),輸入想要切換到的文件的文件名,都不用按下回車鍵,目標文件就已經展現在眼前了,雖然 Vim 配合 PeepOpen 也可以實現同樣的功能,但速度卻遠沒有這麼迅速。
隨心所欲的跳轉
Cmd+P
之所以被叫做 Goto Anything 並不是虛名:
- 用
Command+P
可以快速跳轉到當前項目中的任意文件,可進行關鍵詞匹配。 - 用
Command+P
後@
(或是Command+R
)可以快速列出/跳轉到某個函數(很爽的是在 markdown 當中是匹配到標題,而且還是帶縮進的!)。 - 用
Command+P
後#
可以在當前文件中進行搜索。 - 用
Command+P
後:
(或是Ctrl+G
)加上數字可以跳轉到相應的行。 - 而更酷的是你可以用
Command+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 的方法:
更新(2013-08-17):更新了針對 Sublime Text 2 和 Sublime Text 3 的安裝代碼。
- 打開 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; 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')
-
Sublime Text 3 請使用以下代碼:
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())
-
重啓 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 + ACtrl + Command + A
就可以進行對齊操作了。
通過這個方法就可以簡便的安裝更多的插件,雖然目前的安裝源中插件並不是很多,但相信以後會更加豐富的。
Vim 模式
是的,Sublime Text 2 dev 版已經支持 Vim 的編輯模式了,如果更喜歡 Vim 的編輯模式,可以通過以下方法來激活 Vintage mode:
-
按下
Shift + Command + P
調出命令面板。 -
輸入
settings user
調出Preferences:Settings - User
,並按下回車。以上兩步也可以直接用
cmd + ,
完成。 -
這時會打開一個 Preferences.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 主題提供了明暗兩種風格。
激活方法,同樣要修改 Preferences:Settings - User:
-
按下
Shift + Command + P
調出命令面板。 -
輸入
user settings
調出Preferences:Settings - User
,並按下回車。 -
添加以下代碼激活 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
|
使用: subl [參數] [文件] 編輯指定文件 或: subl [參數] [目錄] 打開指定目錄 或: subl [參數] - 編輯 stdin 可用參數: --project <項目>: 讀取指定項目 --command <命令>: 運行指定命令 -n 或 --new-window: 打開新窗口 -a 或 --add: 向當前窗口中添加文件夾 -w 或 --wait: 等待文件關閉後再返回 -b 或 --background: 不激活程序窗口 -s 或 --stay: 關閉文件後保持程序窗口激活 -h 或 --help: 顯示此幫助 -v 或 --version: 顯示版本號 讀取 stdin 時會使用 --wait 參數。通過 --stay 可以在文件關閉後不返回終端(僅針對單個文件)。 可以通過向文件名添加 `:行號` 或 `:行號:列號` 後綴來打開到更具體的位置。
|
總結
在試用 Sublime Text 2 的過程中,“快”和“順”是給 Lucifr 最強烈的感受,就如同 Chrome 瀏覽器一樣,Sublime 的各種操作都給人以很流暢的感受。良好的中文支持也是 TextMate 所不具備的,雖然以目前的插件數量和質量還不能完全替代 TextMate,但還是讓人十分期待的。唯一讓人糾結的是價格,$59 的註冊價確實不便宜(明顯是照着 TextMate 的 $58 加一塊定的嘛),好在目前測試階段還可以無限試用。
原文轉自:http://lucifr.com/2011/08/31/sublime-text-2-tricks-and-tips/