Tabs 16
Super is the Cmd key on macOS, the Windows key on Windows and the Super or Hyper key on Linux; the Ctrl and Shift chords are the same on every system.
| Action | Shortcut |
|---|---|
| New tabThe tab opens in the same domain as the pane you are in. | Ctrl+Shift+TorSuper+T |
| New tab in default domainUses the default domain rather than the one the current pane belongs to. | Super+Shift+T |
| Close tabAsks for confirmation first, then ends every pane the tab contains. | Ctrl+Shift+WorSuper+W |
| Next tabActivates the tab to the right of the current one. | Ctrl+TaborCtrl+Page DownorSuper+Shift+] |
| Previous tabActivates the tab to the left of the current one. | Ctrl+Shift+TaborCtrl+Page UporSuper+Shift+[ |
| Move tab leftShifts the current tab one place toward the start of the tab bar. | Ctrl+Shift+Page Up |
| Move tab rightShifts the current tab one place toward the end of the tab bar. | Ctrl+Shift+Page Down |
| Go to tab 1Tabs are counted from the left, so this activates the leftmost one. | Ctrl+Shift+1orSuper+1 |
| Go to tab 2 | Ctrl+Shift+2orSuper+2 |
| Go to tab 3 | Ctrl+Shift+3orSuper+3 |
| Go to tab 4 | Ctrl+Shift+4orSuper+4 |
| Go to tab 5 | Ctrl+Shift+5orSuper+5 |
| Go to tab 6 | Ctrl+Shift+6orSuper+6 |
| Go to tab 7 | Ctrl+Shift+7orSuper+7 |
| Go to tab 8 | Ctrl+Shift+8orSuper+8 |
| Go to last tabActivates the rightmost tab, however many are open. | Ctrl+Shift+9orSuper+9 |
Windows and font size 6
| Action | Shortcut |
|---|---|
| New windowThe new window starts with one tab from the default domain. | Ctrl+Shift+NorSuper+N |
| Toggle fullscreen | Alt+Enter |
| Hide windowMinimizes or hides the current window, whichever the platform does. | Super+M |
| Increase font size | Ctrl+=orSuper+= |
| Decrease font size | Ctrl+-orSuper+- |
| Reset font sizeReturns the current window to the size set in the configuration file. | Ctrl+0orSuper+0 |
Panes 11
| Action | Shortcut |
|---|---|
| Split verticallyThe current pane becomes the top half and a new pane opens below it. | Ctrl+Shift+Alt+" |
| Split horizontallyThe current pane becomes the left half and a new pane opens beside it. | Ctrl+Shift+Alt+% |
| Focus pane leftThe arrow picks the direction; focus goes to the neighbouring pane on that side. | Ctrl+Shift+Left |
| Focus pane right | Ctrl+Shift+Right |
| Focus pane above | Ctrl+Shift+Up |
| Focus pane below | Ctrl+Shift+Down |
| Resize pane leftEach press changes the active pane by one cell in that direction. | Ctrl+Shift+Alt+Left |
| Resize pane right | Ctrl+Shift+Alt+Right |
| Resize pane up | Ctrl+Shift+Alt+Up |
| Resize pane down | Ctrl+Shift+Alt+Down |
| Zoom paneThe pane fills the tab and hides the others; pressing again restores the split layout. | Ctrl+Shift+Z |
Clipboard and scrollback 8
Keyboards with dedicated Copy and Paste keys trigger the same two clipboard actions.
| Action | Shortcut |
|---|---|
| Copy to clipboardCopies the selected text to the system clipboard. | Ctrl+Shift+CorSuper+C |
| Paste from clipboardPastes the system clipboard into the current pane. | Ctrl+Shift+VorSuper+V |
| Copy to primary selectionTargets the primary selection buffer found on X11 and some Wayland systems. | Ctrl+Insert |
| Paste from primary selectionInserts the primary selection buffer instead of the system clipboard. | Shift+Insert |
| Scroll page upMoves the viewport one full screen back through the scrollback. | Shift+Page Up |
| Scroll page downMoves the viewport one full screen toward the newest output. | Shift+Page Down |
| Clear scrollbackDiscards the lines above the viewport and cannot be undone; the visible screen stays. | Ctrl+Shift+KorSuper+K |
| Quick selectLabels URLs, paths, hashes and similar matches; typing a label copies that item. | Ctrl+Shift+Space |
Command palette and configuration 8
Run wezterm show-keys --lua to print the assignments in effect, in a form that can be pasted into the configuration file.
| Action | Shortcut |
|---|---|
| Command paletteOpens a modal list of commands, ordered by how often and how recently you ran them. | Ctrl+Shift+P |
| Previous palette item | Up |
| Next palette item | Down |
| Run highlighted command | Enter |
| Clear palette selection | Ctrl+U |
| Close command palette | Esc |
| Reload configurationForces a reload; WezTerm also reloads by itself when the configuration file changes. | Ctrl+Shift+RorSuper+R |
| Debug overlayCovers the current tab with a debug log and a Lua REPL. | Ctrl+Shift+L |
Character selection 8
| Action | Shortcut |
|---|---|
| Character selectionOpens a picker for emoji, Nerd Font glyphs and Unicode characters, searchable by name or codepoint. | Ctrl+Shift+U |
| Move up in list | Up |
| Move down in list | Down |
| Insert highlighted characterAlso puts the character on the clipboard and closes the picker. | Enter |
| Close character picker | EscorCtrl+G |
| Next character groupGroups run from recently used through emoji categories to Nerd Fonts and all Unicode names. | Ctrl+R |
| Previous character group | Ctrl+Shift+R |
| Clear picker search text | Ctrl+U |
Copy mode selection 9
| Action | Shortcut |
|---|---|
| Enter copy modeKeys then drive a cursor through the scrollback, Vim style, until copy mode is closed. | Ctrl+Shift+X |
| Toggle cell selectionSelection is off when copy mode starts; press it where the region should begin. | V |
| Toggle cell selectionSame action as V; listed in the default key table rather than the manual page. | Space |
| Select whole lines | Shift+V |
| Select a rectangular block | Ctrl+V |
| Jump to other selection endSwaps the cursor to the opposite end so that side can be adjusted. | O |
| Swap selection end horizontallyChanges only the column, which helps when adjusting a rectangular block. | Shift+O |
| Copy and close copy modeSends the selection to both the clipboard and the primary selection. | Y |
| Leave copy modeThe viewport returns to the bottom of the scrollback. | EscorCtrl+CorCtrl+GorQ |
Copy mode movement 26
| Action | Shortcut |
|---|---|
| Move left | LeftorH |
| Move down | DownorJ |
| Move up | UporK |
| Move right | RightorL |
| Forward one word | WorTaborAlt+ForAlt+Right |
| Back one word | BorShift+TaborAlt+BorAlt+Left |
| End of wordGoes forward to where a word ends rather than where the next one starts. | E |
| Start of lineGoes to the first column, indentation included. | 0orHome |
| Start of line contentSkips the indentation and lands on the first text of the line. | ^orAlt+M |
| End of line | $orEnd |
| Start of next line | Enter |
| Top of scrollback | G |
| Bottom of scrollback | Shift+G |
| Top of viewport | Shift+H |
| Middle of viewport | Shift+M |
| Bottom of viewport | Shift+L |
| Up one screen | Page UporCtrl+B |
| Up half a screen | Ctrl+U |
| Down one screen | Page DownorCtrl+F |
| Down half a screen | Ctrl+D |
| Jump forward to characterType a character next; the cursor goes to its next occurrence on the current line. | F |
| Jump backward to characterType a character next; the cursor goes to its previous occurrence on the current line. | Shift+F |
| Jump forward before characterLike F, but the cursor stops one cell short of the character you type. | T |
| Jump backward after characterLike Shift + F, but the cursor stops one cell after the character you type. | Shift+T |
| Repeat last jump | ; |
| Repeat last jump reversedRuns the most recent character jump again in the opposite direction. | , |
Search mode 9
| Action | Shortcut |
|---|---|
| Search scrollbackOpens the search bar in the current tab with an empty, case-sensitive pattern. | Ctrl+Shift+ForSuper+F |
| Previous matchSearching starts at the bottom-most match, so this walks up toward older output. | EnterorUporCtrl+P |
| Next match | Ctrl+NorDown |
| Previous page of matches | Page Up |
| Next page of matches | Page Down |
| Cycle match modeSteps through case-sensitive, case-insensitive, smart-case and regular-expression matching. | Ctrl+R |
| Clear search patternEmpties the search bar for a fresh pattern. | Ctrl+U |
| Copy selected match | Ctrl+Shift+C |
| Close searchThe match stays selected and the viewport stays where the search left it. | Esc |
Mouse 8
When a terminal application has turned on mouse reporting, hold Shift to make these mouse assignments apply instead of sending the event to the application.
| Action | Shortcut |
|---|---|
| Select textReleasing the button copies the selection to the clipboard and the primary selection. | Drag |
| Select word | Double-click |
| Select line | Triple-click |
| Extend selection to pointer | Shift+Click |
| Select rectangular block | Alt+Drag |
| Open link under pointerApplies when no selection is in progress; otherwise the release completes the selection. | Click |
| Paste primary selection | Middle-click |
| Move windowThe window follows the pointer until the mouse button is released. | Super+DragorCtrl+Shift+Drag |
Mac only 1
| Action | Shortcut |
|---|---|
| Hide applicationRegistered on macOS only, where Super is the Cmd key; hides WezTerm as a whole. | Super+H |
No row on this page matches that filter.
Notes
Panes with a tmux accent
WezTerm's split chords look odd until you spot the tmux connection: Ctrl + Shift + Alt + " splits the pane into top and bottom halves and Ctrl + Shift + Alt + % into left and right — the same " and % tmux uses, lifted into direct keybindings. Ctrl + Shift + Left, Ctrl + Shift + Right, Ctrl + Shift + Up and Ctrl + Shift + Down move focus between panes, the same arrows with Alt added resize the active pane one cell at a time, and Ctrl + Shift + Z zooms one pane to fill the tab, then restores the layout on a second press. Tabs behave conventionally: Ctrl + Shift + T new, Ctrl + Shift + W close, Ctrl + Tab cycles.
The selection tools are the underused gems. Ctrl + Shift + Space enters Quick Select, which overlays hint labels on URLs, paths, git hashes, IP addresses and numbers in the pane — type a label and the item is copied, no mouse. Ctrl + Shift + X enters full copy mode for keyboard-driven selection, and Ctrl + Shift + F searches the scrollback.
A terminal you program
Configuration is a Lua file, ~/.wezterm.lua, and WezTerm watches it and reloads when it changes, with most options taking effect at once — Ctrl + Shift + R forces a reload, and the Ctrl + Shift + L debug overlay pairs a debug log with a Lua REPL for trying snippets before they go into the config. Ctrl + Shift + P opens the command palette for everything unbound, and font size rides on Ctrl + =, Ctrl + -, Ctrl + 0.
Most defaults are registered twice, once with Ctrl and Shift and once with Super. Super is the Cmd key on macOS and the Windows key on Windows, so on a Mac Super + T, Super + W and Super + C are the familiar Cmd chords, while the Ctrl and Shift forms work there too.
Questions
Why are the split keys " and % of all things?
They are the characters tmux has long used for its two splits: " for top and bottom, % for left and right. WezTerm binds the same characters directly, behind Ctrl, Shift and Alt, so tmux muscle memory transfers — and if you dislike the stretch, both are one line to rebind in .wezterm.lua.
What does Quick Select actually select?
Things you usually mouse-drag: URLs and path fragments, git hashes, IP addresses and numbers, plus any patterns added in the configuration. Ctrl + Shift + Space labels every match with a one- or two-character prefix; typing the prefix copies that item, and typing it in uppercase copies and pastes it. For arbitrary text, use copy mode (Ctrl + Shift + X) instead.
Where is the config, and do I need to restart after editing?
~/.wezterm.lua (%USERPROFILE%/.wezterm.lua on Windows) — you create it yourself; it does not exist by default. WezTerm watches it and applies most changes automatically; Ctrl + Shift + R reloads on demand, and the debug overlay on Ctrl + Shift + L shows a debug log and a Lua REPL for testing snippets.
What is pane zoom for?
Ctrl + Shift + Z temporarily expands the focused pane to the whole tab — full width for reading logs or an editor — and the same key restores your split layout exactly as it was. It is a toggle, not a rearrangement.
How do I scroll and search history by keyboard?
Shift + Page Up / Shift + Page Down page through scrollback, Ctrl + Shift + F searches it, and Ctrl + Shift + K clears it. For selecting text while back there, enter copy mode with Ctrl + Shift + X and navigate with the arrow keys or h, j, k, l; v starts a selection and y copies it and leaves copy mode.
Do the WezTerm shortcuts differ between macOS, Windows and Linux?
No. WezTerm registers the same default table everywhere; most actions simply have two bindings. The Ctrl and Shift chords work on every system, and the Super chords use the Cmd key on macOS and the Windows key on Windows, so Super + V is Cmd+V on a Mac. The one exception in the table is Super + H (hide application), which is macOS only.
Sources and checks
- WezTerm documentation — Default Key Assignments Main key table: tabs, windows, panes, clipboard, scrollback and overlays
- WezTerm documentation — Copy Mode Copy mode selection and movement keys
- WezTerm repository — default copy_mode key table (release 20240203-110809-5046fc22) Copy mode keys missing from the manual table: Space and the character jumps
- WezTerm documentation — Scrollback Search mode keys
- WezTerm documentation — Mouse Binding Default mouse assignments
- WezTerm documentation — Key Binding Meaning of the SUPER and ALT modifiers on each system
- WezTerm documentation — CharSelect Keys inside character selection
- WezTerm documentation — ActivateCommandPalette Keys inside the command palette
Every row on this page was matched to a line in the documentation above on . A binding that could not be found there is not listed.
Found a wrong or missing key? Tell us and it gets checked against the source. How we verify describes the process and its limits.