编码(Coding)
优秀的编辑器使编码变的更加容易,所以 Sublime Text 提供了一系列功能以提高开发效率。
良好实践(Good Practices)
良好的代码应该是规范的,所以 Google 为每一门主流语言都设置了其代码规范(Code Style Guideline)。我自己通过下面的设置使以规范化自己的代码。
// 设置tab的大小为2
"tab_size": 2,
// 使用空格代替tab
"translate_tabs_to_spaces": true,
// 添加行宽标尺
"rulers": [80, 100],
// 显示空白字符
"draw_white_space": "all",
// 保存时自动去除行末空白
"trim_trailing_white_space_on_save": true,
// 保存时自动增加文件末尾换行
"ensure_newline_at_eof_on_save": true,
代码段(Code Snippets)
Sublime Text 支持代码段(Code Snippet),输入代码段名称后Tab即可生成代码段。
你可以通过 Package Control 安装第三方代码段,也可以自己创建代码段。
格式化(Formatting)
Sublime Text 基本的手动格式化操作包括:Ctrl + [
向左缩进,Ctrl + ]
向右缩进,此外Ctrl + Shift + V
可以以当前缩进粘贴代码(非常实用)。
除了手动格式化,我们也可以通过安装插件实现自动缩进和智能对齐:
- HTMLBeautify:格式化 HTML。
- AutoPEP8:格式化 Python 代码。
- Alignment:进行智能对齐。
自动完成(Auto Completion)
Sublime Text 支持一定的自动完成,按 Tab 自动补全。
括号(Brackets)
编写代码时会碰到大量的括号,利用Ctrl + M
可以快速的在起始括号和结尾括号间切换,Ctrl + Shift + M
则可以快速选择括号间的内容,对于缩进型语言(例如 Python )则可以使用Ctrl + Shift + J
。
此外,我使用 BracketHighlighter
插件以高亮显示配对括号以及当前光标所在区域,效果如下:
命令行(Command Line)
尽管提供了 Python 控制台,但 Sublime Text 的控制台仅支持单行输入,十分不方便,所以我使用SublimeREPL
以进行一些编码实验(Experiments)。
其它(Miscellaneous)
尽管我试图在本文包含尽可能多的 Sublime Text 实用技能,但受限于篇幅和我的个人经验,本文仍不免有所遗漏,欢迎在评论里指出本文的错误及遗漏。
下面是一些可能有用但我很少用到的功能:
- 宏(Macro):Sublime Text 支持录制宏,但我在实际工作中并未发现宏有多大用处。
- 其它平台(Other Platforms):本文只介绍了 Windows 平台上 Sublime Text 的使用,不过 Linux 和 OS X 上 Sublime Text 的使用方式和 Windows 差别不大,只是在快捷键上有所差异,请参考 Windows/Linux 快捷键和 OS X 快捷键。
- 项目(Projects):Sublime Text 支持简单的项目管理,但我一般只用到文件夹。
- Vim模式(Vintage):Sublime Text 自带 Vim 模式。
- 构建(Build):通过配置,Sublime Text 可以进行源码构建。
- 调试(Debug):通过安装插件,Sublime Text 可以对代码进行调试。
快捷键列表(Shortcuts Cheatsheet)
我把本文出现的Sublime Text按其类型整理在这里,以便查阅。
通用(General)
- ↑↓←→:上下左右移动光标,注意不是不是 KJHL!
- Alt:调出菜单
- Ctrl + Shift + P:调出命令板(Command Palette)
- Ctrl + `:调出控制台
编辑(Editing)
- Ctrl + Enter:在当前行下面新增一行然后跳至该行
- Ctrl + Shift + Enter:在当前行上面增加一行并跳至该行
- Ctrl + ←/→:进行逐词移动
- Ctrl + Shift + ←/→进行逐词选择
- Ctrl + ↑/↓移动当前显示区域
- Ctrl + Shift + ↑/↓移动当前行
选择(Selecting)
- Ctrl + D:选择当前光标所在的词并高亮该词所有出现的位置,再次Ctrl + D选择该词出现的下一个位置,在多重选词的过程中,使用Ctrl + K进行跳过,使用Ctrl + U进行回退,使用Esc退出多重编辑
- Ctrl + Shift + L:将当前选中区域打散
- Ctrl + J:把当前选中区域合并为一行
- Ctrl + M:在起始括号和结尾括号间切换
- Ctrl + Shift + M:快速选择括号间的内容
- Ctrl + Shift + J:快速选择同缩进的内容
- Ctrl + Shift + Space:快速选择当前作用域(Scope)的内容
查找&替换(Finding&Replacing)
- F3:跳至当前关键字下一个位置
- Shift + F3:跳到当前关键字上一个位置
- Alt + F3:选中当前关键字出现的所有位置
- Ctrl + F/H:进行标准查找/替换,之后:
- Alt + C:切换大小写敏感(Case-sensitive)模式
- Alt + W:切换整字匹配(Whole matching)模式
- Alt + R:切换正则匹配(Regex matching)模式
- Ctrl + Shift + H:替换当前关键字
- Ctrl + Alt + Enter:替换所有关键字匹配
- Ctrl + Shift + F:多文件搜索&替换
跳转(Jumping)
- Ctrl + P:跳转到指定文件,输入文件名后可以:@ 符号跳转:输入@symbol跳转到symbol符号所在的位置# 关键字跳转:输入#keyword跳转到keyword所在的位置: 行号跳转:输入:12跳转到文件的第12行。
- Ctrl + R:跳转到指定符号
- Ctrl + G:跳转到指定行号
窗口(Window)
- Ctrl + Shift + N:创建一个新窗口
- Ctrl + N:在当前窗口创建一个新标签
- Ctrl + W:关闭当前标签,当窗口内没有标签时会关闭该窗口
- Ctrl + Shift + T:恢复刚刚关闭的标签
屏幕(Screen)
- F11:切换普通全屏
- Shift + F11:切换无干扰全屏
- Alt + Shift + 2:进行左右分屏
- Alt + Shift + 8:进行上下分屏
- Alt + Shift + 5:进行上下左右分屏
- 分屏之后,使用Ctrl + 数字键跳转到指定屏,使用Ctrl + Shift + 数字键将当前屏移动到指定屏