Skip to content

DECFRA — fill rectangular area

Category: editing · Baseline: legacy · Tags: VT510 · Specification ↗

CSI Pc ; Pt ; Pl ; Pb ; Pr $ x
DECFRA (CSI Pc ; Pt ; Pl ; Pb ; Pr $ x) fills a rectangular area with character Pc from rows Pt through Pb and columns Pl through Pr. Introduced on the DEC VT420 in 1990 for form-fill applications and spreadsheets that needed to paint rectangular regions of the screen — drawing dividers, padding fields, or clearing a region with a fill character — without touching cells outside the rectangle. xterm and mintty implement DECFRA; nearly every other modern terminal skips it. The character must be in the printable ASCII range or DEC supplemental graphic range.
How this is testedpartial
Send \x1b[88;1;1;3;5$x (fill rows 1-3, cols 1-5 with 'X'), verify cells in the rectangle contain 'X'.

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 all 9 tested terminals — universal adoption. Part of the Unicode baseline.

Supported by 11 of 14 backends (79%)

Terminal Applications

TerminalVersionSupportNotes
iTerm23.6.9✓ yessequence consumed
Ghostty1.3.1✓ yessequence consumed
Terminal.app2.15✓ yessequence consumed
Kitty0.46.2✓ yessequence consumed
VS Code1.113.0? unknown
Warp0.2026.03.18.08.24.03? unknown
Cursor2.6.21? unknown

Headless Backends

Parser correctness only — a means the parser accepts the sequence.

BackendVersionSupportNotes
Alacritty0.26.0✓ yes
vt100.js0.2.1✓ yes
vterm0.2.0✓ yes
WezTerm0.1.0-fork.5✓ yes
xterm.js5.5.0✓ yes