Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 禁用Jupyter键盘快捷键_Html_Ipython_Ipython Notebook_Jupyter - Fatal编程技术网

Html 禁用Jupyter键盘快捷键

Html 禁用Jupyter键盘快捷键,html,ipython,ipython-notebook,jupyter,Html,Ipython,Ipython Notebook,Jupyter,我的一个Jupyter笔记本使用了一个html标记,该标记需要输入用户输入,但每当我在文本框中输入时,命令模式键盘快捷键就会激活 是否可以关闭单个单元格或笔记本的键盘快捷键?您可以将此行复制粘贴到custom.js中: $([IPython.events]).on("app_initialized.NotebookApp", function () { ... // Starting from this line, replace 'Shift-k' with whatever

我的一个Jupyter笔记本使用了一个html
标记,该标记需要输入用户输入,但每当我在文本框中输入时,命令模式键盘快捷键就会激活


是否可以关闭单个单元格或笔记本的键盘快捷键?

您可以将此行复制粘贴到custom.js中:

$([IPython.events]).on("app_initialized.NotebookApp", function () {
    ...
    // Starting from this line, replace 'Shift-k' with whatever 
    // shortcut you're trying to remove.
    IPython.keyboard_manager.command_shortcuts.remove_shortcut('Shift-k')
    ...
});
或者任何你想删除的快捷方式

资料来源:


如果您想在my github上获得一个示例
custom.js

您可以使用
Jupyter.keyboard\u manager.disable()
临时禁用快捷键,并使用
Jupyter.keyboard\u manager.enable()
再次激活。

根据,现在可以使用
~/.jupyter/nbconfig/notebook.json
文件来完成这项工作,而不仅仅是使用的答案:

例如,要取消绑定在光标位置拆分单元格的快捷方式(Ctrl-Shift-减号),请使用以下命令:


这是正确的答案。只需确保在调用Jupyter之前添加JS magics(%%javascript)。keyboard_manager.disable()还可以绑定到包含html输入的(父)元素的onfocusin事件:htmlContainer.onfocusin=()=>Jupyter.keyboard_manager.disable();不幸的是,重命名笔记本似乎会重新启用键盘管理器,这在小部件中并不一致。我是否可以在文本输入小部件上设置一个简单的属性,在我输入时关闭快捷方式?我不明白为什么默认情况下不会发生这种情况。我将它与jquery的焦点和模糊函数一起用于自定义textarea输入(在扩展中),它解决了这个问题。
// file ~/.jupyter/nbconfig/notebook.json
{
  "keys": {
    "edit": {
      "unbind": [
        "Ctrl-Shift-Minus"
      ]
    },
  },
}