Skip to content

Sequence Reference ​

A searchable index of every VT sequence Otty interprets, sorted by category and final byte / mnemonic. Cells in the Otty column: ✓ implemented, ◐ partial, ☐ not yet.

ESC ​

SequenceMnemonicDescriptionOtty
ESC # 8DECALNScreen Alignment Display✓
ESC 7DECSCSave Cursor✓
ESC 8DECRCRestore Cursor✓
ESC =DECKPAMKeypad Application Mode✓
ESC >DECKPNMKeypad Numeric Mode✓
ESC DINDIndex (down one line)✓
ESC ENELNext Line✓
ESC MRIReverse Index✓
ESC HHTSSet Tab Stop✓
ESC cRISFull Reset✓

CSI ​

SequenceMnemonicDescriptionOtty
CSI <n> ACUUCursor Up✓
CSI <n> BCUDCursor Down✓
CSI <n> CCUFCursor Forward✓
CSI <n> DCUBCursor Back✓
CSI <r>;<c> HCUPCursor Position✓
CSI 5 nDSRDevice Status Report → CSI 0 n✓
CSI 6 nDSRCursor Position Report → CSI <row>;<col> R (DECXCPR CSI ? 6 n not implemented)◐
CSI <n> JEDErase in Display (n=0/1/2/3 standard, n=22 kitty scroll-then-erase)✓
CSI ? <n> JDECSEDSelective Erase in Display (skips DECSCA-protected cells)✓
CSI <n> KELErase in Line✓
CSI ? <n> KDECSELSelective Erase in Line (skips protected cells)✓
CSI <p>;… mSGRSelect Graphic Rendition✓
CSI <n> @ICHInsert Characters✓
CSI <n> LILInsert Lines✓
CSI <n> MDLDelete Lines✓
CSI <n> PDCHDelete Characters✓
CSI ? <n> hDECSETSet DEC Private Mode✓
CSI ? <n> lDECRSTReset DEC Private Mode✓
CSI ! pDECSTRSoft Terminal Reset✓
CSI <n> " qDECSCASelect Character Protection Attribute✓
CSI <n> SP qDECSCUSRSet Cursor Style✓
CSI > 1 u—Push Kitty keyboard flags✓
CSI < u—Pop Kitty keyboard flags✓
CSI [Pm] # PXTPUSHCOLORSPush palette snapshot✓
CSI [Pm] # QXTPOPCOLORSRestore palette snapshot✓
CSI # RXTREPORTCOLORSReport color stack depth✓
CSI <n> SSUScroll Up✓
CSI <n> TSDScroll Down✓
CSI <Ps> tXTWINOPSWindow manip / size reports — 14/16 t pixel sizes answered, 18 t (chars) intentionally not, window-acting ops ignored◐

OSC ​

SequenceDescriptionOtty
OSC 0 / 2Set window + icon title✓
OSC 7Report current working directory✓
OSC 8Hyperlink✓
OSC 4Palette set / query (256-color)✓
OSC 5Special-color set (bold / underline / blink / reverse / italic)✓ parsed (underline applied)
OSC 9Notification (iTerm-style)✓
OSC 10 / 11 / 12Foreground / background / cursor color✓
OSC 13 / 14Mouse pointer fg / bg✓ parsed (no macOS effect)
OSC 17 / 19Selection background / foreground✓
OSC 22Mouse cursor shape (kitty / xterm)✓
OSC 52Set / read clipboard (opt-in)✓
OSC 99Kitty desktop-notification protocol (id, urgency, base64, chunked)✓
OSC 104Palette reset (256-color)✓
OSC 105Reset special colors✓
OSC 110 / 111 / 112Reset fg / bg / cursor✓
OSC 117 / 119Reset selection bg / fg✓
OSC 133Prompt mark (FTCS / shell integration)✓
OSC 777Notification (urxvt-style, with title)✓
OSC 1337Inline image (iTerm2)✓
OSC 7501Program status (state, progress, message)✓

Control (C0) ​

ByteMnemonicName
0x07BELBell
0x08BSBackspace
0x09HTHorizontal Tab
0x0ALFLine Feed
0x0BVTVertical Tab
0x0CFFForm Feed
0x0DCRCarriage Return
0x0ESOShift Out
0x0FSIShift In
0x18CANCancel
0x1ASUBSubstitute
0x1BESCEscape
0x7FDELDelete

Modes (DEC private) ​

A selected subset:

ModeDescription
?1Application cursor keys
?5Reverse video
?6Origin mode (DECOM)
?7Auto-wrap (DECAWM)
?12Blinking cursor
?25Cursor visible (DECTCEM)
?47Switch to alternate screen (legacy)
?1000Mouse: send X/Y on button event
?1002Mouse: cell motion tracking
?1003Mouse: all motion tracking
?1004Focus reporting (CSI I / CSI O)
?1006Mouse: SGR-style reporting
?1047Switch to alternate screen (clears it on exit)
?1049Switch to alternate screen + save cursor
?2004Bracketed paste
?2026Synchronized output
?2031Color-scheme update notifications

Set / unset with DECSET / DECRST. For a cross-terminal support matrix see Terminal Comparison.

DCS ​

SequenceNamePurposeSupport
DCS $ q SP q STDECRQSSQuery current cursor style → DCS 1 $ r Ps SP q ST✓
DCS $ q … STDECRQSS (other targets)Query SGR / scrolling region / …❌
DCS + q … STXTGETTCAPTerminfo capability query❌

Kitty graphics (DCS-class) ​

Implemented via the Kitty graphics protocol. The full action / parameter table lives in that page.

See also ​

Otty