有没有办法在Google Colaboratory中使用Vim键绑定?

Mik*_*nko 12 google-colaboratory

Google colaboratory是一个了不起的工具,唯一让我不经常使用它的是没有vim键绑定.有没有办法像jupyter笔记本和jupyter实验室一样启用它?

小智 12

默认情况下,它现在在 google colab 中可用。您可以从工具 > 设置 > 编辑器中选择 Vim 键绑定,或通过键入 Ctrl+MH


Rob*_*nse 9

这是一个通过JavaScript控制台启用Vim模式的小黑客.烦人的,它需要每个执行单元的时间重新运行,所以我必然ctrl/cmd-entershift-enter能够做到这一点:

function enable_vim() { document.querySelectorAll(".CodeMirror").forEach(function (e) { e.CodeMirror.setOption("vimMode", true); }); }
document.addEventListener('keydown', function(e) {
  if (e.keyCode == 13 && e.metaKey || e.keyCode == 13 && e.shiftKey) {
    for (var i = 0; i < 10; i++) setTimeout(enable_vim, 1000 * i);
  }
});
enable_vim();
Run Code Online (Sandbox Code Playgroud)

运行单元时,请注意保持正常模式(不是输入模式).否则,将永久禁用该单元的Vim模式,并且需要重新加载整个Web应用程序以重新启用它.


Tho*_*mer 6

由于本次发布中的先前讨论,我已发布autovim到Chrome扩展商店。就我发现的永久可见CodeMirror元素而言,它可以完美工作,但仍然CodeMirror像隐藏在Jupyter中的Markdown一样隐藏和显示元素。

https://chrome.google.com/webstore/detail/autovim/licohjbphilmljmjonhiifkldfahnmja

如果您愿意,可以在这里做出贡献:

https://github.com/thomcom/autovim