tmux
| Field | Value |
| Tool | tmux |
| Context | Terminal multiplexer |
| Platform | Linux, macOS, WSL, remote shells |
| Prefix | ++ctrl+b++ by default |
| Default/custom | Defaults first; custom examples at the bottom |
| Last reviewed | 2026-07-06 |
Note
In this page, Prefix means ++ctrl+b++ unless your .tmux.conf changes it.
Daily shortcuts
| Shortcut | Action | Frequency | Custom | Notes |
| Prefix then C | Create new window | Daily | No | Use one window per task/project. |
| Prefix then N | Next window | Daily | No | Fast window cycling. |
| Prefix then P | Previous window | Daily | No | Fast window cycling. |
| Prefix then 0 ... 9 | Switch to numbered window | Daily | No | Best for stable window layouts. |
| Prefix then ++percent++ | Split pane horizontally | Daily | No | Creates left/right panes. |
| Prefix then " | Split pane vertically | Daily | No | Creates top/bottom panes. |
| Prefix then O | Move to next pane | Daily | No | Simple pane rotation. |
| Prefix then Z | Toggle pane zoom | Daily | No | Focus on one pane temporarily. |
| Prefix then D | Detach from session | Daily | No | Leaves session running. |
| Prefix then Left / Right / Up / Down | Move between panes | Daily | No | Depends on terminal key support. |
Session management
| Shortcut / command | Action | Frequency | Custom | Notes |
tmux | Start tmux | Daily | No | Starts unnamed session. |
tmux new -s name | Start named session | Weekly | No | Good for projects. |
tmux ls | List sessions | Weekly | No | Shell command. |
tmux attach -t name | Attach to session | Weekly | No | Resume work. |
| Prefix then S | Choose session interactively | Weekly | No | Useful with many sessions. |
| Prefix then D | Detach session | Daily | No | Return to normal shell. |
| Prefix then ++dollar++ | Rename current session | Monthly | No | Helps long-running sessions. |
Window management
| Shortcut | Action | Frequency | Custom | Notes |
| Prefix then C | Create window | Daily | No | New shell in session. |
| Prefix then , | Rename window | Weekly | No | Useful for project layouts. |
| Prefix then W | Choose window from list | Weekly | No | Search visually. |
| Prefix then N | Next window | Daily | No | |
| Prefix then P | Previous window | Daily | No | |
| Prefix then ++ampersand++ | Kill window | Weekly | No | Prompts before closing. |
Pane management
| Shortcut | Action | Frequency | Custom | Notes |
| Prefix then ++percent++ | Split left/right | Daily | No | Horizontal split in tmux wording. |
| Prefix then " | Split top/bottom | Daily | No | Vertical split in tmux wording. |
| Prefix then X | Kill pane | Weekly | No | Prompts before closing. |
| Prefix then Space | Cycle pane layouts | Weekly | No | Great for quick rearrangement. |
| Prefix then Q | Show pane numbers | Weekly | No | Press a number to jump. |
| Prefix then Left / Right / Up / Down | Select pane by direction | Daily | No | Terminal must pass arrow keys. |
| Prefix then Ctrl+Left / Ctrl+Right / Ctrl+Up / Ctrl+Down | Resize pane | Weekly | No | May vary by terminal. |
Copy mode
| Shortcut | Action | Frequency | Custom | Notes |
| Prefix then ++left-bracket++ | Enter copy mode | Weekly | No | Scrollback and copy. |
| Q | Exit copy mode | Weekly | No | Also try ++esc++. |
| Space | Start selection | Weekly | Maybe | Works in vi copy mode. |
| Enter | Copy selection | Weekly | Maybe | Works in vi copy mode. |
| Prefix then ++right-bracket++ | Paste buffer | Weekly | No | Pastes tmux buffer. |
Commands and help
| Shortcut | Action | Frequency | Custom | Notes |
| Prefix then ? | List key bindings | Monthly | No | Best built-in reference. |
| Prefix then : | tmux command prompt | Weekly | No | Run tmux commands interactively. |
| Prefix then T | Show clock | Rare | No | Mostly decorative. |
| Prefix then Ctrl+B | Send prefix to application | Rare | No | Needed inside nested tmux/session apps. |
Useful custom mappings
Add these to ~/.tmux.conf only if they fit your workflow.
# Reload tmux config quickly
bind r source-file ~/.tmux.conf \; display-message "tmux.conf reloaded"
# Vim-like pane navigation
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# Easier split shortcuts that preserve current path
bind | split-window -h -c "#{pane_current_path}"
bind - split-window -v -c "#{pane_current_path}"
Conflicts and notes
- The default prefix is
++ctrl+b++, but many users remap it to ++ctrl+a++. - Terminal emulators can intercept shortcuts before tmux receives them.
- Copy mode behavior changes depending on whether you use vi or emacs key mode.
- Use
Prefix then ++question++ inside tmux to confirm your actual active mappings.
Sources