小编bro*_*hlr的帖子

自定义IPython Notebook键盘快捷键,可在编辑模式下复制当前行

在IPython Notebook环境中,可以使用IPython Javascript API定义自定义键盘快捷键.使用%%javascript魔法,可以在IPython的交互式控制台中编写一个javascript,如下所示(此处描述的示例):

%%javascript

IPython.keyboard_manager.command_shortcuts.add_shortcut('r', {
    help : 'run cell',
    help_index : 'zz',
    handler : function (event) {
        IPython.notebook.execute_cell();
        return false;
    }}
);
Run Code Online (Sandbox Code Playgroud)

我想编写一个javascript,在编辑模式下创建一个快捷方式,将Ctrl-Alt-Down绑定到"重复当前行"的动作 - 也就是说,将光标移动到当前行的开头,选择行,复制行,返回,粘贴.基本上,我想模拟Eclipse的键盘快捷键,或Notepad ++中的Ctrl-d,或Emacs中的Ca C-SPACE Cn Mw Cy.javascript文件将采用以下形式:

%%javascript

IPython.keyboard_manager.edit_shortcuts.add_shortcut('ctrl-alt-down', {
    help : 'run cell',
    help_index : 'zz',
    handler : function (event) {
        [Code that duplicates the line];
        return false;
    }}
);
Run Code Online (Sandbox Code Playgroud)

虽然我的尝试建议'ctrl-alt-down'是表示快捷方式序列的错误方法,但我找不到任何文档keyboard_manager.

我宁愿不使用(例如)AutoHotKey解决方案,因为我想将此快捷方式限制为IPython Notebook的编辑模式.

javascript keyboard-shortcuts ipython-notebook

17
推荐指数
2
解决办法
5217
查看次数