Sam*_*fer 6 javascript jupyter jupyter-notebook
通常,我在笔记本中途发现自己忘记了导入,而是想将其移动到笔记本的顶部(我试图保留大部分导入)。有没有一种方法可以将键盘快捷方式添加到~/.jupyter/custom/custom.js将单元格移动到笔记本顶部的方式?
目前,我是通过剪切单元格,滚动到笔记本顶部,粘贴并向下滚动到我原来的位置(通常在返回的途中丢失位置)来完成此操作的。
以下是来自fastai论坛的一些代码,它们可以完成不同的任务:转到运行单元:
Jupyter.keyboard_manager.command_shortcuts.add_shortcut('CMD-I', {
help : 'Go to Running cell',
help_index : 'zz',
handler : function (event) {
setTimeout(function() {
// Find running cell and click the first one
if ($('.running').length > 0) {
//alert("found running cell");
$('.running')[0].scrollIntoView();
}}, 250);
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
它已部分记录;但是您必须了解一点 JavaScript 才能创建键盘快捷键。
正如您所想的,编辑custom.js以绑定键盘快捷键,如文档中所述(如果操作不是内置的,则必须使用第二种方法)
有关文档,请阅读源代码(在线阅读或site-packages/notebook/static/notebook/js/*.js如果您在本地安装了 jupyter)。特别是,actions.js包含示例绑定并notebook.js包含您可以在笔记本上调用的函数。
这是一个例子。它的缺点是修改了jupyter剪贴板。为了避免这种情况,您也许可以查看notebook.move_cell_down函数的源代码以了解它是如何实现的,并进行相应的修改。
Jupyter.keyboard_manager.command_shortcuts.add_shortcut('cmdtrl-I', {
help : 'Move cell to first in notebook',
handler : function (env) {
var index = env.notebook.get_selected_index();
env.notebook.cut_cell();
env.notebook.select(0);
env.notebook.paste_cell_above();
env.notebook.select(index);
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
334 次 |
| 最近记录: |