Notebook 7 的新功能#
本文档描述了 Notebook 7 中的新功能,这些功能最初在相关的 Jupyter 增强提案 JEP 79 中提到。
调试器#
Notebook 7 包含一个新的调试器,允许您逐个单元格地单步执行代码。您还可以设置断点和检查变量。
实时协作#
Notebook 7 允许使用实时协作扩展,这样您就可以与其他用户共享您的 notebook 并进行实时编辑。
实时协作功能与 JupyterLab 中的相同,并可作为一个 JupyterLab 扩展使用。它默认未启用,但您可以使用 pip
安装
pip install jupyter-collaboration
或使用 conda
安装
conda install -c conda-forge jupyter-collaboration
安装扩展后,请重启 Jupyter Server 以便加载扩展。
注意
两个用户可以使用 Notebook 7 或 JupyterLab 在同一个 notebook 上工作。
目录#
Notebook 7 包含一个新的目录扩展,允许您使用侧边栏在 notebook 中导航。目录功能是内置的并默认启用,就像在 JupyterLab 中一样。
主题和深色模式#
Jupyter Notebook 现在默认提供深色主题。您也可以将其他主题作为 JupyterLab 扩展进行安装。
您还可以安装许多其他的 JupyterLab 主题。例如,要安装 JupyterLab Night 主题
pip install jupyterlab-night
然后刷新页面,并在设置中选择新主题
国际化#
Notebook 7 现在提供了设置用户界面显示语言的功能。
用户需要将语言包作为一个独立的 Python 包来安装。语言包被分组在 GitHub 上的语言包仓库中,并且可以使用 pip
安装。例如,可以使用以下命令安装法语(法国)的语言包
pip install jupyterlab-language-pack-fr-FR
安装语言包后,重新加载页面,新语言应该就可以在设置中选择了。
注意
Notebook 7 和 JupyterLab 共享相同的语言包,因此可以在两个应用程序中使用同一个语言包。
可访问性改进#
Jupyter Notebook 底层的文本编辑器(CodeMirror 5)存在严重的可访问性问题。幸运的是,随着 JupyterLab 升级使用 CodeMirror 6,这个可访问性瓶颈已被解决。CodeMirror 6 是对文本编辑器的完全重写,并特别关注可访问性。尽管这次升级需要大量的代码库修改,但这些更改已在 JupyterLab 4 中可用。由于 Notebook 7 是基于 JupyterLab 构建的,它直接受益于 CodeMirror 6 的升级。
支持多种 JupyterLab 扩展#
Notebook 7 基于 JupyterLab,因此支持许多现有的 JupyterLab 扩展。
您可以使用 pip
或 conda
安装 JupyterLab 扩展。例如,要安装用于增强代码补全的 LSP(语言服务器协议)扩展,您可以使用以下命令
pip install jupyter-lsp
conda install -c conda-forge jupyter-lsp
像 nbgrader
和 RISE
这样的流行扩展已经被移植以适配 Notebook 7。
nbgrader#
注意
nbgrader 扩展仍在积极开发中,与 Notebook 7 兼容的版本尚未在 PyPI 上发布。但是,与 Notebook 7 兼容的版本将在 Notebook 7 最终发布前提供。
RISE#
RISE 扩展是另一个已被移植以适配 Notebook 7 的流行 JupyterLab 扩展。它允许您将 Jupyter Notebook 变成幻灯片。请参阅安装说明。
以文档为中心的用户体验#
尽管有所有新功能,但正如 JEP 79 中所述,Notebook 7 保持了经典 Notebook 以文档为中心的用户体验
Jupyter Notebook 应用程序提供以文档为中心的用户体验。也就是说,在 Notebook 应用程序中,包含文件管理器、正在运行的工具选项卡和一些可选附加功能的着陆页,是打开独立、单个文档的启动点。这种以文档为中心的体验对许多用户来说非常重要,这也是本提案旨在保留的第一个关键点。Notebook v7 将基于与 v6 不同的 JavaScript 实现,但它将保留以文档为中心的体验,即每个 notebook 都在单独的浏览器标签页中打开,并且可见的工具和菜单都专注于打开的文档。
移动设备上的紧凑视图#
Notebook 7 在移动设备上会自动切换到更紧凑的布局,方便随时随地运行代码。
参考资料#
这只是对 Notebook 7 新功能的简要概述。有关更多详细信息,您可以查看以下资源
JupyterLab 文档是了解更多关于 JupyterLab 及其可用扩展的绝佳资源。由于 Notebook 7 基于 JupyterLab,许多适用于 JupyterLab 的功能和扩展也适用于 Notebook 7。
Notebook 7 的迁移指南,其中解释了如何从经典 Notebook 迁移到 Notebook 7。