jupyter-notebook - 如何撤消/重做 Jupyter 笔记本中选定单元格内的更改?
问题描述
我在 Windows 10 上使用 Jupyter 笔记本(来自 anaconda Jupyter 实验室)并尝试撤消/重做所选单元格中的更改。但是,我只能撤消/重做整个笔记本中的更改。
例如,我编辑了单元格#1,然后编辑了单元格#2。假设我想撤消单元格#1 中的更改,所以我转到单元格#1 并按 control+z,但它会撤消单元格#2 中的更改。
我的朋友使用 Mac 没有这个问题。有没有这方面的设置?我在网上搜索并没有找到有同样问题的人。太奇怪了!
解决方案
这种全局撤消/重做是 JupyterLab 3.1 中添加的一项新功能,可实现实时协作。对于许多用例来说,它确实不是最理想的。
JupyterLab 3.2 允许禁用笔记本范围的历史跟踪(请参阅issue 10791 nad PR 10949),但需要注意的是:移动单元格时,您可能会丢失撤消历史记录,这就是该设置被标记为实验性的原因(它需要做更多的工作)默认公开或启用)。要获得选择性撤消/重做,请添加:
{
"experimentalDisableDocumentWideUndoRedo": true
}
在Advanced Settings Editor
→中Notebook
,保存并重新加载 JupyterLab(如果您在浏览器中使用它,刷新就足够了)。
如果这会破坏交易,您也可以坚持使用 JupyterLab 3.0。要降级,您可以使用 pip:
pip install "jupyterlab<3.1"
或康达:
conda install -c conda-forge "jupyterlab<3.1"
但我建议坚持使用 JupyterLab 3.2 并尝试新设置,以便您可以参与讨论(如果您遇到任何问题或认为可以改进)。
推荐阅读
- node.js - 如何在 nodejs 中运行并行 cron 作业
- bootstrap-4 - Laravel + Bootstrap 图标
- python - 制作不同聚类的条形图
- python - How to handle a view function that returns a tuple in Flask?
- node.js - 无法在 mongodb 中使用聚合 $unwind 按日期 $sort
- unity3d - 有没有办法在 Unity 人形动画中编辑 IK 目标?
- mysql - JPA PESSIMISTIC_READ 在指定时间段内没有超时
- spring - SpringLiquibase:禁用迁移,只检查状态
- google-apps-script - 如何在谷歌表格上的自定义选定单元格上运行宏?
- android - 我在这里声明了 val,这样我就可以在所有函数中使用 val e11 但它会崩溃,为什么?