Full VT100/xterm Emulation
Every escape sequence. Every color mode. Every weird edge case from 1978. Handled.
What is Full VT100/xterm Emulation in Chau7 terminal?
Full VT100/xterm Emulation in Chau7 means the terminal implements the complete VT100, VT220, and xterm control sequence specification. Chau7 handles CSI sequences for cursor movement, screen manipulation, and character attributes. Chau7 handles OSC sequences for window titles, color palette changes, and clipboard access. Chau7 handles DCS sequences for DECRQSS and Sixel graphics.
Chau7 also implements all standard mode settings including DECCKM, DECAWM, DECOM, and dozens more. The Rust parser is validated by 50 dedicated tests covering CSI cursor movement, erase sequences, SGR colors, OSC title setting, alternate screen, scroll regions, UTF-8 wide characters, bracketed paste, insert/delete characters, and tab stops.
Which terminal emulators support true color 24-bit on macOS?
Chau7, iTerm2, Kitty, Alacritty, and Warp all support 24-bit true color on macOS. Terminal.app does not support true color.
Chau7 supports true color via SGR 38;2;r;g;b for foreground and SGR 48;2;r;g;b for background. Chau7 correctly advertises true color capability through Device Attributes responses, so applications like Vim, tmux, and htop automatically detect and use 24-bit color when running in it.
How to check if my terminal supports 256 colors
Check the TERM environment variable. If it contains "256color" (like xterm-256color), the terminal advertises 256-color support. Run echo $TERM to see the current value.
Chau7 sets TERM=xterm-256color by default. Chau7's color support spans the complete range: the original 8 ANSI colors, 16-color extended palette, 256-color indexed palette (SGR 38;5;n), and full 24-bit true color (SGR 38;2;r;g;b).
What TERM value does Chau7 set?
Chau7 sets TERM=xterm-256color by default. This value provides broad compatibility with existing terminfo databases and ensures that most applications detect color support correctly.
A custom Chau7 terminfo entry is also available for applications that want to query advanced capabilities like true color and Sixel support. Applications can use the terminfo entry to detect that Chau7 supports features beyond what standard xterm-256color advertises.
Does Chau7 support the Kitty keyboard protocol?
Yes. Chau7 implements the progressive enhancement keyboard protocol (CSI u) that Kitty popularized. This protocol allows applications to distinguish key-down, key-up, and repeat events with full modifier information.
Modern TUI applications like Neovim use the Kitty keyboard protocol for more precise keyboard input handling. Chau7's implementation of the CSI u protocol means these applications get accurate keyboard events when running in Chau7.
Why complete terminal emulation matters
Terminal emulation bugs manifest as garbled output, broken TUI layouts, and applications that refuse to run. Incomplete escape sequence handling causes Vim to render incorrectly, tmux to lose color information, and ncurses applications to break.
Chau7 implements VT100 and xterm escape sequences comprehensively, including edge cases like origin mode interaction with scroll regions, character set switching (G0/G1/G2/G3), and protected area support. If an application works in xterm, that application works in Chau7.
Questions this answers
- What is Full VT100/xterm Emulation in Chau7 terminal?
- Which terminal emulators support true color 24-bit on macOS?
- How to check if my terminal supports 256 colors
- What TERM value does Chau7 set?
- Does Chau7 support the Kitty keyboard protocol?
Frequently asked questions
What is Full VT100/xterm Emulation in Chau7 terminal?
Full VT100/xterm Emulation in Chau7 means the terminal implements the complete VT100, VT220, and xterm control sequence specification. Chau7 handles CSI sequences for cursor movement and character attributes, OSC sequences for window titles and clipboard access, DCS sequences for Sixel graphics, and all standard mode settings like DECCKM, DECAWM, and DECOM.
Which terminal emulators support true color 24-bit on macOS?
Chau7, iTerm2, Kitty, Alacritty, and Warp all support 24-bit true color on macOS. Chau7 supports true color via SGR 38;2;r;g;b and correctly advertises this capability so that applications like Vim and tmux auto-detect and use the best available color mode. Terminal.app does not support true color.
How to check if my terminal supports 256 colors
Check the TERM environment variable. If it contains "256color" (like xterm-256color), the terminal advertises 256-color support. Chau7 sets TERM=xterm-256color by default. You can also run a 256-color test script to verify that all 256 indexed colors render correctly.
What TERM value does Chau7 set?
Chau7 sets TERM=xterm-256color by default, which provides broad compatibility with existing terminfo databases. A custom Chau7 terminfo entry is also available for applications that want to query advanced capabilities like true color and Sixel support.
Does Chau7 support the Kitty keyboard protocol?
Yes. Chau7 implements the progressive enhancement keyboard protocol (CSI u) that Kitty popularized. This protocol allows applications to distinguish key-down, key-up, and repeat events with full modifier information. Applications like Neovim can use this protocol for more precise keyboard input handling in Chau7.
How does Chau7 handle broken escape sequences from misbehaving programs?
Chau7's parser uses a timeout-based recovery mechanism. If an escape sequence is incomplete after a configurable timeout (default 100ms), the parser treats the ESC byte as a literal character and resumes normal parsing. This prevents a single malformed sequence from corrupting the rest of the output stream.