Appearance
tmux
Terminal multiplexer — session persistence, window management, and pane splitting. The most widely used multiplexer.
tmux (terminal multiplexer) was created by Nicholas Marriott in 2007 as a modern, BSD-licensed replacement for GNU Screen. It has become the de facto standard terminal multiplexer, used by millions of developers for session persistence, window management, and pane splitting.
As an intermediary between the terminal emulator and the application, tmux maintains its own VT parser and re-renders output through its internal grid. This means features must be explicitly supported by tmux to pass through — it doesn't transparently relay escape sequences. tmux has steadily added support for modern features: truecolor (since 2.2), OSC 8 hyperlinks (3.4), extended underlines, and partial kitty keyboard support.
tmux's pass-through mode (\ePtmux;) allows applications to send escape sequences directly to the outer terminal, bypassing tmux's parser. This is used for features tmux doesn't natively support, like sixel graphics and some query responses. However, pass-through is fragile and not universally reliable.
Backend: Terminal multiplexer — session persistence, window management, and pane splitting. The most widely used multiplexer. · v3.6a
92%
135 passed · 12 failed of 147 features
Tested: March 26, 2026
Character Sets
| Feature | Support | Notes |
|---|---|---|
| DEC line drawing character set | ✓ yes | |
| DEC Special Graphics | ✓ yes | |
| G0/G1 character set switching | ✓ yes | |
| UTF-8 mode | ✓ yes |
Cursor
| Feature | Support | Notes |
|---|---|---|
| CUD stops at bottom | ✓ yes | cursor at row 40 |
| CUP at screen boundaries | ✗ no | tmux reinterprets CUP coordinates within its own grid, boundary behavior differs |
| CUP with DECOM | ✓ yes | |
| CUU stops at top | ✓ yes | |
| Hide cursor (DECTCEM) | ✓ yes | |
| Cursor horizontal absolute (CHA) | ✓ yes | |
| Cursor position (CUP) | ✓ yes | |
| Cursor back (CUB) | ✓ yes | |
| Cursor down (CUD) | ✓ yes | |
| Cursor forward (CUF) | ✓ yes | |
| Cursor home | ✓ yes | |
| Cursor up (CUU) | ✓ yes | |
| Cursor next line (CNL) | ✓ yes | |
| Cursor position report (DSR 6) | ✓ yes | |
| Reverse Wrap (Mode 45) | ✓ yes | |
| Save/restore cursor (DECSC) | ✓ yes | |
| Cursor shape (DECSCUSR) | ✓ yes |
Device Status
| Feature | Support | Notes |
|---|---|---|
| Mode Report (DECRPM) | ✗ no | tmux intercepts DECRPM — responds for its own modes, not the outer terminal |
| Request Setting (DECRQSS) | ✓ yes | |
| Primary device attributes (DA1) | ✓ yes | |
| Secondary Device Attributes (DA2) | ✓ yes | |
| Device status report (DSR 5) | ✓ yes | |
| Feature Reporting (TERM_FEATURES) | ✗ no | tmux does not pass through XTGETTCAP terminal-features query |
| Tertiary Device Attributes (DA3) | ✗ no | tmux intercepts DA3 and does not forward it to the outer terminal |
| Query Terminfo (XTGETTCAP) | ✗ no | tmux intercepts XTGETTCAP queries for its own terminfo, not the outer terminal's |
| Terminal Version (XTVERSION) | ✓ yes |
Editing
| Feature | Support | Notes |
|---|---|---|
| Delete characters (DCH) | ✓ yes | |
| Delete lines (DL) | ✓ yes | |
| Insert characters (ICH) | ✓ yes | |
| Insert lines (IL) | ✓ yes | |
| Repeat character (REP) | ✓ yes |
Erase
| Feature | Support | Notes |
|---|---|---|
| Erase character (ECH) | ✓ yes | |
| ED at scroll region boundary | ✓ yes | |
| EL erases with bg color | ✓ yes | |
| Erase line (EL 2) | ✓ yes | |
| Erase to BOL (EL 1) | ✓ yes | |
| Erase to EOL (EL 0) | ✓ yes | |
| Erase above (ED 1) | ✓ yes | |
| Erase screen (ED 2) | ✓ yes | |
| Erase below (ED 0) | ✓ yes | |
| Erase scrollback (ED 3) | ✓ yes | |
| Selective Erase (DECSED) | ✓ yes |
Extensions
| Feature | Support | Notes |
|---|---|---|
| iTerm2 Inline Images (OSC 1337) | ✓ yes | |
| Kitty graphics protocol | ✗ no | tmux does not support kitty graphics protocol pass-through |
| Kitty keyboard protocol | ✗ no | tmux has partial kitty keyboard support (since 3.4) but probe detects incomplete implementation |
| Desktop Notifications (OSC 9/777) | ✓ yes | |
| VS Code Shell Integration (OSC 633) | ✓ yes | |
| Icon and title (OSC 0) | ✓ yes | |
| Foreground color query (OSC 10) | ✗ no | tmux intercepts OSC 10 (foreground color query) and returns its own value |
| Background color query (OSC 11) | ✗ no | tmux intercepts OSC 11 (background color query) and returns its own value |
| iTerm2 Capability Reporting (OSC 1337) | ✗ no | iTerm2-specific protocol not supported by tmux |
| iTerm2 Cell Size Reporting (OSC 1337) | ✗ no | iTerm2-specific protocol not supported by tmux |
| Window title (OSC 2) | ✓ yes | |
| Clipboard access (OSC 52) | ✓ yes | |
| Current directory (OSC 7) | ✓ yes | |
| Hyperlinks (OSC 8) | ✓ yes | |
| Text reflow on resize | ✓ yes | |
| Semantic prompts (OSC 133) | ✓ yes | |
| Sixel graphics | ✓ yes | |
| Sixel support in DA1 | ? unknown | |
| 24-bit truecolor | ✓ yes |
Input Protocols
| Feature | Support | Notes |
|---|---|---|
| Button-Event Mouse (1002) | ✓ yes | |
| CSI u Key Encoding | ✓ yes | |
| modifyOtherKeys | ✓ yes | |
| Pixel Mouse Reporting (1016) | ✓ yes | |
| urxvt Mouse Reporting (1015) | ✓ yes | |
| X10 Mouse Tracking (9) | ✓ yes |
Modes
| Feature | Support | Notes |
|---|---|---|
| Enter alt screen (DECSET 1049) | ✓ yes | Behavioral: entered and responded |
| Exit alt screen (DECRST 1049) | ✓ yes | |
| App cursor keys (DECCKM) | ✓ yes | Behavioral: responsive after enable |
| Application keypad (DECKPAM) | ✓ yes | |
| Auto-wrap (DECAWM) | ✓ yes | Behavioral: wrap confirmed |
| Bracketed paste (DECSET 2004) | ✓ yes | DECRPM: mode reset |
| Focus tracking (DECSET 1004) | ✓ yes | DECRPM: mode reset |
| Insert/replace mode (IRM) | ✓ yes | |
| Left/Right Margins (DECLRMM, Mode 69) | ✓ yes | |
| All motion mouse (DECSET 1003) | ✓ yes | Behavioral: responsive after enable |
| SGR mouse mode (DECSET 1006) | ✓ yes | DECRPM: mode reset |
| Mouse tracking (DECSET 1000) | ✓ yes | Behavioral: responsive after enable |
| Origin mode (DECOM) | ✗ no | tmux's DECOM handling differs from direct terminal — origin mode not fully passed through |
| Reverse video (DECSCNM) | ✓ yes | Behavioral: responsive after enable |
| Synchronized output (DECSET 2026) | ✓ yes | Behavioral: responsive after enable |
Reset
| Feature | Support | Notes |
|---|---|---|
| Backend reset() method | ✓ yes | cursor at 5;5 after DECSTR |
| Full reset (RIS) | ✓ yes | |
| SGR reset clears attributes | ✓ yes | |
| Soft reset (DECSTR) | ✓ yes |
Scrollback
| Feature | Support | Notes |
|---|---|---|
| Scrollback accumulates | ✓ yes | |
| Alt screen separate scrollback | ✓ yes | |
| DECSTBM constrains scrolling | ✓ yes | |
| DECSTBM reset to full screen | ✓ yes | cursor at row 40 (expected near bottom after DECSTBM reset) |
| Reverse index (RI) | ✓ yes | |
| Scroll down (SD) | ✓ yes | |
| Scroll up (SU) | ✓ yes | |
| Scroll region (DECSTBM) | ✓ yes | |
| Total line count | ✓ yes | Content written to scrollback |
SGR (Text Styling)
| Feature | Support | Notes |
|---|---|---|
| 256-color bg (SGR 48;5) | ✓ yes | |
| Bright bg colors (SGR 100-107) | ✓ yes | |
| Default bg color (SGR 49) | ✓ yes | |
| Standard bg colors (SGR 40-47) | ✓ yes | |
| 24-bit bg (SGR 48;2) | ✓ yes | |
| Blink (SGR 5) | ✓ yes | |
| Bold (SGR 1) | ✓ yes | |
| Faint/dim (SGR 2) | ✓ yes | |
| 256-color fg (SGR 38;5) | ✓ yes | |
| Bright fg colors (SGR 90-97) | ✓ yes | |
| Default fg color (SGR 39) | ✓ yes | |
| Standard fg colors (SGR 30-37) | ✓ yes | |
| 24-bit fg (SGR 38;2) | ✓ yes | |
| Hidden/invisible (SGR 8) | ✓ yes | |
| Inverse video (SGR 7) | ✓ yes | |
| Italic (SGR 3) | ✓ yes | |
| Overline (SGR 53) | ✓ yes | |
| Reset all (SGR 0) | ✓ yes | |
| Reset bold/dim (SGR 22) | ✓ yes | |
| Reset inverse (SGR 27) | ✓ yes | |
| Reset italic (SGR 23) | ✓ yes | |
| Reset underline (SGR 24) | ✓ yes | |
| Strikethrough (SGR 9) | ✓ yes | |
| Underline color (SGR 58) | ✓ yes | |
| Curly underline (SGR 4:3) | ✓ yes | |
| Dashed underline (SGR 4:5) | ✓ yes | |
| Dotted underline (SGR 4:4) | ✓ yes | |
| Double underline (SGR 21) | ✓ yes | |
| Underline (SGR 4) | ✓ yes |
Text
| Feature | Support | Notes |
|---|---|---|
| Backspace (BS) | ✓ yes | |
| Basic text rendering | ✓ yes | |
| Combining characters (0 cols) | ✓ yes | |
| Carriage return | ✓ yes | |
| Index (IND) | ✓ yes | |
| Line feed | ✓ yes | |
| Next line (NEL) | ✓ yes | |
| Overwrite at cursor | ✓ yes | |
| Reverse Index at Scroll Top | ✓ yes | |
| Tab stops | ✓ yes | |
| CJK wide chars (2 cols) | ✓ yes | |
| Emoji wide chars (2 cols) | ✓ yes | |
| Regional indicator flags (2 cols) | ✓ yes | |
| Variation selector 16 (emoji presentation) | ✓ yes | |
| Emoji ZWJ sequences (2 cols) | ✓ yes | |
| Text wraps at width | ✓ yes |
Unicode
| Feature | Support | Notes |
|---|---|---|
| East Asian Ambiguous Width | ✓ yes | width=1 (ambiguous chars vary by terminal/locale) |
| Grapheme Cluster Cursor Movement | ✓ yes | |
| Tab Stops (HT) | ✓ yes | |
| Wide Char at Line Wrap | ✓ yes |