Raxol.Terminal.Commands.CSIHandlers (Raxol v0.4.0)

View Source

Handles the execution logic for specific CSI commands.

This module serves as the main entry point for CSI command handling, delegating to specialized handler modules for different types of commands.

Summary

Functions

handle_A(emulator, params)

@spec handle_A(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_at(emulator, params)

@spec handle_at(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_B(emulator, params)

@spec handle_B(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_C(emulator, params)

@spec handle_C(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_c(emulator, params, intermediates_buffer)

See Raxol.Terminal.Commands.DeviceHandlers.handle_c/3.

handle_D(emulator, params)

@spec handle_D(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_d(emulator, params)

@spec handle_d(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_E(emulator, params)

@spec handle_E(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_F(emulator, params)

@spec handle_F(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_G(emulator, params)

@spec handle_G(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_H(emulator, params)

@spec handle_H(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_h_or_l(emulator, params, intermediates_buffer, final_byte)

See Raxol.Terminal.Commands.ModeHandlers.handle_h_or_l/4.

handle_J(emulator, params)

@spec handle_J(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_K(emulator, params)

@spec handle_K(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_L(emulator, params)

@spec handle_L(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_M(emulator, params)

@spec handle_M(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_m(emulator, params)

@spec handle_m(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

Handles Select Graphic Rendition (SGR - 'm')

handle_n(emulator, params)

See Raxol.Terminal.Commands.DeviceHandlers.handle_n/2.

handle_P(emulator, params)

@spec handle_P(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_q_deccusr(emulator, params)

@spec handle_q_deccusr(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

Handles Set Cursor Style (DECSCUSR - 'q')

handle_r(emulator, params)

@spec handle_r(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

Handles DECSTBM (Set Scrolling Region - 'r')

handle_S(emulator, params)

@spec handle_S(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_s(emulator, params)

@spec handle_s(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

Handles Save Cursor (SCP - 's')

handle_scs(emulator, charset_param_str, final_byte)

@spec handle_scs(Raxol.Terminal.Emulator.t(), String.t(), char()) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

Handles Designate Character Set (SCS - via non-standard CSI sequences)

handle_T(emulator, params)

@spec handle_T(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

handle_t(emulator, params)

See Raxol.Terminal.Commands.WindowHandlers.handle_t/2.

handle_u(emulator, params)

@spec handle_u(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}

Handles Restore Cursor (RCP - 'u')

handle_X(emulator, params)

@spec handle_X(Raxol.Terminal.Emulator.t(), [integer()]) ::
  {:ok, Raxol.Terminal.Emulator.t()}
  | {:error, atom(), Raxol.Terminal.Emulator.t()}