好用的 Sublime Text 通用快捷键

Sublime Text 是我使用的第一个编辑器,它的快捷键非常优秀,通过插件和设置,使这套快捷键可以在 VSCode 和 Jetbrains 系列 IDE 中一致。

以下会列出这些快捷键的 mac 与 win 的版本,主要以 mac 为主,如未说明差别,代表 win 下可使用 ctrl 代替 cmd 。

窗口调整

  • 放大缩小窗口 cmd + 加/减
  • 切换 tab 标签页 (有文件名、路径,方便切换): mac control + tab, win ctrl + tab
  • 打开多个 tab 页时,可拖拽另一个到当前编辑区右侧或下方,创建出多窗口
  • 切换 tab, 仅 mac , cmd + option + 左/右

文件操作

  • 创建新文件: cmd + N
  • 打开本地文件 cmd + O
  • 关闭当前文件: cmd + w
  • 从左下方“结构/outline”可以看到文件的结构,如函数、变量,或 markdown 的目录
  • 从编辑区上方面包屑导航,可以快速查看和跳转当前文件结构,或查看和打开上层文件

查找命令、查找文件、行列跳转

  • 查找命令(cmd palette): cmd + shift + p
  • 查找文件: cmd + p
  • 跳转, 行号:列号: mac: control + g, win: ctrl + g
  • 回到上次编辑位置(如跳转函数后回去原位置): mac: control + 减号, win: alt + 减号;操作后,再回到下次编辑的位置:control + 减号, win: alt + shift + 减号

注释

  • 单行注释: Cmd + /
  • 多行注释: mac cmd + option + /, win ctrl + shift + /

查找、替换

  • 查找: cmd + F
  • 替换: mac cmd + option + F, win ctrl + H
  • 项目中查找: cmd + shift + F

格式化与缩进

  • 格式化代码: mac option + shift + F, win alt + shift + F
  • 增加本行缩进 cmd + ]
  • 减少本行缩进 cmd + [
  • 行首时, 增加缩进 tab
  • 减少本行缩进 shift + tab
  • 优化 import option + shift + o

折叠

  • 折叠: win cmd + option + [, win ctrl + shift + [
  • 展开: win cmd + option + ], win ctrl + shift + ]

行操作

  • 选择当前光标行: cmd + L
  • 复制当前选中行(单行或多行): cmd + shift + D
  • 直接移动当前行(单行或多行): mac option + 上/下, win alt + 上/下
  • 合并两行(或多行: cmd + J

光标在中间时,前后新开一行

  • 前(下)面新开一行编辑: cmd + Enter
  • 后(上)面新开一行编辑: cmd + shift + Enter

多行游标

  • 依次往下找: mac cmd + D
    • 跳过: cmd+K 再按依次往下找的 cmd + D
  • 垂直选取:mac option + shift + 左键, win alt + shift + 左键
  • 三击左键,往下拖:选中多行

操作粒度

  • 每次移动一个字符: 直接用左右箭头
  • 移动一个单词: mac option + 箭头, win alt + 箭头
  • 移到行首、行尾: mac cmd + 箭头, win HomeEnd 键,或 Fn + 箭头 (没有 Home 键的键盘中)
  • 以上操作配合 shift, 移动并选中

智能提示

  • 未输入内容时,唤起智能提示: mac control + 空格, win ctrl + 空格 。其中 mac 输入法默认快捷键冲突,需到“首选项-键盘-键盘快捷键-输入法”,取消选择上一个、下一个输入法这两个选项。
  • 在智能提示中,查看提示方法的详细说明: 再次点击 control + 空格
  • 跳转到类型定义位置: cmd + 左键点击该方法
  • 通过 /** 创建 JSDoc 供编辑器识别类型

emmet

  • 声明标签 div.wrap>ul>li.item
  • 可使用模糊匹配省略标签名:.wrap>ul>.item
  • 多个样式类:.left.item
  • 分组:(.left>.main)+(.right>.main)
  • 控制标签个数:.wrap>ul>li*5
  • 编写内容,并自动添加序号:ul>li.nav${$$标题}*5 ($会自动生成数字,$$生成 2 位,从 01 开始;)
本文收录于专栏
整理一些开发相关的好用软件、网站、工具等