ctrl+p 是 sublime 的模糊搜索面板,支持 @ 查函数、# 查变量、: 跳行;ctrl+d 增量多选,alt+f3 全量爆破选中;ctrl+shift+l 在每行末添加光标;ctrl+/ 注释行为由语法高亮决定。

Ctrl+P 跳转文件和符号,不是“打开文件对话框”
很多人按 Ctrl+P 后下意识等弹出系统选择窗口,结果什么都没发生——它压根不调用系统文件对话框,而是启动 Sublime 自带的模糊搜索面板。这个面板能直接搜:@ 查函数/类(如 @init),# 查变量/ID(如 #header),: 跳行(如 :42)。项目越大越依赖它,比手动翻标签页快一个数量级。
- 输错字符不用全删,用
←或→按词移动(Ctrl+←/→)更准 - 如果搜不到 JS 中的函数,确认语法高亮是
JavaScript而非Plain Text(右下角点开切换,或用Ctrl+Shift+P→ 输入ssjs) - 首次搜
@可能延迟半秒:Sublime 需索引符号,等右下角状态栏消失再输
Ctrl+D 和 Alt+F3 本质不同,别混用
Ctrl+D 是“增量式多选”:先选一个词,按一次选下一个相同词,再按选再下一个……适合局部可控编辑;Alt+F3 是“全量式爆破”:光标在词上一按,文档里所有匹配项瞬间全被选中,稍不注意就改崩整页配置。
- 想只改前 3 处
user_id?必须用Ctrl+D按三次,不能Alt+F3后狂按Esc撤销——部分光标会残留,导致粘贴错位 -
Alt+F3对正则无效,但Ctrl+D在查找面板里启用正则后仍可逐个加选 - 误触
Alt+F3后想取消全部选区?按Esc一次只退一层,得连按多次;更稳的是先按Ctrl+U(软撤销)回退光标位置
Ctrl+Shift+L 拆行光标,不是“选多行”
新手常把 Ctrl+Shift+L 当作“选中多行”的快捷键,其实它干的是另一件事:把当前选中的**每行文本**,在行尾各插一个光标。比如你选中 5 行代码后按它,就得到 5 个独立光标,各自在对应行末,可同时打字、删空格、补分号。
- 要“选中连续多行”,用
Ctrl+L连按,或鼠标拖选 +Ctrl+Shift+L(此时才真正生效) - 拆完光标后想统一缩进?别用
Tab(只影响第一行),用Ctrl+](批量向右缩进) - 若某行结尾有空格,
Ctrl+Shift+L后光标会落在空格后——删空格前先按End再删,否则可能删掉代码
Ctrl+/ 注释逻辑,依赖语法高亮准确
Ctrl+/ 看似简单,但注释行为完全由当前文件的语法定义决定:JS 文件里它加 //,HTML 里加 <!-- -->,Python 里加 #。一旦语法识别错(比如 .conf 文件被当成 Plain Text),按了也白按,或者插出错误符号。
- 右下角显示
Plain Text却想注释?右键 →Set Syntax →手动选对类型,或用Ctrl+Shift+P→ 输入ssjson等快速切换 - 选中多行时,
Ctrl+/不一定每行都加注释符:若某行已含注释开头(如//),它会自动取消注释,而非叠加 - 块注释(
Ctrl+Shift+/)在 CSS/JS 里生成/* */,但在 HTML 里仍是<!-- -->,别指望它跨语言统一
复杂点在于:这些快捷键不是孤立动作,而是依赖 Sublime 的实时上下文判断——语法类型、选区状态、光标位置、甚至上次操作是否触发了缓存索引。按下去没反应,八成不是快捷键失效,是上下文没对上。











