added :write to vim mode
authorBrendan Hansen <brendan.f.hansen@gmail.com>
Sat, 23 Apr 2022 16:50:52 +0000 (16:50 +0000)
committerBrendan Hansen <brendan.f.hansen@gmail.com>
Sat, 23 Apr 2022 16:50:52 +0000 (16:50 +0000)
static/src/folders.js
static/src/service-worker.js

index 78ca70e7cd60d217ce783fe9520706c31b5bfe8c..e152f5943bc18377b500dcf4e57a860b322c6404 100644 (file)
@@ -225,6 +225,15 @@ async function enable_ide_mode() {
 
     folders.save();
     folders.build_folder_view(folder_item_click);
+    // Enable :w for vim mode
+    // This is such a freaking hack. I don't know how to properly wait for the module
+    // to be ready, so my best attempt is to just wait for 1 second, then require the
+    // module.
+    setTimeout(() => {
+        let ace_vim = require("ace/keyboard/vim");
+        ace_vim.Vim.defineEx("write", 'w', folder_save_current_file)
+    }, 1000);
 }
 
 function disable_ide_mode() {
@@ -387,4 +396,4 @@ function folder_save_current_file() {
             folders.save();
         }
     }
-}
\ No newline at end of file
+}
index b1780a45bcb1675305ab998d38dcc3a9da674346..bbaa0aea28b5feb4636f0d0a325c2a96f6265bc6 100644 (file)
@@ -1,4 +1,4 @@
-const app_version = 2;
+const app_version = 3;
 
 const cacheName = 'cache-v1';
 const precacheResources = [
@@ -38,4 +38,4 @@ self.addEventListener("fetch", event => {
             return fetch(event.request);
         })
     );
-});
\ No newline at end of file
+});