零、sublime的优势
- 容易上手
- 支持多点编辑
- 包管理:Package Control
- 速度快
- 深度可订制,配置文件放github上 sublime-config
- 快速文件切换 cmd + p 输入文件名
- cmd + shift + p 打开命令面板
- 启用vim模式
- 学的是习惯技巧,sublime死了,技巧习惯可配置到其他编辑器
- 社区活跃
一、安装
以下操作均是在Mac环境下操作的。
1.1 下载安装
Mac下的安装,官网:
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
四、安装扩展包
4.1 安装Package Control
上这个网站上复制一段安装脚本
打开工作台(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 方法名
输入cont:199 行号
输入cont#aa 查找字符串
5.2 查找与替换
本文件中查找:cmd + f 查找替换:cmd + alt + f
目录中查找:cmd + shift + f 下一个/上一个匹配项f4/shift + f4
跳回到上一次操作位置:ctrl + -/ctrl + shift + -
六、代码补齐
6.1 Emmet插件
安装Emmet插件,没有安装就有了?
帮助文档
6.1.1 常用操作
p20 tabm-0-auto tab.nav tab#nav tab.sidebar>.nav tabul.nav>li*5 tab
6.1.2 wrap with abbreviation功能
选中单词,打开命令面板,输入wrap,.sidebar>.nav
6.1.3 删除标签
选中单词,打开命令面板,输入remove,回车,cmd + ',断续删除
在线编辑,也支持类似功能
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
top text.html.markdown
查看文件的scope
alt + cmd + p
6.3 Completions files 补全文件
参考:
丰富的补全文件:
保存文件名为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. Snippets2. API-injected completions via on_query_completions() 通过 API on_query_completions() 设置的内容,这个咱们暂时不管3. Completions files 专门的自动补全文件,也就是 xxx.sublime-completions4. 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 现在就可以用来输入换行了。
七、批处理任务
测试、编译、执行
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:
八、启用vim模式
打开命令面板,输入Settings,找到基本配置文件:Preferences.sublime-settings,加入以下配置(默认情况下,会有这一项Vintage):
"ignored_packages":[],
参考
- 英文文档
- 中文文档
- 博客
- 视频