引言
第一次看到Sublime Text就被其風格吸引,配色豐富缺不混亂,多加了解之后發(fā)現其強大遠不止一個主題配色那么簡單...
最近折騰python,習慣了IntellJ idea,用了他們家的python IDE——pycharm,體驗并沒有idea好,體積依然厚重,但是自動補全不如ipython,琢磨使用Sublime Text 3(簡寫ST3)配合插件搭建一個環(huán)境,效果不差。
插件篇
package control 便利安裝其他插件,現成教程很多不贅述
SideBarEnhancements 側邊欄菜單右鍵增強(方便拷貝文件名/路徑,快捷使用指定程序打開文件等)(ctrl + k + b打開側邊欄)
Anaconda 它的format,find_usage,show_document都非常好用,安裝了它之后不在需要重復安裝Python PEP8 Autoformat了(這里只是ST3的插件,不是那個非常好用的python發(fā)行版)(最近又安裝了一次anaconda的format失效了,多裝一個PEP8 autoformat也OK)
文檔:http://damnwidget.github.io/anaconda/#carousel-features
Windows: ST3 -> Preference -> Package setting -> Anaconda -> Setting User
OS X:雷同
在Anaconda.sublime-settings:
{
//由于Anaconda插件本身無法知道Python安裝的路徑,所以需要設置Python主程序的實際位置
"python_interpreter": "C:/Program Files (x86)/python27/python.exe",
//ST3也有自動補全提示,但只提示文件中輸入過的單詞,這個功能可用提示變量可用的函數等。
"suppress_word_completions": true,
"suppress_explicit_completions": true,
"complete_parameters": true,
//代碼排版時,行的默認長度太短,根據喜好設置
"pep8_max_line_length": 120,
// 自動格式化執(zhí)行的時限,設置太短時,遇到太多行的文件會timeout失敗
"auto_formatting_timeout": 5
}
快捷鍵篇
ST3本身就又很多非常好用的快捷鍵,一個比較全的匯總是
http://www.jqhtml.com/6511.html, 也可以直接去ST3的設置中看。
除去這些之外,為了配合我在IntellJ Idea IDE中的使用習慣和啟用插件中沒有快捷鍵的功能,我自定義以下快捷鍵:
-
鍵盤-快捷鍵
Windows: Preference -> Key Bindings (右側用戶設置中添加如下JSON)
OS X:雷同
Default (Windows).sublime-keymap:
[
//格式化這種頻繁的操作需要一個快捷鍵
{"command": "anaconda_auto_format", "keys": ["ctrl+alt+l"], "context": [
{"key": "selector", "operator": "equal", "operand": "source.python"}
]},
//快速找到調用當前變量/函數的位置
{"command": "anaconda_find_usages", "keys": ["ctrl+f7"], "context": [
{"key": "selector", "operator": "equal", "operand": "source.python"}
]},
//不太靈敏,不能反復重命名同一個變量,不是命令的問題,使用右鍵也有同樣的效果,總比肉眼一個個替換好,如果有人知道更好的rename插件,求指教啊
{"command": "anaconda_rename", "keys": ["shift+f6"]},
//當前行下新增一行,原為 ctrl+enter
{ "keys": ["shift+enter"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Add Line.sublime-macro"} },
//這切換到上一次光標在的地方,快捷操作離不開的功能
{ "keys": ["ctrl+alt+right"], "command": "jump_forward" },
//與上一個相反
{ "keys": ["ctrl+alt+left"], "command": "jump_back" }
]
-
鼠標-快捷鍵
Windows: %appdata%\Sublime Text 3\Packages\User下新建Default (Windows).sublime-mousemap文件
OS X: 雷同,但是我配置了一次,并不成功,估計是和系統(tǒng)的配置沖突了,待解決
//加入ctrl+單擊 跳轉到變量/函數定義 的快捷方式,這很IDE。(ST3本身有 跳轉到函數/變量的定義 的功能,但是需要多操作一步,快捷鍵ctrl+r)
Default (Windows).sublime-mousemap:
[
{
"button": "button1",
"count": 1,
"modifiers": ["ctrl"],
"press_command": "drag_select",
"command": "anaconda_goto"
}
]
其他設置
將tab鍵替換為4個空格,Anaconda會使用空格格式化,當tab和空格一起存在的時候,python報 縮進不能識別錯誤。
Sublime Text -> Preferences -> Settings - User中添加
{
"tab_size": 4,
"translate_tabs_to_spaces": true
// 其他匹配:
"font_size": 9,
"ignored_packages":
[
"Vintage"
],
"word_wrap": true, //自動換行,方便看長文本
"update_check": false
}
小Tips——宏錄制查看Command
在設置Anaconda插件時,遇到很多功能在右鍵,每次想用其實有點麻煩,想配置快捷鍵,但是不知道command指令是什么,查詢了官網沒有找到,也找插件的日志打印也沒有找到(求指導~),最后摸索出了用宏錄制的方式查看command,如果有看官想設置其他右鍵中功能的快捷鍵,可以試試這個方式:
-
在Tools中開啟宏錄制
使用要查看的功能,我這里就是右鍵使用Anaconda的rename功能
點擊 Stop Recording Macro 停止錄制

- 點擊 Save Macro 保存宏錄制到一個文本中
-
打開文本,可以看到錄制過程中用到的命令,指令名get
- 在設置中添加command以及對應的快捷鍵 或者 其他什么用都OK了
結語
配置的東西不多,但是感覺很有IDE的feel了,如果有新發(fā)現會更新的。
對于ST3配置有什么更好的建議或者疑問歡迎反饋,文中有任何錯誤都歡迎打臉 ^ _ ^

