Skip to content
| Marketplace
Sign in
Visual Studio Code>Keymaps>Nifty Workspace Keybindings: Per-Project ShortcutsNew to Visual Studio Code? Get it now.
Nifty Workspace Keybindings: Per-Project Shortcuts

Nifty Workspace Keybindings: Per-Project Shortcuts

Nifty

| (0) | Free
Keybindings per project: put them in .vscode/keybindings.json and they work only in that workspace, shared with your team through Git. Something VS Code doesn't do on its own.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Nifty Workspace Keybindings

Keybindings per project: put them in .vscode/keybindings.json and they work only in that workspace, shared with your team through Git. Something VS Code doesn't do on its own.

Maintained. No sign-in. No telemetry. Works in VS Code, Cursor, Windsurf, VSCodium and other editors that use Open VSX.

Features

Accepting a repo's team shortcuts, then Ctrl+Alt+S running the seed task and Ctrl+Alt+M opening the migrations

Team shortcuts in .vscode/keybindings.json, with the question before they're used

A new workspace keybinding applied on save, with the count in the status bar

VS Code has workspace settings, tasks and launch configurations, but no workspace keybindings: every shortcut applies everywhere. This extension adds them.

  • Put keybindings in .vscode/keybindings.json, in the same format as your own keybindings.json, with when clauses and args. You get completion and validation for command names too. Commit the file and your whole team gets the shortcuts.
  • They only work in that workspace. The extension copies them into your user keybindings.json, each limited by a condition that is only true while this workspace is open (nifty.wk.1a2b3c4d && …). Other projects never see them, and your own keybindings are never touched.
  • Edits apply straight away. Change .vscode/keybindings.json and the copies update.
  • Safe by default. The first time a workspace has keybindings you're asked before they're used. They're never applied in untrusted workspaces, and Stop Using This Workspace's Keybindings removes them again.
  • Tidy. The status bar shows how many are active. Remove Keybindings of Other Workspaces cleans out the copies from projects you no longer open.
// .vscode/keybindings.json
[
    { "key": "f5", "command": "workbench.action.tasks.runTask", "args": "dev", "when": "!inDebugMode" },
    { "key": "ctrl+alt+t", "command": "workbench.action.tasks.test" }
]

Removing a default shortcut ("-command") can't be limited to one workspace, because of how VS Code matches removals. Bind the key to another command instead, which overrides the default in that workspace.

Commands

Command What it does
Nifty Workspace Keybindings: Open Workspace Keybindings (JSON) Open or create .vscode/keybindings.json
Nifty Workspace Keybindings: Use This Workspace's Keybindings Turn them on (again)
Nifty Workspace Keybindings: Stop Using This Workspace's Keybindings Remove this workspace's copies
Nifty Workspace Keybindings: Remove Keybindings of Other Workspaces Clean up copies from other projects

Settings

Setting Default What it does
nifty.workspace-keybindings.confirm true Ask before using a workspace's keybindings the first time
nifty.workspace-keybindings.statusBar true Show the number of active workspace keybindings
nifty.workspace-keybindings.userKeybindingsFile default profile Your keybindings.json, if you use another profile

Install

  • VS Code: search for "Nifty Workspace Keybindings" in the Extensions view, or install from the Visual Studio Marketplace.
  • Cursor, Windsurf, VSCodium, Kiro, Antigravity: install from Open VSX.

Privacy

This extension collects no telemetry and needs no account.

More Nifty tools

  • Nifty Shortcut Trainer: Learn Keyboard Shortcuts: Learn VS Code keyboard shortcuts while you work: spots slow habits like arrow-key walking or copy-paste duplicating and suggests the shortcut, plus a cheat sheet. (Open VSX)
  • Nifty Settings Sync: Sync via GitHub Gist: Sync settings, keybindings, snippets and extensions between VSCodium, Cursor, Windsurf and VS Code through a private GitHub Gist, with a diff before anything is overwritten. (Open VSX)
  • Nifty Beautify: Format HTML in PHP, Blade & Twig: Format HTML inside PHP, Blade, Twig, Jinja, Handlebars, ERB and Liquid templates without breaking the template tags. (Open VSX)
  • Nifty Branches: Clean Up Merged Git Branches: Safely clean up merged, squash-merged, gone and stale git branches, with a preview and one-click restore. (Open VSX)
  • Nifty C# Templates: New Class, Record & Namespace: New C# class, interface, record, enum, test and controller files with the right namespace, plus namespace syncing. (Open VSX)
  • Nifty Code Runner: Run Code in 25+ Languages: Run the current file or selection in 25+ languages in the terminal, with input support, your own commands and no telemetry. (Open VSX)

See all 35 Nifty tools at https://getnifty.dev

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