如何通过键盘快捷键在Jupyter笔记本中选择匹配的关键字?例如,在Atom / Sublime编辑器中,我可以在mac(或Windows上的cmd + D
)上点击Ctrl + d
,而光标在'var'上,每次我这样做,下一个'var'将突出显示。然后我可以输入新的变量名称,并将“var”替换为我输入的内容。
var = "hello"
print(var)
print(var)
Jupyter笔记本中是否有相同的内容?
答案 0 :(得分:9)
将custom.js
添加到
C:\Users\username\.jupyter\custom # for Windows and
~/.jupyter/custom/ # for Mac
内容
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) {}
});
}
}
);
并重启jupyter。现在Ctrl+D
应该像Sublime
中那样工作。
您可以看到Ctrl-Enter
功能被禁用,因为运行当前单元格非常方便,而不是为大多数用户创建新行。您可以通过注释该行来选择具有该功能。
您可以以类似方式禁用其他不想要的密钥配置。
答案 1 :(得分:0)
上面的解决方案对我有用,但是我发现按回车键输入“ tab”字符具有不良效果。这是相关的GitHub问题:https://github.com/jupyter/notebook/issues/4769#issuecomment-511935127
根据该帖子,我发现此解决方案提供了正确的ctrl
+ d
行为,并保持制表符为空格。
require(["codemirror/keymap/sublime", "notebook/js/cell", "base/js/namespace"],
function(sublime_keymap, cell, IPython) {
// setTimeout(function(){ // uncomment line to fake race-condition
cell.Cell.options_default.cm_config.keyMap = 'sublime';
var cells = IPython.notebook.get_cells();
for(var c=0; c< cells.length ; c++){
cells[c].code_mirror.setOption('keyMap', 'sublime');
}
// }, 1000)// uncomment line to fake race condition
}
);
答案 2 :(得分:0)
在 Jupyter Lab 中,现在可以在 Settings > Text Editor Key Map > Sublime Text 中进行设置.
答案 3 :(得分:0)
答案 4 :(得分:-2)
是的,有办法做到这一点。
在正在运行的Jupyter笔记本中:
按
Esc键
然后按
f / F都可以使用。˚F
您还可以在
中查看Jupyter笔记本的其他快捷方式帮助&gt;键盘快捷键
快乐编码。