Jupyter notebook 如何在Jupyter 5.0中禁用自动引号和自动括号

Jupyter notebook 如何在Jupyter 5.0中禁用自动引号和自动括号,jupyter-notebook,jupyter,Jupyter Notebook,Jupyter,我将Jupyter升级到最新的vesion 5.0,看起来我的前端配置停止工作了 我不明白为什么Jupyter默认带有自动结束引号和括号,我觉得这很烦人。因此,在每个版本中,我都必须更改设置以禁用它 它通常通过创建文件~/.jupyter/custom/custom.js并添加下一个JavaScript代码来工作: require(['notebook/js/codecell'], function (codecell) { codecell.CodeCell.options_default

我将Jupyter升级到最新的vesion 5.0,看起来我的前端配置停止工作了

我不明白为什么Jupyter默认带有自动结束引号和括号,我觉得这很烦人。因此,在每个版本中,我都必须更改设置以禁用它

它通常通过创建文件
~/.jupyter/custom/custom.js
并添加下一个JavaScript代码来工作:

require(['notebook/js/codecell'], function (codecell) {
  codecell.CodeCell.options_default.cm_config.autoCloseBrackets = false;
})
我已经了解到,自Jupyter 4以来,此代码可以通过以下方式更改:

IPython.CodeCell.options_default.cm_config.autoCloseBrackets = false;
但在Jupyter 5中,前面的两个选项似乎停止了工作

我发现的关于前端配置的文档没有帮助(一旦我理解了它,我会很乐意改进它):

有人能帮我理解如何在Jupyter 5中禁用自动括号和自动引号吗

这正是我正在运行的版本:


看起来可以在笔记本中运行:

from notebook.services.config import ConfigManager
c = ConfigManager()
c.update('notebook', {"CodeCell": {"cm_config": {"autoCloseBrackets": False}}})
这将创建一个文件
~/.jupyter/nbconfig/notebook.json
,内容如下:

{
  "CodeCell": {
    "cm_config": {
      "autoCloseBrackets": false
    }
  }
}

执行Python命令或手动创建文件后,重新启动Jupyter笔记本,它将停止自动关闭引号和括号。

对于JupyterLab访问者,“笔记本”设置编辑器中有一个“用户首选项”面板,您可以在其中粘贴和保存:

{
  "codeCellConfig": {
    "autoClosingBrackets": false
  }
}

使用
Ctrl+,
或通过菜单打开:
Settings
→ <代码>高级设置编辑器&单击“笔记本”

既然您找到了答案并在此处共享了它(许多人认为它很有用),请继续并将其标记为已接受。谢谢。如果你使用的是JupyterLabs,说明就不同了:OP也询问了自动报价。。。要做到这一点,只需在json中添加:“autoCloseQuotes”:不幸的是,这种更改似乎无法在AWS SageMaker笔记本实例重启后继续存在。