我正在使用jupyter-lab,想知道是否有一个插件可以让我在不切换命令和编辑模式的情况下工作?
我一直在剪切,粘贴和撤消单元格,因为当我打算在“编辑”模式下键入字符“ x”,“ y”或“ z”时,不小心切换到了命令模式。
某些上下文:模式的概念对于Jupyter笔记本是必不可少的。您处于命令模式( Esc )或编辑模式( Enter ),但是我想使用Jupyter Notebooks带有一组快捷方式,就好像我正在编辑单个文档。 #nomodes。
答案 0 :(得分:0)
除了默认快捷方式外,JupyterLab 中实际上几乎没有特定于模式的快捷方式。大多数在命令模式下运行的命令无需先退出编辑模式即可运行。
通过使用独立于当前模式的快捷方式,我们可以非常接近 Jupyter 中的 modeless editing。有关于如何customize the keyboard shortcuts here的说明。
例如,cut-cell
命令的默认快捷方式是 x。这可以替换为快捷键 Accel Ctrl X。这可以在任何一种模式下使用而不会干扰编辑。只需将以下内容添加到“用户首选项”面板中:
{"shortcuts": [
{
"command": "notebook:cut-cell",
"disabled": true,
"keys": ["X"],
"selector": ".jp-Notebook:focus"
},
{
"command": "notebook:cut-cell",
"keys": ["Accel Ctrl X"],
"selector": "body"},
}
]}
每个默认的命令模式快捷键应该修改如下:
Accel
只是键盘上 Super/Command/Windows 键的 Jupyter 术语。"selector": "body"
。该选择器可以针对两种模式。"disabled: true"
。或者,您可以将相同的快捷方式复制两次:
"selector": ".jp-Notebook.jp-mod-editMode"
的编辑模式。"selector": ".jp-Notebook:focus"
的命令模式。notebook:run-cell
的默认快捷方式实际上是这样设置的。
但是我没有遇到使用“body”作为选择器的问题。
请注意:这是一个相当乏味且容易出错的练习。有几十个默认快捷键需要修改。