Make `alt-l` the default linux/windows binding for AcceptEditPrediction (#24630)

Michael Sloan created

Release Notes:

- N/A

Change summary

assets/keymaps/default-linux.json | 10 ++++++++--
assets/keymaps/vim.json           | 11 +++++++++++
2 files changed, 19 insertions(+), 2 deletions(-)

Detailed changes

assets/keymaps/default-linux.json 🔗

@@ -502,16 +502,22 @@
       "tab": "editor::ComposeCompletion"
     }
   },
+  // Bindings for accepting edit predictions
+  //
+  // alt-l is provided as an alternative to tab/alt-tab. and will be displayed in the UI. This is
+  // because alt-tab may not be available, as it is often used for window switching.
   {
     "context": "Editor && edit_prediction",
     "bindings": {
-      "alt-enter": "editor::AcceptEditPrediction"
+      "alt-tab": "editor::AcceptEditPrediction",
+      "alt-l": "editor::AcceptEditPrediction"
     }
   },
   {
     "context": "Editor && edit_prediction && !edit_prediction_requires_modifier",
     "bindings": {
-      "tab": "editor::AcceptEditPrediction"
+      "tab": "editor::AcceptEditPrediction",
+      "alt-l": "editor::AcceptEditPrediction"
     }
   },
   {

assets/keymaps/vim.json 🔗

@@ -698,7 +698,18 @@
   {
     "context": "edit_prediction && !edit_prediction_requires_modifier",
     "bindings": {
+      // This is identical to the binding in the base keymap, but the vim bindings above to
+      // "vim::Tab" shadow it, so it needs to be bound again.
       "tab": "editor::AcceptEditPrediction"
     }
+  },
+  {
+    "context": "os != macos && edit_prediction",
+    "bindings": {
+      // alt-l is provided as an alternative to tab/alt-tab. and will be displayed in the UI. This
+      // is because alt-tab may not be available, as it is often used for window switching on Linux
+      // and Windows.
+      "alt-l": "editor::AcceptEditPrediction"
+    }
   }
 ]