Skip to content

Terminfo.devCan your terminal do that?

Feature support tables for terminal emulators — powered by Termless, Playwright for terminals

Terminal Applications

Tested on real terminal applications. Don't see your terminal? Contribute results with npx terminfo.dev submit

iTerm23.6.9
97%144 / 148
Ghostty1.3.1
95%140 / 148
cmux
93%143 / 153
VS Code1.112.0
93%137 / 148
Warp0.2026.03.18.08.24.03
91%135 / 148
Cursor2.6.21
91%135 / 148
Kitty0.46.2
89%132 / 148
Terminal.app2.15
89%132 / 148

Terminal Baseline 2026

Inspired by Web Baseline — minimum feature sets that terminals should support

Feature Matrix

iTerm2GhosttycmuxVS CodeWarpCursorKittyTerminal.app
SGR (Text Styling)
256-color bg (SGR 48;5)
Bright bg colors (SGR 100-107)
Default bg color (SGR 49)
Standard bg colors (SGR 40-47)
24-bit bg (SGR 48;2)
Blink (SGR 5)
Bold (SGR 1)
Faint/dim (SGR 2)
256-color fg (SGR 38;5)
Bright fg colors (SGR 90-97)
Default fg color (SGR 39)
Standard fg colors (SGR 30-37)
24-bit fg (SGR 38;2)
Hidden/invisible (SGR 8)
Inverse video (SGR 7)
Italic (SGR 3)
Overline (SGR 53)
Reset all (SGR 0)
Reset bold/dim (SGR 22)
Reset inverse (SGR 27)
Reset italic (SGR 23)
Reset underline (SGR 24)
Strikethrough (SGR 9)
Underline color (SGR 58)
Curly underline (SGR 4:3)
Dashed underline (SGR 4:5)
Dotted underline (SGR 4:4)
Double underline (SGR 21)
Underline (SGR 4)
Cursor
CUD stops at bottom
CUP at screen boundaries
CUP with DECOM
CUU stops at top
Hide cursor (DECTCEM)
Cursor horizontal absolute (CHA)
Cursor position (CUP)
Cursor back (CUB)
Cursor down (CUD)
Cursor forward (CUF)
Cursor home
Cursor up (CUU)
Cursor next line (CNL)
Cursor position report (DSR 6)
Reverse Wrap (Mode 45)
Save/restore cursor (DECSC)
Cursor shape (DECSCUSR)
Text
Backspace (BS)
Basic text rendering
Combining characters (0 cols)
Carriage return
Index (IND)
Line feed
Next line (NEL)
Overwrite at cursor
Reverse Index at Scroll Top
Tab stops
CJK wide chars (2 cols)
Emoji wide chars (2 cols)
Regional indicator flags (2 cols)
Variation selector 16 (emoji presentation)
Emoji ZWJ sequences (2 cols)
Text wraps at width
Erase
Erase character (ECH)
ED at scroll region boundary
EL erases with bg color
Erase line (EL 2)
Erase to BOL (EL 1)
Erase to EOL (EL 0)
Erase above (ED 1)
Erase screen (ED 2)
Erase below (ED 0)
Erase scrollback (ED 3)
Selective Erase (DECSED)
Editing
Delete characters (DCH)
Delete lines (DL)
Insert characters (ICH)
Insert lines (IL)
Repeat character (REP)
Modes
Enter alt screen (DECSET 1049)
Exit alt screen (DECRST 1049)
App cursor keys (DECCKM)
Application keypad (DECKPAM)
Auto-wrap (DECAWM)
Bracketed paste (DECSET 2004)
Mode 2031 color scheme reporting???????
Focus tracking (DECSET 1004)
Insert/replace mode (IRM)
Left/Right Margins (DECLRMM, Mode 69)
All motion mouse (DECSET 1003)
SGR mouse mode (DECSET 1006)
Mouse tracking (DECSET 1000)
Origin mode (DECOM)
Reverse video (DECSCNM)
Synchronized output (DECSET 2026)
Scrollback
Scrollback accumulates
Alt screen separate scrollback
DECSTBM constrains scrolling
DECSTBM reset to full screen
Reverse index (RI)
Scroll down (SD)
Scroll up (SU)
Scroll region (DECSTBM)
Total line count
Reset
Backend reset() method
Full reset (RIS)
SGR reset clears attributes
Soft reset (DECSTR)
Extensions
iTerm2 Inline Images (OSC 1337)
Kitty graphics protocol
Kitty keyboard protocol
Desktop Notifications (OSC 9/777)
VS Code Shell Integration (OSC 633)
Icon and title (OSC 0)
Foreground color query (OSC 10)
Background color query (OSC 11)
iTerm2 Capability Reporting (OSC 1337)
iTerm2 Cell Size Reporting (OSC 1337)
Window title (OSC 2)
Clipboard access (OSC 52)
OSC 5522 advanced clipboard???????
OSC 66 text sizing???????
Current directory (OSC 7)
Hyperlinks (OSC 8)
OSC 9;4 progress bar???????
Text reflow on resize
Semantic prompts (OSC 133)
Sixel graphics
Sixel support in DA1
24-bit truecolor
Character Sets
DEC line drawing character set
DEC Special Graphics
G0/G1 character set switching
UTF-8 mode
Device Status
Mode Report (DECRPM)
Request Setting (DECRQSS)
Primary device attributes (DA1)
Secondary Device Attributes (DA2)
Device status report (DSR 5)
Feature Reporting (TERM_FEATURES)
Tertiary Device Attributes (DA3)
Query Terminfo (XTGETTCAP)
Terminal Version (XTVERSION)
Input Protocols
Button-Event Mouse (1002)
CSI u Key Encoding
modifyOtherKeys
modifyOtherKeys mode 3???????
Pixel Mouse Reporting (1016)
urxvt Mouse Reporting (1015)
X10 Mouse Tracking (9)
Unicode
East Asian Ambiguous Width
Grapheme Cluster Cursor Movement
Tab Stops (HT)
Wide Char at Line Wrap

Headless Backends

Parser correctness tested via Termlessheadless libraries may not expose all features through their API

Headless backends test parser correctness, not rendering. A means the parser accepts the sequence, not that it renders correctly.
vterm0.2.0
97%146 / 151
xterm.js5.5.0
76%112 / 147
xterm.js5.4.0
76%112 / 147
xterm.js6.1.0-beta.195
76%112 / 147
xterm.js6.0.0
76%112 / 147
Alacritty0.26.0
71%107 / 151
WezTerm0.1.0-fork.5
70%106 / 151
vt100.js0.2.1
56%85 / 151

Headless Baseline Coverage

vtermxterm.jsxterm.jsxterm.jsxterm.jsAlacrittyWezTermvt100.js
SGR (Text Styling)
256-color bg (SGR 48;5)~
Bright bg colors (SGR 100-107)~
Default bg color (SGR 49)
Standard bg colors (SGR 40-47)~
24-bit bg (SGR 48;2)
Blink (SGR 5)~~~~~~
Bold (SGR 1)
Faint/dim (SGR 2)
256-color fg (SGR 38;5)~
Bright fg colors (SGR 90-97)~
Default fg color (SGR 39)
Standard fg colors (SGR 30-37)~~
24-bit fg (SGR 38;2)
Hidden/invisible (SGR 8)~~~~~~
Inverse video (SGR 7)
Italic (SGR 3)
Overline (SGR 53)
Reset all (SGR 0)
Reset bold/dim (SGR 22)
Reset inverse (SGR 27)
Reset italic (SGR 23)
Reset underline (SGR 24)
Strikethrough (SGR 9)
Underline color (SGR 58)~~
Curly underline (SGR 4:3)
Dashed underline (SGR 4:5)
Dotted underline (SGR 4:4)
Double underline (SGR 21)~
Underline (SGR 4)
Cursor
CUD stops at bottom
CUP at screen boundaries
CUP with DECOM
CUU stops at top
Hide cursor (DECTCEM)~~~~
Cursor horizontal absolute (CHA)
Cursor position (CUP)
Cursor back (CUB)
Cursor down (CUD)
Cursor forward (CUF)
Cursor home
Cursor up (CUU)
Cursor next line (CNL)
Cursor position report (DSR 6)~~~~~~
Reverse Wrap (Mode 45)
Save/restore cursor (DECSC)
Cursor shape (DECSCUSR)~~~~
Text
Backspace (BS)
Basic text rendering
Combining characters (0 cols)
Carriage return
Index (IND)
Line feed
Next line (NEL)
Overwrite at cursor
Reverse Index at Scroll Top
Tab stops
CJK wide chars (2 cols)
Emoji wide chars (2 cols)
Regional indicator flags (2 cols)
Variation selector 16 (emoji presentation)
Emoji ZWJ sequences (2 cols)
Text wraps at width
Erase
Erase character (ECH)
ED at scroll region boundary
EL erases with bg color
Erase line (EL 2)
Erase to BOL (EL 1)
Erase to EOL (EL 0)
Erase above (ED 1)
Erase screen (ED 2)
Erase below (ED 0)
Erase scrollback (ED 3)
Selective Erase (DECSED)
Editing
Delete characters (DCH)
Delete lines (DL)
Insert characters (ICH)
Insert lines (IL)
Repeat character (REP)
Modes
Enter alt screen (DECSET 1049)
Exit alt screen (DECRST 1049)
App cursor keys (DECCKM)
Application keypad (DECKPAM)~~
Auto-wrap (DECAWM)
Bracketed paste (DECSET 2004)
Mode 2031 color scheme reporting????~
Focus tracking (DECSET 1004)
Insert/replace mode (IRM)
Left/Right Margins (DECLRMM, Mode 69)~~
All motion mouse (DECSET 1003)
SGR mouse mode (DECSET 1006)~~~~~~
Mouse tracking (DECSET 1000)
Origin mode (DECOM)
Reverse video (DECSCNM)~~~~~
Synchronized output (DECSET 2026)
Scrollback
Scrollback accumulates
Alt screen separate scrollback
DECSTBM constrains scrolling
DECSTBM reset to full screen
Reverse index (RI)
Scroll down (SD)
Scroll up (SU)~~~~
Scroll region (DECSTBM)
Total line count
Reset
Backend reset() method
Full reset (RIS)
SGR reset clears attributes
Soft reset (DECSTR)~~
Extensions
iTerm2 Inline Images (OSC 1337)
Kitty graphics protocol
Kitty keyboard protocol
Desktop Notifications (OSC 9/777)~~
VS Code Shell Integration (OSC 633)
Icon and title (OSC 0)
Foreground color query (OSC 10)~~
Background color query (OSC 11)~~
iTerm2 Capability Reporting (OSC 1337)
iTerm2 Cell Size Reporting (OSC 1337)
Window title (OSC 2)
Clipboard access (OSC 52)~~
OSC 5522 advanced clipboard????
OSC 66 text sizing????
Current directory (OSC 7)~~
Hyperlinks (OSC 8)
OSC 9;4 progress bar????????
Text reflow on resize
Semantic prompts (OSC 133)
Sixel graphics
Sixel support in DA1~
24-bit truecolor
Character Sets
DEC line drawing character set
DEC Special Graphics
G0/G1 character set switching
UTF-8 mode
Device Status
Mode Report (DECRPM)~~
Request Setting (DECRQSS)~~
Primary device attributes (DA1)~~~~~~
Secondary Device Attributes (DA2)~~
Device status report (DSR 5)~~~~~~
Feature Reporting (TERM_FEATURES)????????
Tertiary Device Attributes (DA3)~~
Query Terminfo (XTGETTCAP)~~
Terminal Version (XTVERSION)~~
Input Protocols
Button-Event Mouse (1002)
CSI u Key Encoding
modifyOtherKeys~~
modifyOtherKeys mode 3????~~
Pixel Mouse Reporting (1016)~~
urxvt Mouse Reporting (1015)
X10 Mouse Tracking (9)
Unicode
East Asian Ambiguous Width
Grapheme Cluster Cursor Movement
Tab Stops (HT)
Wide Char at Line Wrap

Multiplexers

Which features survive tmux and screen? Pass-through testing shows what each multiplexer correctly relays.

tmux3.6a
92%135 / 147
GNU Screen5.0.1
86%126 / 147
tmuxGNU Screen
SGR (Text Styling)
256-color bg (SGR 48;5)
Bright bg colors (SGR 100-107)
Default bg color (SGR 49)
Standard bg colors (SGR 40-47)
24-bit bg (SGR 48;2)
Blink (SGR 5)
Bold (SGR 1)
Faint/dim (SGR 2)
256-color fg (SGR 38;5)
Bright fg colors (SGR 90-97)
Default fg color (SGR 39)
Standard fg colors (SGR 30-37)
24-bit fg (SGR 38;2)
Hidden/invisible (SGR 8)
Inverse video (SGR 7)
Italic (SGR 3)
Overline (SGR 53)
Reset all (SGR 0)
Reset bold/dim (SGR 22)
Reset inverse (SGR 27)
Reset italic (SGR 23)
Reset underline (SGR 24)
Strikethrough (SGR 9)
Underline color (SGR 58)
Curly underline (SGR 4:3)
Dashed underline (SGR 4:5)
Dotted underline (SGR 4:4)
Double underline (SGR 21)
Underline (SGR 4)
Cursor
CUD stops at bottom
CUP at screen boundaries
CUP with DECOM
CUU stops at top
Hide cursor (DECTCEM)
Cursor horizontal absolute (CHA)
Cursor position (CUP)
Cursor back (CUB)
Cursor down (CUD)
Cursor forward (CUF)
Cursor home
Cursor up (CUU)
Cursor next line (CNL)
Cursor position report (DSR 6)
Reverse Wrap (Mode 45)
Save/restore cursor (DECSC)
Cursor shape (DECSCUSR)
Text
Backspace (BS)
Basic text rendering
Combining characters (0 cols)
Carriage return
Index (IND)
Line feed
Next line (NEL)
Overwrite at cursor
Reverse Index at Scroll Top
Tab stops
CJK wide chars (2 cols)
Emoji wide chars (2 cols)
Regional indicator flags (2 cols)
Variation selector 16 (emoji presentation)
Emoji ZWJ sequences (2 cols)
Text wraps at width
Erase
Erase character (ECH)
ED at scroll region boundary
EL erases with bg color
Erase line (EL 2)
Erase to BOL (EL 1)
Erase to EOL (EL 0)
Erase above (ED 1)
Erase screen (ED 2)
Erase below (ED 0)
Erase scrollback (ED 3)
Selective Erase (DECSED)
Editing
Delete characters (DCH)
Delete lines (DL)
Insert characters (ICH)
Insert lines (IL)
Repeat character (REP)
Modes
Enter alt screen (DECSET 1049)
Exit alt screen (DECRST 1049)
App cursor keys (DECCKM)
Application keypad (DECKPAM)
Auto-wrap (DECAWM)
Bracketed paste (DECSET 2004)
Mode 2031 color scheme reporting??
Focus tracking (DECSET 1004)
Insert/replace mode (IRM)
Left/Right Margins (DECLRMM, Mode 69)
All motion mouse (DECSET 1003)
SGR mouse mode (DECSET 1006)
Mouse tracking (DECSET 1000)
Origin mode (DECOM)
Reverse video (DECSCNM)
Synchronized output (DECSET 2026)
Scrollback
Scrollback accumulates
Alt screen separate scrollback
DECSTBM constrains scrolling
DECSTBM reset to full screen
Reverse index (RI)
Scroll down (SD)
Scroll up (SU)
Scroll region (DECSTBM)
Total line count
Reset
Backend reset() method
Full reset (RIS)
SGR reset clears attributes
Soft reset (DECSTR)
Extensions
iTerm2 Inline Images (OSC 1337)
Kitty graphics protocol
Kitty keyboard protocol
Desktop Notifications (OSC 9/777)
VS Code Shell Integration (OSC 633)
Icon and title (OSC 0)
Foreground color query (OSC 10)
Background color query (OSC 11)
iTerm2 Capability Reporting (OSC 1337)
iTerm2 Cell Size Reporting (OSC 1337)
Window title (OSC 2)
Clipboard access (OSC 52)
OSC 5522 advanced clipboard??
OSC 66 text sizing??
Current directory (OSC 7)
Hyperlinks (OSC 8)
OSC 9;4 progress bar??
Text reflow on resize
Semantic prompts (OSC 133)
Sixel graphics
Sixel support in DA1??
24-bit truecolor
Character Sets
DEC line drawing character set
DEC Special Graphics
G0/G1 character set switching
UTF-8 mode
Device Status
Mode Report (DECRPM)
Request Setting (DECRQSS)
Primary device attributes (DA1)
Secondary Device Attributes (DA2)
Device status report (DSR 5)
Feature Reporting (TERM_FEATURES)
Tertiary Device Attributes (DA3)
Query Terminfo (XTGETTCAP)
Terminal Version (XTVERSION)
Input Protocols
Button-Event Mouse (1002)
CSI u Key Encoding
modifyOtherKeys
modifyOtherKeys mode 3??
Pixel Mouse Reporting (1016)
urxvt Mouse Reporting (1015)
X10 Mouse Tracking (9)
Unicode
East Asian Ambiguous Width
Grapheme Cluster Cursor Movement
Tab Stops (HT)
Wide Char at Line Wrap

Explore

How This Works

Data comes from three complementary sources:

Terminal Applications — tested on real terminals via the npx terminfo.dev community CLI. Each test sends escape sequences to the actual terminal and verifies behavior via cursor position reports, device attribute queries, and rendered width measurements. These results reflect what users actually experience.

Headless Backends — tested via Termless against headless terminal emulator libraries. These test parser correctness — whether the library correctly parses and stores the escape sequence. A headless pass means "the parser accepts this," not "this renders correctly." Some features (like blink, cursor shape) may parse correctly but are not exposed through the library's API.

Multiplexers — tested by running probes through terminal multiplexers (tmux, screen) to measure pass-through fidelity. A multiplexer pass means the escape sequence was correctly relayed to the underlying terminal. Failures indicate sequences that the multiplexer intercepts, strips, or mishandles.

Powered by Termless
Playwright for Terminals