Handles all erase operations for the terminal screen buffer.
This module provides focused functionality for erasing content from the buffer, including line erasing, display erasing, and region clearing operations.
Summary
Functions
Clears the entire buffer, creating a fresh empty grid.
Clears a specific region of the buffer.
Deletes characters at a specific row/col position.
Deletes characters at cursor position, shifting remaining cells left.
Erases the entire buffer.
Erases display content based on mode (0=cursor-to-end, 1=start-to-cursor, 2=all).
Erases from the cursor to the end of the screen using the current cursor position.
Erases from cursor to end of display.
Erases from start to cursor position.
Erases part or all of the display based on the cursor position and type. Type can be :to_end, :to_beginning, or :all.
Erases part or all of the current line based on the cursor position and type. Type can be :to_end, :to_beginning, or :all.
Erases line content based on mode (0=cursor-to-end, 1=start-to-cursor, 2=all).
Erases the entire screen (alias for erase_all).
Inserts blank characters at cursor position (no-op placeholder).
Functions
Clears the entire buffer, creating a fresh empty grid.
@spec clear_region( Raxol.Terminal.ScreenBuffer.t(), non_neg_integer(), non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: Raxol.Terminal.ScreenBuffer.t()
Clears a specific region of the buffer.
Deletes characters at a specific row/col position.
Deletes characters at cursor position, shifting remaining cells left.
@spec erase_all(Raxol.Terminal.ScreenBuffer.t()) :: Raxol.Terminal.ScreenBuffer.t()
Erases the entire buffer.
Erases display content based on mode (0=cursor-to-end, 1=start-to-cursor, 2=all).
@spec erase_from_cursor_to_end(Raxol.Terminal.ScreenBuffer.t()) :: Raxol.Terminal.ScreenBuffer.t()
Erases from the cursor to the end of the screen using the current cursor position.
@spec erase_from_cursor_to_end( map(), non_neg_integer(), non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: map()
Erases from cursor to end of display.
@spec erase_from_start_to_cursor( map(), non_neg_integer(), non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: map()
Erases from start to cursor position.
@spec erase_in_display( Raxol.Terminal.ScreenBuffer.t(), {non_neg_integer(), non_neg_integer()}, atom() ) :: Raxol.Terminal.ScreenBuffer.t()
Erases part or all of the display based on the cursor position and type. Type can be :to_end, :to_beginning, or :all.
@spec erase_in_line( Raxol.Terminal.ScreenBuffer.t(), {non_neg_integer(), non_neg_integer()}, atom() ) :: Raxol.Terminal.ScreenBuffer.t()
Erases part or all of the current line based on the cursor position and type. Type can be :to_end, :to_beginning, or :all.
Erases line content based on mode (0=cursor-to-end, 1=start-to-cursor, 2=all).
Erases the entire screen (alias for erase_all).
Inserts blank characters at cursor position (no-op placeholder).