Skip to content
| Marketplace
Sign in
Visual Studio Code>Keymaps>Backspace Helper for VS CodeNew to Visual Studio Code? Get it now.
Backspace Helper for VS Code

Backspace Helper for VS Code

Preview

unknownnumbers

| (0) | Free
Make a customizable shortcut act as Backspace in Windows desktop VS Code inputs, editors, and terminals while respecting Vim bindings.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Backspace Helper for VS Code

English (en) | Traditional Chinese (zh-TC) | Simplified Chinese (zh-SC)

Use a customizable shortcut as Backspace in Windows desktop VS Code. The default is Ctrl+G. A Settings checkbox controls the helper, and all three routes are editable in Keyboard Shortcuts.

What it does

Focus Default shortcut Action
Search, Quick Open, Command Palette, rename and other ordinary input fields Ctrl+G Send one native Backspace
Text editor with Vim inactive, or a debug input Ctrl+G Run the editor's deleteLeft command
Integrated terminal Ctrl+G Send the Windows Backspace character
Vim editor Your existing Vim bindings Leave Vim in control

Terminal find uses the ordinary input-field route. The helper does not change Vim mappings, editor modes or other shortcuts.

Settings

Open Settings and search for Backspace Helper for VS Code. The Backspace Helper: Enabled checkbox takes effect immediately. The equivalent user setting is:

{
  "backspaceHelper.enabled": true
}

Set it to false to disable the helper's default shortcuts and command handlers. This is an application setting. Vim's own mappings and unrelated user keybindings are managed separately.

Keyboard Shortcuts

Run Preferences: Open Keyboard Shortcuts from the Command Palette, then search for Backspace Helper for VS Code. Edit any of these entries:

  • Backspace in Input Field
  • Backspace in Editor
  • Backspace in Terminal

Keep the existing When expressions when changing a key. They select the focused surface, respect the master switch, and keep the helper out of active Vim editors. Fresh installations do not require copying rules into keybindings.json.

Install

Install the Windows x64 desktop extension from the VS Code Marketplace, or run:

code --install-extension unknownnumbers.backspace-helper-for-vscode

For VS Code Insiders, use code-insiders instead of code.

The v0.2.1 GitHub Release provides these downloads:

  • Windows x64 VSIX
  • Source ZIP
  • SHA256SUMS.txt

For offline installation, download the Windows x64 VSIX, run Extensions: Install from VSIX..., and select the downloaded .vsix file. Use SHA256SUMS.txt to verify the VSIX or source ZIP before use.

Migrate from the original private helper

If you used local-keybindings-tools.ctrlg-backspace-helper, uninstall that old extension and remove only its old user Ctrl+G rules: the localCtrlG.backspace rule, the terminal sendSequence rule with a Backspace character, and the standalone editor deleteLeft rule. The new defaults replace those three routes. Keep all other shortcuts and Vim settings.

Old user rules can override defaults or bypass the new switch. Reload the window at a convenient time if VS Code requests it or the old helper is still active. A legacy command alias is retained for deliberate transitions, but it is not a substitute for removing the old installation.

Platform and behavior

  • This release targets Windows x64 desktop VS Code and VS Code Insiders. It runs locally as a UI extension in remote workspaces.
  • VS Code for the web, macOS and Linux are not supported by this Windows package. Embedded webviews are not guaranteed to expose the same input context.
  • Ordinary input fields use a small bundled Windows executable. It sends one Backspace only when a VS Code window is in the foreground. It temporarily releases held modifier keys and restores them in the same input batch.
  • The executable exits after the operation. No separate resident service, network requests or telemetry are implemented by the extension.
  • Operating-system reserved shortcuts, permission boundaries and focus changes can prevent delivery. A foreground-window check is not a guarantee about the exact focused control.

Automated coverage includes isolated command and routing tests, plus a native self-test for all 256 modifier-key combinations. These tests do not send real input. Desktop behavior has not been verified end to end in this project.

Development and releases

Use Node.js 24, pnpm 11.25.0 and Windows with the .NET Framework C# compiler:

pnpm install --frozen-lockfile --ignore-scripts
pnpm test
pnpm package

See CONTRIBUTING.md for development guidance and RELEASING.md for GitHub and Marketplace publication. The package audit excludes local settings, credentials, tests and build tools from the VSIX.

Human and AI collaboration

This project was created through collaboration between humans and AI. Some AI-proposed content may not yet have been reviewed by a person. We appreciate your understanding if there are errors or omissions.

License

MIT.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft