Skip to content

@jsvision/core / parseCursorPosition

Function: parseCursorPosition()

parseCursorPosition(buf): CursorPosition | null

Defined in: host/width-probe.ts:166

Parse the first Cursor-Position-Report (ESC [ <row> ; <col> R) out of a byte buffer, ignoring any surrounding bytes. Rows and columns are 1-based, as the terminal reports them.

Parameters

buf

Uint8Array

Raw bytes received from the terminal.

Returns

CursorPosition | null

The parsed 1-based CursorPosition, or null if none is present.

Example

ts
import { parseCursorPosition } from '@jsvision/core';

const reply = new TextEncoder().encode('\x1b[12;40R');
parseCursorPosition(reply); // => { row: 12, col: 40 }
parseCursorPosition(new TextEncoder().encode('no report here')); // => null