Raxol.Terminal.ANSI.ExtendedSequences (Raxol v0.5.0)

View Source

Handles extended ANSI sequences and provides improved integration with the screen buffer. This module adds support for:

  • Extended SGR attributes (90-97, 100-107)
  • True color support (24-bit RGB)
  • Unicode handling
  • Terminal state management
  • Improved cursor control

Summary

Functions

Processes extended SGR (Select Graphic Rendition) parameters. Supports

Processes terminal state changes.

Processes true color sequences (24-bit RGB).

Handles Unicode character sequences.

Types

attribute()

@type attribute() ::
  :bold
  | :faint
  | :italic
  | :underline
  | :blink
  | :rapid_blink
  | :inverse
  | :conceal
  | :strikethrough
  | :normal_intensity
  | :no_italic
  | :no_underline
  | :no_blink
  | :no_inverse
  | :no_conceal
  | :no_strikethrough
  | :foreground
  | :background
  | :foreground_basic
  | :background_basic

color()

@type color() :: {0..255, 0..255, 0..255} | 0..255

Functions

process_extended_sgr(params, buffer)

@spec process_extended_sgr([String.t()], Raxol.Terminal.ScreenBuffer.t()) ::
  Raxol.Terminal.ScreenBuffer.t()

Processes extended SGR (Select Graphic Rendition) parameters. Supports:

  • Extended colors (90-97, 100-107)
  • True color (24-bit RGB)
  • Additional attributes

process_terminal_state(state, buffer)

@spec process_terminal_state(String.t(), Raxol.Terminal.ScreenBuffer.t()) ::
  Raxol.Terminal.ScreenBuffer.t()

Processes terminal state changes.

process_true_color(type, color_str, buffer)

Processes true color sequences (24-bit RGB).

process_unicode(char, buffer)

Handles Unicode character sequences.