Raxol.Terminal.Driver (Raxol v0.5.0)

View Source

Handles raw terminal input/output and event generation.

Responsibilities:

  • Setting terminal mode (raw, echo)
  • Reading input events via rrex_termbox NIF v2.0.1
  • Parsing input events into Raxol.Core.Events.Event structs
  • Detecting terminal resize events
  • Sending parsed events to the Dispatcher
  • Restoring terminal state on exit

Summary

Functions

Returns a specification to start this module under a supervisor.

Processes a terminal position change event.

Processes a terminal title change event.

Starts the GenServer.

Types

dispatcher_pid()

@type dispatcher_pid() :: pid() | nil

original_stty()

@type original_stty() :: String.t()

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

process_position_change(x, y, state)

Processes a terminal position change event.

process_title_change(title, state)

Processes a terminal title change event.

start_link(dispatcher_pid)

Starts the GenServer.