Skip to main content
Settings → Keybindings (⌘ ,) lists every shortcut in the app, grouped the same way the command palette is. The search box at the top of Settings reaches this page too: type what a feature is called — split, commit, sftp — and the page narrows to the shortcuts for it. Action names work as well as labels, so a binding you read about in keybindings.json is one search away from the row that sets it.

Rebinding

Click a shortcut and press the new keys. It saves after a brief pause. Restore all defaults at the bottom undoes every rebinding at once. There is no undo for that one.
Rebinding a shortcut

Placeholder — screenshot: the Keybindings page mid-capture, showing “Press keys…”

Actions with no default key

Some actions ship deliberately unbound, because there is no obvious key left to take: pane resize and swap, workspace selection, most git commands, SFTP, and the panel tabs. They are all in the command palette, and all bindable here.

Editing config.json instead

The syntax is modifiers joined by -, then the key. Chords are separated by a space. An unknown action name or an invalid keystroke is skipped with a warning in the log rather than breaking the rest of your bindings. The full action list is on the keyboard shortcuts page.

The tmux preset

Settings → Keybindings → Preset → tmux remaps pane and tab actions onto a prefix — ⌃ B by default, changeable in the Prefix field beside it. Two details that make it livable:
  • A bare prefix reaches the shell after about a second, so ⌃ B still works as “back one character” when you meant it.
  • Prefix plus an unbound key is passed straight through to the terminal, so a tmux binding you did not remap still lands in whatever is running.

Some non-obvious defaults