Raxol.Terminal.ScreenBuffer.Scroll (Raxol v2.0.1)
View SourceScrolling and scrollback operations for the buffer. Consolidates: Scroll, Scroller, ScrollRegion, Scrollback, and operations/scrolling.
Summary
Functions
Adds a line to the scrollback buffer (alias for save_to_scrollback).
Clears the scroll region (sets it to nil).
Clears the scrollback buffer.
Gets the current scroll position.
Gets the effective scroll region.
Gets scrollback lines.
Gets a specific line from the scrollback buffer.
Gets visible lines including scrollback based on scroll position.
Performs an index (scroll up if at bottom of scroll region).
Performs a reverse index (scroll down if at top of scroll region).
Saves lines to scrollback buffer.
Scrolls the buffer or scroll region down by n lines.
Scrolls the specified region down by n lines.
Scrolls down within a specific region.
Scrolls up within a specific region.
Scrolls to the bottom (most recent content).
Scrolls to the top (oldest scrollback).
Scrolls the buffer or scroll region up by n lines.
Scrolls the specified region up by n lines.
Sets the scroll position for viewing scrollback.
Sets the scroll region.
Functions
@spec add_to_scrollback(Raxol.Terminal.ScreenBuffer.Core.t(), [ Raxol.Terminal.Cell.t() ]) :: Raxol.Terminal.ScreenBuffer.Core.t()
Adds a line to the scrollback buffer (alias for save_to_scrollback).
@spec clear_scroll_region(Raxol.Terminal.ScreenBuffer.Core.t()) :: Raxol.Terminal.ScreenBuffer.Core.t()
Clears the scroll region (sets it to nil).
@spec clear_scrollback(Raxol.Terminal.ScreenBuffer.Core.t()) :: Raxol.Terminal.ScreenBuffer.Core.t()
Clears the scrollback buffer.
@spec get_scroll_position(Raxol.Terminal.ScreenBuffer.Core.t()) :: non_neg_integer()
Gets the current scroll position.
@spec get_scroll_region(Raxol.Terminal.ScreenBuffer.Core.t()) :: {non_neg_integer(), non_neg_integer()}
Gets the effective scroll region.
@spec get_scrollback(Raxol.Terminal.ScreenBuffer.Core.t(), non_neg_integer() | nil) :: [ [Raxol.Terminal.Cell.t()] ]
Gets scrollback lines.
@spec get_scrollback_line(Raxol.Terminal.ScreenBuffer.Core.t(), non_neg_integer()) :: [Raxol.Terminal.Cell.t()] | nil
Gets a specific line from the scrollback buffer.
@spec get_visible_lines(Raxol.Terminal.ScreenBuffer.Core.t()) :: [ [Raxol.Terminal.Cell.t()] ]
Gets visible lines including scrollback based on scroll position.
@spec index(Raxol.Terminal.ScreenBuffer.Core.t()) :: Raxol.Terminal.ScreenBuffer.Core.t()
Performs an index (scroll up if at bottom of scroll region).
@spec reverse_index(Raxol.Terminal.ScreenBuffer.Core.t()) :: Raxol.Terminal.ScreenBuffer.Core.t()
Performs a reverse index (scroll down if at top of scroll region).
@spec save_to_scrollback(Raxol.Terminal.ScreenBuffer.Core.t(), [ [Raxol.Terminal.Cell.t()] ]) :: Raxol.Terminal.ScreenBuffer.Core.t()
Saves lines to scrollback buffer.
@spec scroll_down(Raxol.Terminal.ScreenBuffer.Core.t(), non_neg_integer()) :: Raxol.Terminal.ScreenBuffer.Core.t()
Scrolls the buffer or scroll region down by n lines.
@spec scroll_down( Raxol.Terminal.ScreenBuffer.Core.t(), non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: Raxol.Terminal.ScreenBuffer.Core.t()
Scrolls the specified region down by n lines.
@spec scroll_region_down( Raxol.Terminal.ScreenBuffer.Core.t(), non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: Raxol.Terminal.ScreenBuffer.Core.t()
Scrolls down within a specific region.
@spec scroll_region_up( Raxol.Terminal.ScreenBuffer.Core.t(), non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: Raxol.Terminal.ScreenBuffer.Core.t()
Scrolls up within a specific region.
@spec scroll_to_bottom(Raxol.Terminal.ScreenBuffer.Core.t()) :: Raxol.Terminal.ScreenBuffer.Core.t()
Scrolls to the bottom (most recent content).
@spec scroll_to_top(Raxol.Terminal.ScreenBuffer.Core.t()) :: Raxol.Terminal.ScreenBuffer.Core.t()
Scrolls to the top (oldest scrollback).
@spec scroll_up(Raxol.Terminal.ScreenBuffer.Core.t(), non_neg_integer()) :: Raxol.Terminal.ScreenBuffer.Core.t()
Scrolls the buffer or scroll region up by n lines.
@spec scroll_up( Raxol.Terminal.ScreenBuffer.Core.t(), non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: Raxol.Terminal.ScreenBuffer.Core.t()
Scrolls the specified region up by n lines.
@spec set_scroll_position(Raxol.Terminal.ScreenBuffer.Core.t(), non_neg_integer()) :: Raxol.Terminal.ScreenBuffer.Core.t()
Sets the scroll position for viewing scrollback.
@spec set_scroll_region( Raxol.Terminal.ScreenBuffer.Core.t(), non_neg_integer() | nil, non_neg_integer() | nil ) :: Raxol.Terminal.ScreenBuffer.Core.t()
Sets the scroll region.