Ran*_*ans 13 keymapping jupyter-notebook
如何通过键盘快捷键在Jupyter笔记本中选择匹配的关键字?例如,在Atom/Sublime编辑器中,当光标位于'var'时,我可以点击cmd + D
mac(或Ctrl + d
在Windows上),每次我这样做时,下一个'var'将被突出显示.然后我可以输入新的变量名称,并将"var"替换为我输入的内容.
var = "hello"
print(var)
print(var)
Run Code Online (Sandbox Code Playgroud)
在Jupyter笔记本中是否有相同的东西?
Sar*_*ran 13
添加custom.js
到
C:\Users\username\.jupyter\custom # for Windows and
~/.jupyter/custom/ # for Mac
Run Code Online (Sandbox Code Playgroud)
内容
require(["codemirror/keymap/sublime", "notebook/js/cell", "base/js/namespace"],
function(sublime_keymap, cell, IPython) {
cell.Cell.options_default.cm_config.keyMap = 'sublime';
cell.Cell.options_default.cm_config.extraKeys["Ctrl-Enter"] = function(cm) {}
var cells = IPython.notebook.get_cells();
for(var cl=0; cl< cells.length ; cl++){
cells[cl].code_mirror.setOption('keyMap', 'sublime');
cells[cl].code_mirror.setOption("extraKeys", {
"Ctrl-Enter": function(cm) {}
});
}
}
);
Run Code Online (Sandbox Code Playgroud)
并重新启动jupyter.现在Ctrl+D
应该像它一样工作Sublime
.
您可以看到Ctrl-Enter
禁用该功能,因为运行当前单元格非常方便,而不是为大多数用户创建新行.您可以通过注释该行来选择具有该功能.
您可以以类似的方式禁用您不想要的其他密钥配置.
小智 5
目前在 Jupyter Notebook 中实现类似 Sublime 的键盘映射的最佳方法:从jupyter - contrib-nbextensions中选择 CodeMirror Keymap。正如主页报道的那样:
jupyter_contrib_nbextensions 包包含社区贡献的非官方扩展的集合,这些扩展可以为 Jupyter Notebook 添加功能。
我个人使用这个包中的几个扩展,我发现它们非常有用。正如安装文档中所报告的,您只需运行:
pip install jupyter_contrib_nbextensions
Run Code Online (Sandbox Code Playgroud)
安装扩展(或者更好,我建议:
python -m pip install jupyter_contrib_nbextensions
Run Code Online (Sandbox Code Playgroud)
其中python
指向您在 Jupyter Notebook 中使用的安装的 python 可执行文件)。conda
如果您愿意,也可以使用。
无论如何,您需要复制一些 JS 和 CSS 内容以使扩展在 Jupyter Notebook 中工作,您可以通过以下方式实现:
jupyter contrib nbextension install --user
Run Code Online (Sandbox Code Playgroud)
再次假设jupyter
指向您用来运行笔记本的 jupyter 可执行文件。
此时,您只需启用扩展:导航nbextensions_configurator
(作为包的依赖项jupyter_contrib_nbextensions
),您可以通过 Jupyter Notebook 仪表板(明确地说,是您打开来运行笔记本的页面)轻松完成此操作浏览选项卡并选中与Select CodeMirror KeymapNbextensions
对应的框。
完毕!启动笔记本,单击“编辑”>“键盘映射”>“Sublime”就足以实现所需的行为。
我知道这是一个相当老的问题,但我在发现它之前碰巧遇到了它jupyter_contrib_nbextensions
(特别是Select CodeMirror Keymap扩展)。因此,我决定发布这个答案,希望能帮助像我这样的其他人,并让他们避免进一步搜索或弄乱自定义的 JS 文件(这可能会吓到某人)。
归档时间: |
|
查看次数: |
2222 次 |
最近记录: |