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

时间:2017-05-27 11:31:12

标签: jupyter-notebook jupyter

我将Jupyter升级到最新的版本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中,之前的两个选项都停止了工作。

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

http://jupyter-notebook.readthedocs.io/en/latest/frontend_config.html#frontend-config

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

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

enter image description here

2 个答案:

答案 0 :(得分:15)

看起来可以通过在笔记本中运行来完成:

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笔记本,它应该停止自动关闭引号和括号。

答案 1 :(得分:0)

对于JupyterLab访问者,您可以将“笔记本”设置编辑器的“用户替代”面板粘贴并保存到其中:

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

通过Ctrl + ,或通过菜单打开:SettingsAdvanced Settings Editor并单击“笔记本”