sublime速查手冊
零、sublime的優勢
- 容易上手
- 支持多點編輯
- 包管理:Package Control
- 速度快
- 深度可訂制,配置文件放github上 sublime-config
- 快速文件切換 cmd + p 輸入文件名
- cmd + shift + p 打開命令面板
- 啟用vim模式
- 學的是習慣技巧,sublime死了,技巧習慣可配置到其他編輯器
- 社區活躍
一、安裝
以下操作均是在Mac環境下操作的。
1.1 下載安裝
Mac下的安裝,官網:http://www.sublimetext.com
brew cask install sublime-text
1.2 打開sublime
圖形界面打開
按cmd + space快捷鍵,再輸入sublime
命令行打開
# 輸入subl即可,好多安裝方式都會創建sublime的鏈接並加入到/usr/local/bin目錄下
subl
# 如果沒有這個命令可以手動創建軟鏈
ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl
說明
不購買,會經常彈出提示框 買個license,help-->enter license
1.3 簡單使用
配置的備份與恢復
- 打開sublime subl
- 打開一個目錄,打開
- 顯示左側目錄樹面板:side bar
- 打開命令面板:cmd + shfit + p ,輸入side bar
- 命令快捷鍵:cmd + k,cmd + b
- 放大/減小字體:cmd + +/cmd + -
## 二、快捷鍵
2.1 常用快捷鍵
打開新的tab cmd + n 切換tab ctrl + tab 下一行合並到當前行 cmd + j 左/右縮進 cmd + ]/cmd + [ 選擇當前行 cmd + l 復制 cmd + c 粘貼 cmd + v 撤銷 cmd + z 加/取消註釋 cmd + / 當前行之後/前開辟一行 cmd + enter/shift + cmd + enter 塊選擇,進入多點編輯模式 option + 選中文本 移動粒度 right以字符為單位 alt + right以單詞為單位 cmd + left/right移動到行首/尾 up/down可以上下左右移動 切換語法驗證類型 cmd + shift + p 輸入css ,選中Syntax:css 打開左側目錄樹面板 cmd + k,cmd + b 選中光標所在位置單詞,持續按則會選中下一個相同的單詞 cmd + d
2.2 命令綁定到快捷鍵
打工命令面板(cmd + shift + p),輸入key bindings,選擇Key Bindings - User,輸入如下內容
[
{ "keys": ["shift+tab"], "command": "reindent", "args": {"single_line": false} },
]
2.3 工作臺查看命令日誌
打開工作臺 ctrl + `,輸入 sublime.log_commands(True)
這樣所有的執行記錄都會在工作臺上輸出
三、自定制
3.1 找到sublime的配置目錄
Sublime Text -> Preferences -> Browse Packages...
# 下面是具體的目錄,類似於vim的.vim目錄 pwd
/Users/snddfhv/Library/Application Support/Sublime Text 3/Packages/User
# 該目錄下有如下配置
# 快捷鍵綁定的配置
-rw-r--r-- 1 x staff 144B 5 10 23:26 Default (OSX).sublime-keymap
# sublime的基本配置
-rw-r--r-- 1 x staff 509B 5 10 23:35 Preferences.sublime-settings
# 擴展包的安裝信息
-rw-r--r-- 1 x staff 160B 5 10 23:15 Package Control.sublime-settings
3.2 快捷鍵綁定配置文件
Default (OSX).sublime-keymap
[
{ "keys": ["shift+tab"], "command": "reindent", "args": {"single_line": true} },
{ "keys": ["alt+space"], "command": "auto_complete" },
]
3.3 基本配置文件
Preferences.sublime-settings
{
"color_scheme": "Packages/Color Scheme - Default/Monokai.sublime-color-scheme",
"auto_complete": true,
"auto_complete_commit_on_tab": true,
"file_exclude_patterns":
[
".DS_Store",
"*.sublime-workspace",
"*.scssc"
],
"folder_exclude_patterns":
[
".git",
"log",
"tmp/cache",
".vagrant"
],
"font_size": 16,
"ignored_packages":
[
"Vintage"
],
"line_padding_bottom": 1,
"line_padding_top": 1,
"tab_size": 2,
"theme": "Adaptive.sublime-theme",
"translate_tabs_to_spaces": true
}
其他配置說明
"line_numbers": false, //是否顯示行號
"gutter": false, //是否顯示邊列
"draw_centered": true, //是否居中顯示
"wrap_width": 80, //換行寬度(單位:字符)
"word_wrap": true, //是否自動換行
"scroll_past_end": true //滾動能否超過結尾
3.4 配置信息備份github
https://gitee.com/yysue/sublime-config
四、安裝擴展包
4.1 安裝Package Control
https://packagecontrol.io/installation
上這個網站上復制一段安裝腳本
打開工作臺(Ctrl+`),粘貼安裝腳本
可能會重啟
4.2 安裝擴展
安裝步驟:
打開命令面板(cmd+shift+p),輸入install package回車,
等待加載插件列表,輸入要安裝的插件名,回車
4.2.1 AdvancedNewFile
新建文件:alt+cmd+n
4.2.2 Git
先打開命令模板,再輸入git 命令
在填寫commit結束時,按cmd + w結束填寫
4.2.3 SyncedSideBar
當前編輯的文件在左側目錄樹中同步選中
4.3 擴展包的安裝配置文件
Package Control.sublime-settings
{
"in_process_packages":
[
],
"installed_packages":
[
"AdvancedNewFile",
"Git",
"RailsCasts Colour Scheme",
"SyncedSideBar",
"VimModelines"
]
}
五、快速查找文件與字符串
5.1 打開一個文件
cmd + p,輸入READ,回車
輸入cont@aaa 方法名
輸入cont:199 行號
輸入cont#aa 查找字符串
5.2 查找與替換
本文件中查找:cmd + f 查找替換:cmd + alt + f
目錄中查找:cmd + shift + f 下一個/上一個匹配項f4/shift + f4
跳回到上一次操作位置:ctrl + -/ctrl + shift + -
六、代碼補齊
6.1 Emmet插件
安裝Emmet插件,沒有安裝就有了?
幫助文檔 https://docs.emmet.io/cheat-sheet/ https://docs.emmet.io/actions/
6.1.1 常用操作
p20 tab
m-0-auto tab
.nav tab
#nav tab
.sidebar>.nav tab
ul.nav>li*5 tab
6.1.2 wrap with abbreviation功能
選中單詞,打開命令面板,輸入wrap,.sidebar>.nav
6.1.3 刪除標簽
選中單詞,打開命令面板,輸入remove,回車,cmd + ‘,斷續刪除
https://codepen.io/ 在線編輯,也支持類似功能
6.2 Snippet 代碼片段
tools -> Developer -> New Snippet
6.2.1 配置說明
- 內容 content
- 光標停頓位置${1:默認值} tab可在位置間切換
- 觸發詞 tabTrigger
- 對哪些文件有效 scope text.html.markdown
- 保存成jekyll-header.sublime-snippet 後綴必須是.sublime-snippet
- 自動保存到User目錄下
Snippet的配置文件:jekyll-header.sublime-snippet
<snippet>
<content><![CDATA[
---
layout: default
title: ${1:標題}
---
${2}
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<tabTrigger>top</tabTrigger>
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<scope>text.html.markdown</scope>
</snippet>
查看文件的scope
alt + cmd + p
6.3 Completions files 補全文件
參考:http://docs.sublimetext.info/en/latest/reference/completions.html
豐富的補全文件:https://www.sublimecodeintel.com/SublimeCodeIntel
保存文件名為all.sublime-completions
{
// completions 的設置有時候會失靈 ( Mac Yosemite + sublime3 )不行就改成 snippet 吧,那個還是一直都很好用
"scope": "text.html.markdown",
"completions":
[
{ “trigger”: "hhh", "contents": "{% highlight ${1:ruby} %\n${2}\n{% endhighlight %}}"},
{ "trigger": "l", "contents": "[${1}](${2})${3}" },
{ "trigger": "media", "contents": "![](http://media.happycasts.net/pic/${1}.png)" }
],
// "scope": "source.css",
// "completions":
// [
// { "trigger": "xxx", "contents": "xxx" },
// ]
}
6.4 tab補齊規則
設置語法 ,打開命令面板,輸入 Set Synatx html
6.4.1 觸發詞 + tab
Setting - Default中有如下默認配置:
"tab_completion": true,
意思是打開一個文件,敲一個觸發詞,然後敲 tab 是能補全成一個片段的。
tab補全功能會在下面4個地方找觸發詞,參考這裏
1. Snippets
2. API-injected completions via on_query_completions()
通過 API on_query_completions() 設置的內容,這個咱們暫時不管
3. Completions files
專門的自動補全文件,也就是 xxx.sublime-completions
4. Words in the buffer
當前文件中已經敲過的詞
上面4個地方找到的觸發詞可能出現在補全列表上,如何觸發補全列表呢?
6.4.2 觸發詞前綴 + alt + space
默認是ctrl + space,這與系統中切換中英文輸入法沖突,改為alt + space
在keymap - User中添加如下配置:
{ "keys": ["alt+space"], "command": "auto_complete" },se
6.5 自動補全
Setting - Default中有如下默認配置:
"auto_complete": true,
功能是輸入了觸發詞,那麽不用敲 tab ,就可以顯示可能的觸發詞了(補全列表),默認只要敲 Enter或Tab 就可以補全了。
但是,自動補全的不是在每種文件類型中都會被觸發的,Settings Default 中是這樣設置的
// Controls what scopes auto complete will be triggered in
"auto_complete_selector": "source - comment, meta.tag - punctuation.definition.tag.begin",
// Additional situations to trigger auto complete
"auto_complete_triggers": [ {"selector": "text.html", "characters": "<"} ],
有一個問題,自動補全生效的時候,回車就不能用來換行了,怎麽解決?
在setting - User中添加如下配置,默認是false:
"auto_complete_commit_on_tab": true,
這樣就可以敲 tab 來補全,而 Enter 現在就可以用來輸入換行了。
七、批處理任務
測試、編譯、執行
http://sublime-text-unofficial-documentation.readthedocs.io/en/latest/reference/build_systems.html
7.1 chrome打開html文件
Tools -> Build System -> New Build System -> ...
保存文件名為bowse.sublime-build
{
"cmd": ["/Applications/Google Chrome.app/Contents/MacOS/Google Chrome", "$file"],
"selector": "text.html"
}
build Tools/Build System
cmd + b
7.2 build 我的 jekyll 頁面
這是參考文章的一個demo:http://happypeter.github.io/happysublime/10_build.html
八、啟用vim模式
打開命令面板,輸入Settings,找到基本配置文件:Preferences.sublime-settings,加入以下配置(默認情況下,會有這一項Vintage):
"ignored_packages":[],
參考
- 英文文檔 http://www.sublimetext.com/docs/3/projects.html
- 中文文檔 http://feliving.github.io/Sublime-Text-3-Documentation/
- 博客 http://happypeter.github.io/happysublime/
- 視頻 imooc bilibili
sublime速查手冊