Ctrl+K, Ctrl+0是Sublime Text中唯一原生“一键折叠所有代码”的命令,但依赖语法识别、需正确语言标识、分步按键、不响应时多因Plain Text模式、插件冲突、大文件卡顿或缩进混乱所致。

Ctrl+K, Ctrl+0(Windows/Linux)或 Cmd+K, Cmd+0(macOS)是唯一真正“一键折叠所有代码”的原生命令,但它不是万能的——失效时几乎从不报错,只会静默不响应。
为什么Ctrl+K, Ctrl+0按了没反应?先看右下角语言标识
这个命令完全依赖语法识别。如果右下角显示的是 Plain Text、Unknown Syntax 或空白,折叠规则压根不会加载,命令直接跳过。
- 点击右下角文字 → 手动选为
Python、JavaScript、HTML等原生支持语言 - 未保存的临时文件(如 Untitled)或扩展名异常(如
.pyi、.j2)常导致自动识别失败 - 某些插件(如旧版 Vue Component 插件)会覆盖语法包,使
show_scope_name只返回source.python,无meta.function—— 此时命令也无效
Ctrl+K, Ctrl+0 和 Ctrl+Shift+[ 完全是两回事
Ctrl+Shift+[ 只对光标所在行的最小可折叠结构生效:停在 def func(): 行,就只折那个函数;停在空行或注释里,必然没反应。这不是 bug,是设计语义。
-
Ctrl+K, Ctrl+0不看光标位置,遍历整份文件所有已识别的折叠点(函数、类、顶层if、for、HTML 标签对等) - 必须分步按:
Ctrl+K→ 松开 →Ctrl+0(数字零,不是字母 O) - Mac 用户注意:
Cmd+K, Cmd+0易被系统级软件(如 Alfred、Raycast)劫持,若失灵,改用命令面板:Ctrl+Shift+P→ 输入Fold All→ 回车
大文件或插件冲突导致卡顿/失效
文件超过 10MB 时,Ctrl+K, Ctrl+0 可能延迟数秒才响应,甚至假死;部分插件(如 BracketHighlighter)会拦截 Ctrl+K 前缀,导致快捷键完全无响应。
- 临时禁用插件验证:菜单
Preferences → Package Control → Disable Package,逐个关掉可疑插件 - 缩进不统一(混用 Tab 和 Space)也会让 Python 语法解析中断,进入
View → Indentation → Convert Indentation to Spaces再试 - 若仍失败,用兜底方案:
Ctrl+F→ 正则^def\s|^function\s|^[a-zA-Z]+\s*=\s*function\s*\(.*\)\{→Find All→Ctrl+Shift+[,纯文本驱动,不依赖语法
真正容易被忽略的是:折叠状态从不跨会话保存,重启 Sublime 就全展开;而侧边栏折叠按钮默认是悬停才显示,需手动设 "fold_buttons": true 和 "fade_fold_buttons": false 才常驻可见。

















