sublime如何一键展开所有折叠代码块?(全局视图恢复)

风晨同学_7647

风晨同学_7647

2026-01-31

402人浏览

原创

Ctrl+K, Ctrl+J 是 Sublime Text 中展开当前文件所有折叠代码块的快捷键,仅作用于活动视图,不跨标签页;需确保文件语法识别正确且已启用折叠功能。

sublime如何一键展开所有折叠代码块?(全局视图恢复)

Sublime Text 里 Ctrl+K, Ctrl+J 是展开全部折叠代码的快捷键

这个组合键作用于当前文件视图,会递归展开所有被折叠的代码块(包括函数、类、注释块、自定义折叠区域等),但不会影响其他已打开的标签页。它不是“全局”生效,而是针对当前活动视图——这点常被误解为“没反应”,其实是焦点不在目标文件上。

常见错误现象:Ctrl+K, Ctrl+J 按下后无变化,大概率是当前文件未启用代码折叠功能,或文件类型未被 Sublime 正确识别(比如打开的是纯文本 .log 或无扩展名文件)。

  • 确认文件语法高亮是否正常:右下角状态栏应显示类似 Python、JavaScript 等语言名,而非 Plain Text
  • 手动触发一次折叠再试:选中一段代码 → Ctrl+Shift+[ 折叠,再按 Ctrl+K, Ctrl+J 看是否恢复
  • 部分插件(如 BracketHighlighter)可能劫持快捷键,可临时禁用插件验证

如何让所有已打开文件都执行“展开全部”?没有内置批量操作

Sublime Text 原生不支持跨标签页一键展开全部折叠内容。所谓“全局视图恢复”需靠脚本或插件补足。

最轻量的实操方式是安装社区插件 ExpandAll:

  • 通过 Package Control 安装:Ctrl+Shift+P → 输入 Package Control: Install Package → 搜索并安装 ExpandAll
  • 安装后,可在命令面板(Ctrl+Shift+P)中输入 Expand All,选择该命令,它会遍历所有已打开的标签页并执行展开
  • 注意:该插件不会保存折叠状态,也不会修改文件内容,只是临时重置视图

如果你习惯用键盘,可以给 ExpandAll 插件绑定快捷键,在 Preferences → Key Bindings 用户配置中添加:

[
    { "keys": ["ctrl+alt+j"], "command": "expand_all" }
]

Ctrl+K, Ctrl+0 和 Ctrl+K, Ctrl+J 的区别必须分清

这两个快捷键功能相反,但前缀相同,极易按错:

jm-jsjkxyjs02-zlm-405
jm-jsjkxyjs02-zlm-405

使用约定式提交(Conventional Commits)生成标准化的 Git 提交信息。适用于以下场景: (1) 暂存更改时需要提交信息; (2) 审查 diff 时希望获得结构化摘要; (3) 编写 PR 描述或变更日志(changelog)条目; (4) 用户明确要求“为本次更改编写提交信息”。 该功能会分析已暂存/未暂存的 diff,并生成按类型(type)划分范围的提交信息。

下载
  • Ctrl+K, Ctrl+0(数字零):折叠所有顶层代码块(如所有函数、类、模块级 if/for)
  • Ctrl+K, Ctrl+J(字母 J):展开当前文件中所有已被折叠的块(无论嵌套几层)

它们都依赖 Sublime 的折叠规则,而规则由当前语法定义(即 .sublime-syntax 文件)。例如在 Python 中,def 和 class 默认可折叠;但在 JSON 文件中,即使开启折叠功能,原生也不支持自动折叠对象/数组——除非你装了额外插件(如 JSON Reindent 或 Fold JSON)。

折叠状态不保存?那是默认行为,别误以为出 bug

Sublime Text 默认不会把代码折叠状态写入文件或跨会话保留。每次重启后,所有文件都是“原始展开态”。这不是缺陷,是设计使然。

如果你真需要记住折叠位置,有两个现实路径:

  • 启用 remember_open_files 并配合插件 ExpandAll + 手动操作流程固化(比如每次打开先按 Ctrl+K, Ctrl+0 再按需展开)
  • 改用支持折叠持久化的编辑器(如 VS Code 的 editor.foldingStrategy + 工作区设置),但这就脱离 Sublime 场景了

真正容易被忽略的是:当你在侧边栏双击打开一个文件时,它可能沿用上次关闭时的折叠状态——这其实是缓存行为,不是持久化,且仅对最近关闭的少量文件有效,不可依赖。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2023.08.07

2235

5

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.23

3562

1

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

2023.10.13

1196

3

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

2025.09.10

4099

7

class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

2024.01.03

4276

7

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

2025.12.06

306

9

c语言编程软件有哪些
c语言编程软件有哪些

c语言编程软件有GCC、Clang、Microsoft Visual Studio、Eclipse、NetBeans、Dev-C++、Code::Blocks、KDevelop、Sublime Text和Atom。更多关于c语言编程软件的问题详情请看本专题的文章。php中文网欢迎大家前来学习。

2023.11.02

9199

18

Sublime Text全方位使用指南
Sublime Text全方位使用指南

本专题深入剖析Sublime Text的环境配置与脚本开发机制,涵盖从 v3 升级 v4 实践、Shell 与 YAML 语法支持、Console 控制台调试到 Conda 多环境切换等核心操作,并详细讲解 Python 插件编写及构建系统(Build Systems)定制,旨在帮助开发者通过深度定制与脚本驱动,实现自动化代码格式化及跨语言高效开发。

2026.04.13

291

22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
WebStorm 官方调试文档
WebStorm 官方调试文档

共0课时 | 0人学习

React 教程
React 教程

共58课时 | 12.4万人学习

TypeScript 教程
TypeScript 教程

共19课时 | 6.8万人学习