Appearance
Kitty
Backend: Kitty's VT parser via Python subprocess bridge (kitty +runpy). (native) · v0.40.0
79%
49 passed · 13 failed of 62 features
Tested: March 24, 2026
Cursor
| Feature | Support | Notes |
|---|---|---|
| Hide cursor (DECTCEM) | ✓ yes | |
| Cursor position (CUP) | ✗ no | Kitty subprocess bridge timed out — Python startup latency |
| Cursor back (CUB) | ✓ yes | |
| Cursor down (CUD) | ✓ yes | |
| Cursor forward (CUF) | ✓ yes | |
| Cursor home | ✓ yes | |
| Cursor up (CUU) | ✓ yes | |
| Save/restore cursor (DECSC) | ✓ yes |
Erase
| Feature | Support | Notes |
|---|---|---|
| Erase line (EL 2) | ✓ yes | |
| Erase to BOL (EL 1) | ✓ yes | |
| Erase to EOL (EL 0) | ✗ no | Kitty subprocess bridge timed out |
| Erase screen (ED 2) | ✓ yes | |
| Erase below (ED 0) | ✓ yes |
Extensions
| Feature | Support | Notes |
|---|---|---|
| Kitty graphics protocol | ✓ yes | |
| Kitty keyboard protocol | ✓ yes | |
| Window title (OSC 2) | ✗ no | Kitty subprocess bridge timed out |
| Hyperlinks (OSC 8) | ✓ yes | |
| Text reflow on resize | ✓ yes | |
| Semantic prompts (OSC 133) | ✗ no | Not implemented in kitty |
| Sixel graphics | ✗ no | Not implemented in kitty |
| 24-bit truecolor | ✓ yes |
Modes
| Feature | Support | Notes |
|---|---|---|
| Enter alt screen (DECSET 1049) | ✗ no | Kitty subprocess bridge timed out |
| Exit alt screen (DECRST 1049) | ✓ yes | |
| App cursor keys (DECCKM) | ✓ yes | |
| Auto-wrap (DECAWM) | ✓ yes | |
| Bracketed paste (DECSET 2004) | ✓ yes | |
| Focus tracking (DECSET 1004) | ✓ yes | |
| Mouse tracking (DECSET 1000) | ✗ no | Not exposed via Python API |
| Reverse video (DECSCNM) | ✗ no | Not exposed via Python API |
Reset
| Feature | Support | Notes |
|---|---|---|
| Backend reset() method | ✓ yes | |
| Full reset (RIS) | ✓ yes | |
| SGR reset clears attributes | ✗ no | Kitty subprocess bridge timed out |
Scrollback
| Feature | Support | Notes |
|---|---|---|
| Scrollback accumulates | ✗ no | Kitty subprocess bridge timed out |
| Alt screen separate scrollback | ✓ yes | |
| Reverse index (RI) | ✓ yes | |
| Scroll up (SU) | ✓ yes | |
| Total line count | ✓ yes |
SGR (Text Styling)
| Feature | Support | Notes |
|---|---|---|
| 256-color bg (SGR 48;5) | ✓ yes | |
| 24-bit bg (SGR 48;2) | ✓ yes | |
| Blink (SGR 5) | ✓ yes | |
| Bold (SGR 1) | ✗ no | Kitty subprocess bridge timed out |
| Faint/dim (SGR 2) | ✓ yes | |
| 256-color fg (SGR 38;5) | ✓ yes | |
| 24-bit fg (SGR 38;2) | ✓ yes | |
| Hidden/invisible (SGR 8) | ✗ no | Not exposed via Python API |
| Inverse video (SGR 7) | ✓ yes | |
| Italic (SGR 3) | ✓ yes | |
| Reset all (SGR 0) | ✓ yes | |
| Strikethrough (SGR 9) | ✓ 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 |
|---|---|---|
| Basic text rendering | ✗ no | Kitty subprocess bridge timed out |
| Carriage return | ✓ yes | |
| Line feed | ✓ yes | |
| Overwrite at cursor | ✓ yes | |
| Tab stops | ✓ yes | |
| CJK wide chars (2 cols) | ✓ yes | |
| Emoji wide chars (2 cols) | ✓ yes | |
| Text wraps at width | ✓ yes |