A single line of text composed of one or more ExRatatui.Text.Spans.
A line may carry its own style (merged over any parent Text/widget style)
and its own alignment, which overrides the widget's default alignment for
that line when set.
Fields
:spans- list of%ExRatatui.Text.Span{}:style-%ExRatatui.Style{}applied to the line (layered with Span styles):alignment-:left,:center,:right, ornil(inherit)
Examples
iex> alias ExRatatui.Text.{Line, Span}
iex> alias ExRatatui.Style
iex> Line.new([Span.new("Hello "), Span.new("world", style: %Style{fg: :green})])
%ExRatatui.Text.Line{
spans: [
%ExRatatui.Text.Span{content: "Hello ", style: %ExRatatui.Style{}},
%ExRatatui.Text.Span{
content: "world",
style: %ExRatatui.Style{fg: :green, bg: nil, modifiers: []}
}
],
style: %ExRatatui.Style{},
alignment: nil
}
iex> alias ExRatatui.Text.{Line, Span}
iex> alias ExRatatui.Style
iex> Line.new([Span.new("centered")], style: %Style{modifiers: [:bold]}, alignment: :center)
%ExRatatui.Text.Line{
spans: [%ExRatatui.Text.Span{content: "centered", style: %ExRatatui.Style{}}],
style: %ExRatatui.Style{fg: nil, bg: nil, modifiers: [:bold]},
alignment: :center
}
Summary
Functions
Builds a %Line{} from a list of spans and options.
Types
@type alignment() :: :left | :center | :right | nil
@type t() :: %ExRatatui.Text.Line{ alignment: alignment(), spans: [ExRatatui.Text.Span.t()], style: ExRatatui.Style.t() }
Functions
@spec new( [ExRatatui.Text.Span.t()], keyword() ) :: t()
Builds a %Line{} from a list of spans and options.
Options:
:style- a%ExRatatui.Style{}(default:%Style{}):alignment-:left,:center,:right, ornil(default:nil)
Raises ArgumentError for an invalid :alignment value.