Skip to content

VS Code

App Terminal

Microsoft's code editor with integrated terminal. Uses xterm.js for terminal emulation.

Visual Studio Code is Microsoft's open-source code editor, the most widely used IDE in the world. Its integrated terminal is powered by xterm.js, the most widely deployed terminal emulator — used not just in VS Code but in countless web-based terminals, cloud IDEs, and development tools.

VS Code pioneered shell integration via the OSC 633 protocol, which enables features like command decoration (success/failure markers), command navigation, and sticky scroll for terminal output. This protocol is now being adopted by other terminals.

The xterm.js terminal provides solid basics — truecolor, Unicode, mouse tracking, bracketed paste, and link detection. It lacks some advanced features like kitty keyboard protocol and graphics protocols, but its ubiquity means it's the baseline that most CLI tools target for compatibility.

Backend: Microsoft's code editor with integrated terminal. Uses xterm.js for terminal emulation. · v1.112.0
93%
137 passed · 11 failed of 148 features
Tested: March 26, 2026
Analysis2026-03-26

VS Code scores 93% (137/148) on the terminfo.dev feature matrix, with gaps in the Rich TUI, Unicode baselines. Ranks #5 of 13 tested terminals. Missing 11 features.

Character Sets

FeatureSupportNotes
DEC line drawing character set✓ yesDEC line drawing chars rendered, cursor advanced
DEC Special Graphics✓ yes
G0/G1 character set switching✓ yesG0/G1 switching works, cursor advanced correctly
UTF-8 mode✓ yes

Erase

FeatureSupportNotes
Erase character (ECH)✓ yes
ED at scroll region boundary✓ yesresponsive after ED inside scroll region
EL erases with bg color✓ yescursor at col 3 after erase + write OK
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

Modes

FeatureSupportNotes
Enter alt screen (DECSET 1049)✓ yesDECRPM: mode reset
Exit alt screen (DECRST 1049)✓ yes
App cursor keys (DECCKM)✓ yesDECRPM: mode reset
Application keypad (DECKPAM)✓ yes
Auto-wrap (DECAWM)✓ yesDECRPM: mode set
Bracketed paste (DECSET 2004)✓ yesDECRPM: mode reset
Mode 2031 color scheme reporting? unknown
Focus tracking (DECSET 1004)✓ yesDECRPM: mode reset
Insert/replace mode (IRM)✓ yes
Left/Right Margins (DECLRMM, Mode 69)✓ yes
All motion mouse (DECSET 1003)✓ yesDECRPM: mode reset
SGR mouse mode (DECSET 1006)✓ yesDECRPM: mode reset
Mouse tracking (DECSET 1000)✓ yesDECRPM: mode reset
Origin mode (DECOM)✓ yesDECRPM: mode reset
Reverse video (DECSCNM)✓ yesBehavioral: responsive after enable
Synchronized output (DECSET 2026)✓ yesDECRPM: mode reset

Reset

FeatureSupportNotes
Backend reset() method✓ yescursor at 5;5 after DECSTR
Full reset (RIS)✓ yes
SGR reset clears attributes✓ yes
Soft reset (DECSTR)✓ yes

Scrollback

FeatureSupportNotes
Scrollback accumulates✓ yes
Alt screen separate scrollback✓ yes
DECSTBM constrains scrolling✓ yesresponsive after DECSTBM set
DECSTBM reset to full screen✓ yesresponsive after DECSTBM reset
Reverse index (RI)✓ yes
Scroll down (SD)✓ yes
Scroll up (SU)✓ yes
Scroll region (DECSTBM)✓ yes
Total line count✓ yesContent written to scrollback

Unicode

FeatureSupportNotes
East Asian Ambiguous Width✓ yeswidth=1 (ambiguous chars vary by terminal/locale)
Grapheme Cluster Cursor Movement✗ nowidth=6, expected 2
Tab Stops (HT)✓ yes
Wide Char at Line Wrap✓ yes

Powered by Termless
Playwright for Terminals