Google colaboratoryは素晴らしいツールであり、私がそれをより頻繁に使用できないようにする唯一のことは、vimキーバインディングがないことです。 jupyter Notebooksとjupyter labの場合と同じようにそれを有効にする方法はありますか?
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 でお気軽に問題を報告してください。