Appearance
CUP at screen boundaries
CUP (Cursor Position, CSI row ; col H) with out-of-bounds parameters should clamp the cursor to the screen edges rather than wrapping or producing undefined behavior. Sending
CSI 999 ; 999 H should place the cursor at the last row and last column of the visible screen. This is important for applications that use CUP with large values as a shorthand for "move to bottom-right corner" without querying screen dimensions first.How this is testedautomated
Send
Send
\x1b[999;999H, verify cursor is at (rows-1, cols-1) — not beyond the screen boundaries.The same probe runs against headless backends (via Termless) and real terminal apps (via a daemon launched in each terminal). This lets us distinguish parser correctness from rendering correctness.
Analysis2026-04-06
Supported by 7 of 14 backends (50%)
Terminal Applications
| Terminal | Version | Support | Notes |
|---|---|---|---|
| Terminal.app | ✓ yes | ||
| iTerm2 | 3.6.9 | ✗ no | got 25;80, expected within screen bounds |
| Ghostty | 1.3.1 | ✗ no | got 119;270, expected within screen bounds |
| VS Code | ✗ no | ||
| Warp | ✗ no | ||
| Cursor | ✗ no |