Zed keyboard shortcuts

Zed is a fast code editor built for working with teammates and AI agents in the same window. Its default keys open files and pickers, edit and search code, run the agent panel, and drive the terminal and Git.

Windows, macOS, Linux · 186 shortcuts

Workspace and navigation

Open projects, move around the main regions, manage files and panels, and reach Zed's command-driven controls.

ActionShortcuts
Close the current window
Windows / LinuxCtrl + Shift + W
macOSCmd + Shift + W
Toggle workspace zoom
Windows / macOS / LinuxShift + Esc
Open files or a project
Windows / LinuxCtrl + O
macOSCmd + O
Open a projectTwo-stroke chord.
Windows / LinuxCtrl + K then Ctrl + O
macOSCmd + K then Cmd + O
Increase the buffer font size
WindowsCtrl + =orCtrl + Shift + =
macOSCmd + =
LinuxCtrl + =
Decrease the buffer font size
Windows / LinuxCtrl + -
macOSCmd + -
Reset the buffer font size
Windows / LinuxCtrl + 0
macOSCmd + 0
Open the settings file
Windows / LinuxCtrl + Alt + ,
macOSCmd + Alt + ,
Quit Zed
Windows / LinuxCtrl + Q
macOSCmd + Q
Start the debugger
Windows / macOS / LinuxF4
Rate edit predictionsThe current Windows default keymap does not assign this action a default key.
WindowsNot documented
macOSCtrl + Cmd + Z
LinuxCtrl + Alt + Z
Open the edit prediction menu
WindowsCtrl + Shift + I
macOSCtrl + Cmd + I
LinuxCtrl + Alt + Shift + I
Open the language-server menu
WindowsShift + Alt + L
macOSCtrl + Cmd + L
LinuxCtrl + Alt + L
Display names for multiple cursorsNo Linux default is assigned in the current keymap.
WindowsCtrl + Shift + Alt + C
macOSCtrl + Cmd + C
LinuxNot documented
Toggle worktree security
WindowsCtrl + Shift + Alt + S
macOSCtrl + Cmd + S
LinuxCtrl + Alt + Shift + S
Focus the next major workspace region
Windows / macOS / LinuxF6
Focus the previous major workspace region
Windows / macOS / LinuxShift + F6
Focus the next region without using plain F6Useful while a debugger has taken over F6.
Windows / LinuxCtrl + F6
macOSCmd + F6
Toggle fullscreen
Windows / LinuxF11
macOSFn + ForCtrl + Cmd + F
Open a recent project
Windows / macOS / LinuxCtrl + R
Open a recent branch
WindowsShift + Alt + B
macOSCmd + Ctrl + B
LinuxCtrl + Alt + Shift + B
Open the worktree picker
WindowsShift + Alt + W
macOSCmd + Ctrl + W
LinuxCtrl + Alt + Shift + W
Run the action from a toast
Windows / macOS / LinuxAlt + Shift + Enter
Save the current buffer
Windows / LinuxCtrl + S
macOSCmd + S
Save without formattingTwo-stroke chord.
WindowsCtrl + K then Ctrl + Shift + S
macOSCmd + K then S
LinuxCtrl + K then S
Save as
Windows / LinuxCtrl + Shift + S
macOSCmd + Shift + S
Create a new file
Windows / LinuxCtrl + N
macOSCmd + N
Create a new window
Windows / LinuxCtrl + Shift + N
macOSCmd + Shift + N

Panels, pickers, and tabs

Reach the command palette, file and symbol pickers, search panels, docks, tabs, and project navigation without leaving the keyboard.

ActionShortcuts
Open the command palette
Windows / LinuxF1orCtrl + Shift + P
macOSCmd + Shift + P
Open the file finder
Windows / LinuxCtrl + PorCtrl + E
macOSCmd + P
Search symbols across the project
Windows / LinuxCtrl + T
macOSCmd + T
Open project search with replace
Windows / LinuxCtrl + Shift + H
macOSCmd + Shift + H
Reopen the last closed item
Windows / LinuxCtrl + Shift + T
macOSCmd + Shift + T
Open the keymap editorTwo-stroke chord.
Windows / LinuxCtrl + K then Ctrl + S
macOSCmd + K then Cmd + S
Open the theme selectorTwo-stroke chord.
Windows / LinuxCtrl + K then Ctrl + T
macOSCmd + K then Cmd + T
Toggle light or dark modeTwo-stroke chord.
Windows / LinuxCtrl + K then Ctrl + Shift + T
macOSCmd + K then Cmd + Shift + T
Focus the project panel
Windows / LinuxCtrl + Shift + E
macOSCmd + Shift + E
Focus the outline panel
Windows / LinuxCtrl + Shift + B
macOSCmd + Shift + B
Open diagnostics
Windows / LinuxCtrl + Shift + M
macOSCmd + Shift + M
Focus the Git panel
Windows / macOS / LinuxCtrl + Shift + G
Focus the debugger panel
Windows / LinuxCtrl + Shift + D
macOSCmd + Shift + D
Focus the agent panel
WindowsCtrl + Shift + /
macOSCmd + ?
LinuxCtrl + ?
Toggle the left dock
Windows / LinuxCtrl + B
macOSCmd + B
Toggle the right dock
Windows / LinuxCtrl + Alt + B
macOSCmd + Alt + B
Toggle the bottom dock
Windows / LinuxCtrl + J
macOSCmd + J
Toggle the workspace sidebar
Windows / LinuxCtrl + Alt + J
macOSCmd + Alt + J
Toggle all docks
WindowsCtrl + Shift + Y
macOSCmd + Alt + Y
LinuxCtrl + Alt + Y
Open the tab switcher
Windows / macOS / LinuxCtrl + Tab
Activate the previous tabThe tab switcher also supports Ctrl+Shift+Tab.
Windows / LinuxCtrl + PageUp
macOSAlt + Cmd + Left
Activate the next tab
Windows / LinuxCtrl + PageDown
macOSAlt + Cmd + Right
Activate an item by number in the focused paneUse the corresponding number through 9; 0 activates the last item.
Windows / LinuxAlt + 1
macOSCtrl + 1
Close the active tab or itemCtrl+F4 also closes the active item on Windows and Linux.
Windows / LinuxCtrl + W
macOSCmd + W
Toggle pin for the active tabTwo-stroke chord.
Windows / LinuxCtrl + K then Shift + Enter
macOSCmd + K then Shift + Enter
Focus a pane in a directionUse Left, Up, or Down for the other directions.
Windows / LinuxCtrl + K then Ctrl + Right
macOSCmd + K then Cmd + Right
Swap the pane in a directionUse Left, Up, or Down for the other directions.
Windows / LinuxCtrl + K then Shift + Right
macOSCmd + K then Shift + Right

Editor editing

Move through text, select and change code, format buffers, and use Zed's editor-specific commands in the current file.

ActionShortcuts
Cancel the current editor action
Windows / macOS / LinuxEsc
Delete the previous character
Windows / macOS / LinuxBackspace
Delete the next character
Windows / macOS / LinuxDelete
Indent or accept the current completion
Windows / macOS / LinuxTab
Outdent or move to the previous completion
Windows / macOS / LinuxShift + Tab
Rewrap the current paragraphTwo-stroke chord.
Windows / LinuxCtrl + K then Ctrl + QorCtrl + K then Q
macOSCmd + K then Cmd + QorCmd + K then Q
Delete to the previous wordCtrl+W is an additional macOS default.
Windows / LinuxCtrl + Backspace
macOSAlt + Backspace
Delete to the next word
Windows / LinuxCtrl + Delete
macOSAlt + Delete
Delete to the start of the lineThe current macOS editor keymap assigns this binding; Linux and Windows do not assign a default editor binding.
Windows / LinuxNot documented
macOSCmd + Backspace
Delete to the end of the lineThe current macOS editor keymap assigns this binding; Linux and Windows do not assign a default editor binding.
Windows / LinuxNot documented
macOSCmd + Delete
Cut
Windows / LinuxCtrl + X
macOSCmd + X
Copy
Windows / LinuxCtrl + C
macOSCmd + C
Paste
Windows / LinuxCtrl + V
macOSCmd + V
Undo
Windows / LinuxCtrl + Z
macOSCmd + Z
Redo
Windows / LinuxCtrl + YorCtrl + Shift + Z
macOSCmd + Shift + Z
Move one characterRight, Up, and Down perform the corresponding movement.
Windows / macOS / LinuxLeft
Move one lineDown performs the corresponding movement.
Windows / macOS / LinuxUp
Move by wordUse Right for the next word.
Windows / LinuxCtrl + Left
macOSAlt + Left
Move to the start of the lineCmd+Left is the macOS logical-line variant.
Windows / macOS / LinuxHome
Move to the end of the lineCmd+Right is the macOS logical-line variant.
Windows / macOS / LinuxEnd
Move to the start of the buffer
Windows / LinuxCtrl + Home
macOSCmd + Up
Move to the end of the buffer
Windows / LinuxCtrl + End
macOSCmd + Down
Select all text
Windows / LinuxCtrl + A
macOSCmd + A
Select the current line
Windows / LinuxCtrl + L
macOSCmd + L
Extend the selection upward
Windows / macOS / LinuxShift + Up
Extend the selection downward
Windows / macOS / LinuxShift + Down
Indent
Windows / LinuxCtrl + ]
macOSCmd + ]
Outdent
Windows / LinuxCtrl + [
macOSCmd + [
Format the current buffer
WindowsShift + Alt + F
macOSCmd + Shift + I
LinuxCtrl + Shift + I
Organize imports
Windows / macOS / LinuxAlt + Shift + O
Insert a new line below
Windows / LinuxCtrl + Enter
macOSCmd + Enter
Insert a new line above
Windows / LinuxCtrl + Shift + Enter
macOSCmd + Shift + Enter
Toggle soft wrappingTwo-stroke chord.
Windows / LinuxCtrl + K then Ctrl + ZorCtrl + K then Z
macOSCmd + K then Z
Open the character palette
Windows / LinuxCtrl + Alt + Space
macOSCtrl + Cmd + Space
Toggle line numbers
Windows / LinuxCtrl + ;
macOSCmd + ;
Show signature help
Windows / LinuxCtrl + I
macOSCmd + I
Toggle edit prediction
WindowsCtrl + Alt + E
macOSCtrl + Cmd + E
LinuxCtrl + Alt + Shift + E
Toggle a breakpoint
Windows / macOS / LinuxF9
Edit a log breakpoint
Windows / macOS / LinuxShift + F9
Open the editor context menuThe Menu key is also a default on Windows and Linux.
Windows / macOS / LinuxShift + F10

Search, code navigation, and folds

Find text, navigate language-server results, apply quick fixes, comment code, and control folded regions in an editor.

ActionShortcuts
Find in the current buffer
Windows / LinuxCtrl + F
macOSCmd + F
Open replace in the current bufferThe current macOS base keymap does not assign Cmd+H because macOS uses it to hide the app; use Cmd+Alt+L to deploy search with selection search there.
Windows / LinuxCtrl + H
macOSNot documented
Select the next search match
Windows / macOS / LinuxF3
Select the previous search match
Windows / macOS / LinuxShift + F3
Go to a line
Windows / macOS / LinuxCtrl + G
Open the text finder
Windows / LinuxCtrl + Alt + F
macOSCmd + Alt + F
Go to definition
Windows / macOS / LinuxF12
Open the definition in a split
Windows / macOS / LinuxAlt + F12
Go to the type definition
Windows / LinuxCtrl + F12
macOSCmd + F12
Go to implementation
Windows / macOS / LinuxShift + F12
Find all references
Windows / macOS / LinuxAlt + Shift + F12
Rename the symbol
Windows / macOS / LinuxF2
Show hover informationTwo-stroke chord.
Windows / LinuxCtrl + K then Ctrl + I
macOSCmd + K then Cmd + I
Open code actions
Windows / LinuxCtrl + .
macOSCmd + .
Toggle line comments
Windows / LinuxCtrl + /
macOSCmd + /
Toggle block comments
Windows / macOS / LinuxShift + Alt + A
Go to the next diagnostic
Windows / macOS / LinuxF8
Go to the previous diagnostic
Windows / macOS / LinuxShift + F8
Fold the current regionThe physical key is layout-dependent; use the corresponding closing bracket to unfold.
WindowsCtrl + Shift + [
macOSAlt + Cmd + [
LinuxCtrl + {
Unfold the current region
WindowsCtrl + Shift + ]
macOSAlt + Cmd + ]
LinuxCtrl + }
Toggle the current foldTwo-stroke chord.
Windows / LinuxCtrl + K then Ctrl + L
macOSCmd + K then Cmd + L
Fold all regionsTwo-stroke chord.
Windows / LinuxCtrl + K then Ctrl + 0
macOSCmd + K then Cmd + 0
Unfold all regionsTwo-stroke chord.
Windows / LinuxCtrl + K then Ctrl + J
macOSCmd + K then Cmd + J
Reveal the current file in the file managerTwo-stroke chord.
Windows / LinuxCtrl + K then R
macOSCmd + K then R
Copy the current file pathTwo-stroke chord.
Windows / LinuxCtrl + K then P
macOSCmd + K then P
Go to the next Git hunkThe current macOS default keymap does not assign a default for this action.
Windows / LinuxAlt + .
macOSNot documented
Go to the previous Git hunkThe current macOS default keymap does not assign a default for this action.
Windows / LinuxAlt + ,
macOSNot documented

Agent panel

Start and steer agent threads, change profiles or modes, review edits, manage permissions, and control queued messages in Zed's agent panel.

ActionShortcuts
Start a new agent thread
Windows / LinuxCtrl + N
macOSCmd + N
Open agent settings
WindowsShift + Alt + C
macOSCmd + Alt + C
LinuxCtrl + Alt + C
Open the agent options menu
Windows / LinuxShift + Alt + I
macOSCmd + Alt + M
Open the new-thread menu
WindowsCtrl + Shift + Alt + N
macOSCmd + Alt + Shift + N
LinuxCtrl + Alt + Shift + N
Open the agent thread switcher
Windows / macOS / LinuxCtrl + Tab
Open the thread switcher and select the previous thread
Windows / macOS / LinuxCtrl + Shift + Tab
Go back within the agent pane
Windows / macOS / LinuxCtrl + -
Manage agent profiles
WindowsShift + Alt + P
macOSCmd + Alt + P
LinuxCtrl + Alt + P
Manage agent skills
WindowsShift + Alt + L
macOSCmd + Alt + L
LinuxCtrl + Alt + L
Toggle the active profile selector
Windows / LinuxCtrl + I
macOSCmd + I
Cycle the agent mode
Windows / macOS / LinuxShift + Tab
Open the model selector
WindowsShift + Alt + /
macOSCmd + Alt + /
LinuxCtrl + Alt + /
Cycle favorite modelsAlt+L is the additional Linux and Windows binding where Alt+Tab is intercepted by the desktop.
Windows / LinuxAlt + TaborAlt + L
macOSAlt + Tab
Expand the agent message editor
Windows / macOS / LinuxShift + Alt + Esc
Add the editor selection to the thread
WindowsCtrl + Shift + .
macOSCmd + >
LinuxCtrl + >
Allow a requested action always
Windows / LinuxShift + Alt + Q
macOSCmd + Alt + Y
Allow a requested action once
Windows / LinuxShift + Alt + A
macOSCmd + Y
Open the permission dropdown
Windows / LinuxCtrl + Alt + A
macOSCmd + Alt + A
Reject a requested action once
Windows / LinuxShift + Alt + X
macOSCmd + Alt + Z
Open the agent diff
WindowsCtrl + Shift + R
macOS / LinuxShift + Ctrl + R
Open the Git diff for the agent thread
Windows / LinuxCtrl + Shift + D
macOSShift + Ctrl + D
Keep all agent edits
Windows / macOS / LinuxShift + Alt + Y
Reject all agent edits
Windows / macOS / LinuxShift + Alt + Z
Send a message and keep following the agent
Windows / LinuxCtrl + Enter
macOSCmd + Enter
Send the agent message immediately
Windows / LinuxCtrl + Shift + Enter
macOSCmd + Shift + Enter
Queue the next agent message
Windows / LinuxCtrl + Shift + Alt + Enter
macOSCmd + Shift + Alt + Enter
Remove the first queued message
Windows / LinuxCtrl + Shift + Backspace
macOSCmd + Shift + Backspace
Edit the first queued message
Windows / LinuxCtrl + Alt + E
macOSCmd + Ctrl + E
Steer the first queued message
Windows / LinuxCtrl + Alt + S
macOSCmd + Ctrl + S
Clear the agent message queue
Windows / LinuxCtrl + Alt + Backspace
macOSCmd + Alt + Backspace
Paste raw text into the agent editor
Windows / LinuxCtrl + Shift + V
macOSCmd + Shift + V
Open the add-context menu
Windows / macOS / LinuxCtrl + ;
Toggle agent thinking mode
Windows / LinuxCtrl + Alt + K
macOSCmd + Alt + K
Open the thinking-effort menu
Windows / LinuxCtrl + Alt + '
macOSCmd + Alt + '
Cycle thinking effort
Windows / macOS / LinuxCtrl + '
Toggle fast mode
Windows / LinuxCtrl + Alt + .
macOSCmd + Alt + .

Terminal and Git

Open and control integrated terminals, then stage, restore, commit, and synchronize changes from the Git panel.

ActionShortcuts
Toggle the terminal panel
Windows / macOS / LinuxCtrl + `
Open a new terminal
WindowsCtrl + Shift + `
macOS / LinuxCtrl + ~
Copy terminal selection
Windows / LinuxCtrl + Shift + C
macOSCmd + C
Paste into the terminal
Windows / LinuxCtrl + Shift + V
macOSCmd + V
Clear the terminal
Windows / LinuxCtrl + Shift + L
macOSCmd + K
Search terminal output
Windows / LinuxCtrl + Shift + F
macOSCmd + F
Select all terminal text
Windows / LinuxCtrl + Shift + A
macOSCmd + A
Scroll terminal output up one page
Windows / macOS / LinuxShift + PageUp
Scroll terminal output down one page
Windows / macOS / LinuxShift + PageDown
Scroll terminal output to the top
Windows / macOS / LinuxShift + Home
Scroll terminal output to the bottom
Windows / macOS / LinuxShift + End
Toggle vi-style navigation in the terminal
Windows / macOS / LinuxCtrl + Shift + Space
Open the Git panel's Changes tab
Windows / macOS / LinuxCtrl + 1
Open the Git panel's History tab
Windows / macOS / LinuxCtrl + 2
Stage all changes
Windows / LinuxCtrl + Space
macOSCmd + Ctrl + Y
Unstage all changes
Windows / LinuxCtrl + Shift + Space
macOSCmd + Ctrl + Shift + Y
Fetch from the remote
Windows / macOS / LinuxCtrl + G then Ctrl + G
Push to the remote
Windows / macOS / LinuxCtrl + G then Up
Pull from the remote
Windows / macOS / LinuxCtrl + G then Down
Pull with rebase
Windows / macOS / LinuxCtrl + G then Shift + Down
Force-push to the remote
Windows / macOS / LinuxCtrl + G then Shift + Up
Open the Git diff
Windows / macOS / LinuxCtrl + G then D
Restore tracked files
Windows / macOS / LinuxCtrl + G then Backspace
Trash untracked files
Windows / macOS / LinuxCtrl + G then Shift + Backspace
Commit from the Git panel
Windows / LinuxCtrl + Enter
macOSCmd + Enter
Amend the current commit
Windows / LinuxCtrl + Shift + Enter
macOSCmd + Shift + Enter
Generate a commit message in the commit editor
Windows / LinuxAlt + L
macOSAlt + Tab

Source

official Zed key bindings and default keymaps · Checked

Defaults from Zed's official per-platform keymap files checked in August 2026. Zed is fully customizable: a selected VS Code, Vim, Helix, or other base keymap, user keymap, extension, terminal context, or language-specific context can change the active binding.

Make a printable Zed sheet