-

编码(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 + 数字键将当前屏移动到指定屏