Unified command handler that consolidates all terminal command processing.
Routes commands to specialized handler modules:
CommandServer.CursorOps-- cursor movement and positioningCommandServer.EraseOps-- screen/line/character eraseCommandServer.DeviceOps-- DA/DSR device responsesCommandServer.ModeOps-- ANSI/DEC mode set/resetCommandServer.SGROps-- SGR text formattingCommandServer.BufferLineOps-- insert/delete lines with scroll regions
Summary
Functions
Processes any terminal command with unified handling.
Handles CSI (Control Sequence Introducer) commands.
Handles OSC (Operating System Command) sequences.
Types
@type command_params() :: %{ type: command_type(), command: String.t(), params: [integer()], intermediates: String.t(), private_markers: String.t() }
@type command_result() :: {:ok, Raxol.Terminal.Emulator.t()} | {:error, atom(), Raxol.Terminal.Emulator.t()}
@type command_type() :: :csi | :osc | :dcs | :escape | :control
Functions
@spec handle_command(Raxol.Terminal.Emulator.t(), command_params()) :: command_result()
Processes any terminal command with unified handling.
@spec handle_csi(Raxol.Terminal.Emulator.t(), String.t(), [integer()], String.t()) :: command_result()
Handles CSI (Control Sequence Introducer) commands.
@spec handle_osc(Raxol.Terminal.Emulator.t(), String.t() | integer(), String.t()) :: command_result()
Handles OSC (Operating System Command) sequences.