Atom / Sublime喜欢Jupyter中的Multiple选择

时间:2017-01-09 17:42:41

标签: jupyter-notebook keymapping

如何通过键盘快捷键在Jupyter笔记本中选择匹配的关键字?例如,在Atom / Sublime编辑器中,我可以在mac(或Windows上的cmd + D)上点击Ctrl + d,而光标在'var'上,每次我这样做,下一个'var'将突出显示。然后我可以输入新的变量名称,并将“var”替换为我输入的内容。

var = "hello"
print(var)
print(var)

Jupyter笔记本中是否有相同的内容?

5 个答案:

答案 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功能被禁用,因为运行当前单元格非常方便,而不是为大多数用户创建新行。您可以通过注释该行来选择具有该功能。

您可以以类似方式禁用其他不想要的密钥配置。

enter image description here

答案 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)

在 jupyter 实验室中,您现在可以通过搜索 sublime

来添加扩展程序

enter image description here

点击安装并重建jupyter。 **注意:点击安装查看终端控制台,会显示构建结果

enter image description here

答案 4 :(得分:-2)

是的,有办法做到这一点。

在正在运行的Jupyter笔记本中:

  

Esc键

然后按

  

˚F

f / F都可以使用。

您还可以在

中查看Jupyter笔记本的其他快捷方式
  

帮助&gt;键盘快捷键

快乐编码。