【发布时间】:2018-07-18 08:44:30
【问题描述】:
Google colaboratory 是一个了不起的工具,唯一让我无法更频繁地使用它的是没有 vim 键绑定。有没有办法像 jupyter notebooks 和 jupyter lab 一样启用它?
【问题讨论】:
Google colaboratory 是一个了不起的工具,唯一让我无法更频繁地使用它的是没有 vim 键绑定。有没有办法像 jupyter notebooks 和 jupyter lab 一样启用它?
【问题讨论】:
现在默认情况下可在 google colab 中使用。 您可以从工具 > 设置 > 编辑器中选择 Vim 键绑定,或者键入 Ctrl+M H
【讨论】:
这是通过 JavaScript 控制台启用 Vim 模式的小技巧。烦人的是,每次执行单元格时都需要重新运行它,所以我绑定了 ctrl/cmd-enter 和 shift-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();
运行单元格时请注意处于普通模式(而不是输入模式)。否则,该单元格的 Vim 模式将永久禁用,需要重新加载整个 Web 应用程序才能重新启用它。
【讨论】:
由于之前在此帖子中的对话,我已将 autovim 发布到 Chrome 扩展程序商店。就我发现的永久可见的CodeMirror 元素而言,它可以完美地工作,但对于隐藏和显示的CodeMirror 元素仍然很不稳定,就像 Jupyter 中的 Markdown 一样。
https://chrome.google.com/webstore/detail/autovim/licohjbphilmljmjonhiifkldfahnmja
如果你愿意,你可以在这里贡献:
【讨论】:
现在不行;随时在https://github.com/googlecolab/colabtools 提出问题。
【讨论】: