Raxol.Terminal.Emulator.Output (Raxol v0.3.0)

View Source

Handles output processing for the terminal emulator. Provides functions for output buffering, processing, and formatting.

Summary

Functions

Clears the output buffer. Returns {:ok, updated_emulator}.

Flushes the output buffer. Returns {:ok, updated_emulator, commands} or {:error, reason}.

Gets the current output buffer. Returns the current output buffer.

Processes output data. Returns {:ok, updated_emulator, commands} or {:error, reason}.

Writes data to the output buffer. Returns {:ok, updated_emulator}.

Writes a control character to the output buffer. Returns {:ok, updated_emulator}.

Writes an escape sequence to the output buffer. Returns {:ok, updated_emulator}.

Writes a line to the output buffer. Returns {:ok, updated_emulator}.

Functions

clear_output_buffer(emulator)

@spec clear_output_buffer(Raxol.Terminal.Core.t()) :: {:ok, Raxol.Terminal.Core.t()}

Clears the output buffer. Returns {:ok, updated_emulator}.

flush_output_buffer(emulator)

@spec flush_output_buffer(Raxol.Terminal.Core.t()) ::
  {:ok, Raxol.Terminal.Core.t(), list()} | {:error, String.t()}

Flushes the output buffer. Returns {:ok, updated_emulator, commands} or {:error, reason}.

get_output_buffer(emulator)

@spec get_output_buffer(Raxol.Terminal.Core.t()) :: String.t()

Gets the current output buffer. Returns the current output buffer.

process_output(emulator, data)

@spec process_output(Raxol.Terminal.Core.t(), String.t()) ::
  {:ok, Raxol.Terminal.Core.t(), list()} | {:error, String.t()}

Processes output data. Returns {:ok, updated_emulator, commands} or {:error, reason}.

write(emulator, data)

@spec write(Raxol.Terminal.Core.t(), String.t()) :: {:ok, Raxol.Terminal.Core.t()}

Writes data to the output buffer. Returns {:ok, updated_emulator}.

write_control(emulator, char)

@spec write_control(Raxol.Terminal.Core.t(), char()) :: {:ok, Raxol.Terminal.Core.t()}

Writes a control character to the output buffer. Returns {:ok, updated_emulator}.

write_escape(emulator, sequence)

@spec write_escape(Raxol.Terminal.Core.t(), String.t()) ::
  {:ok, Raxol.Terminal.Core.t()}

Writes an escape sequence to the output buffer. Returns {:ok, updated_emulator}.

write_line(emulator, data)

@spec write_line(Raxol.Terminal.Core.t(), String.t()) ::
  {:ok, Raxol.Terminal.Core.t()}

Writes a line to the output buffer. Returns {:ok, updated_emulator}.