You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IPython Notebook能否将多个单元格绑定到标题单元格实现批量折叠?

解决方案

原生Jupyter Lab内置功能(3.0+版本无需额外安装)

Jupyter Lab 3.0及以上版本默认支持按Markdown标题层级折叠单元格组:

  • 确保你的分区标题是标准Markdown标题格式,即用#、##、###标记层级,而非仅手动格式化的加粗文本
  • 打开左侧边栏的「目录」面板
  • 点击任意标题项左侧的折叠箭头,即可一次性收起该标题下所有从属单元格,再次点击即可全部展开,也可以直接在Notebook正文里点击标题左侧的折叠箭头操作。

经典Jupyter Notebook(nbclassic)可用方案

内置单元格分组功能

  • 选中要绑定到同一个标题下的所有单元格:点击第一个目标单元格,按住Shift点击最后一个目标单元格即可完成批量选择
  • 点击顶部菜单栏「View」→「Cell Toolbar」→「Create Section」,选中的单元格会自动归属到上方最近的标题单元格下,后续点击标题左侧的折叠箭头就能实现批量收起/展开。

自定义快捷键脚本

如果需要高频使用该功能,可以配置快捷键实现一键操作:

  • 打开Jupyter配置目录下的custom/custom.js文件,不存在则手动新建
  • 写入以下代码:
// 绑定Ctrl+Shift+F为当前标题下单元格批量折叠/展开快捷键
Jupyter.keyboard_manager.command_shortcuts.add_shortcut('ctrl-shift-f', {
    help : 'Fold all cells under current heading',
    handler : function (env) {
        const currentCell = env.notebook.get_selected_cell();
        // 仅对Markdown标题单元格生效
        if (currentCell.cell_type !== 'markdown' || !currentCell.get_text().startsWith('#')) return false;
        const currentIdx = env.notebook.get_selected_index();
        const currentLevel = currentCell.get_text().match(/^#+/)[0].length;
        // 查找下一个同级或更高级标题的位置
        let nextHeadingIdx = env.notebook.ncells();
        for (let i = currentIdx + 1; i < env.notebook.ncells(); i++) {
            const loopCell = env.notebook.get_cell(i);
            if (loopCell.cell_type === 'markdown' && loopCell.get_text().startsWith('#')) {
                const loopLevel = loopCell.get_text().match(/^#+/)[0].length;
                if (loopLevel <= currentLevel) {
                    nextHeadingIdx = i;
                    break;
                }
            }
        }
        // 批量切换中间单元格的折叠状态
        for (let i = currentIdx + 1; i < nextHeadingIdx; i++) {
            env.notebook.get_cell(i).toggle_input_hidden();
        }
        return false;
    }
});
  • 保存文件后重启Jupyter Notebook,之后选中目标标题单元格按下Ctrl+Shift+F即可一键折叠/展开该标题下所有从属单元格。

内容的提问来源于stack exchange,提问作者Echo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 17:21:00