Primitives
the ten widget kinds. The ui-gallery page Primitives, painted with no terminal and no window at each of the documented profiles:
bash
ui-gallery --render --page primitives --profile full|enhanced|baseline sparkles:ui the twelve widget kinds tokyo-night
Welcome ▕ Primitives · the twelve widget kinds █
▸ Primitives ▕ █
Layout ▕ █
Tracks ▕ Every tree in this catalog is built from these and nothing else. A █
Text ▕ widget names a semantic slot, never a colour — the palette resolves it █
Themes ▕ while the display list is built, which is why every specimen below █
Slots ▕ repaints when you press ] . █
Decoration ▕ █
Effects ▕ ┌─────────────────────────────────────────────────────────────────────┐ █
Grid ▕ │ leaves │ █
Components ▕ │ box │ █
Tree ▕ │ text a run of text │ █
Property tree ▕ │ rich auto n = 42; │ █
Table ▕ │ glyph ◆ │ █
Scrolling ▕ │ line · solid an underlined run │ █
State ▕ │ line · wavy a squiggled run │ █
Split ▕ │ scrollbar ░░ │ ░
Dock ▕ │ ░░ │ ░
Terminal ▕ │ ██ │ ░
▕ │ ██ │ ░
▕ │ ░░ │ ░
▕ │ ░░ │ ░
▕ │ image ▄▀▄▀▄▀▄▀ │ ░
▕ │ ▄▀▄▀▄▀▄▀ │ ░
▕ └─────────────────────────────────────────────────────────────────────┘ ░
▕ ░
▕ ┌─────────────────────────────────────────────────────────────────────┐ ░
▕ │ flow containers │ ░
▕ │ row one two three │ ░
▕
pages ? keys q quit sparkles:ui the twelve widget kinds tokyo-night
Welcome ▕ Primitives · the twelve widget kinds █
▸ Primitives ▕ █
Layout ▕ █
Tracks ▕ Every tree in this catalog is built from these and nothing else. A █
Text ▕ widget names a semantic slot, never a colour — the palette resolves it █
Themes ▕ while the display list is built, which is why every specimen below █
Slots ▕ repaints when you press ] . █
Decoration ▕ █
Effects ▕ ┌─────────────────────────────────────────────────────────────────────┐ █
Grid ▕ │ leaves │ █
Components ▕ │ box │ █
Tree ▕ │ text a run of text │ █
Property tree ▕ │ rich auto n = 42; │ █
Table ▕ │ glyph ◆ │ █
Scrolling ▕ │ line · solid an underlined run │ █
State ▕ │ line · wavy a squiggled run │ █
Split ▕ │ scrollbar ░░ │ ░
Dock ▕ │ ░░ │ ░
Terminal ▕ │ ██ │ ░
▕ │ ██ │ ░
▕ │ ░░ │ ░
▕ │ ░░ │ ░
▕ │ image ▄▀▄▀▄▀▄▀ │ ░
▕ │ ▄▀▄▀▄▀▄▀ │ ░
▕ └─────────────────────────────────────────────────────────────────────┘ ░
▕ ░
▕ ┌─────────────────────────────────────────────────────────────────────┐ ░
▕ │ flow containers │ ░
▕ │ row one two three │ ░
▕
pages ? keys q quit sparkles:ui the twelve widget kinds tokyo-night
Welcome | Primitives * the twelve widget kinds #
> Primitives | #
Layout | #
Tracks | Every tree in this catalog is built from these and nothing else. A #
Text | widget names a semantic slot, never a colour - the palette resolves it #
Themes | while the display list is built, which is why every specimen below #
Slots | repaints when you press ] . #
Decoration | #
Effects | +---------------------------------------------------------------------+ #
Grid | | leaves | #
Components | | box | #
Tree | | text a run of text | #
Property tree | | rich auto n = 42; | #
Table | | glyph * | #
Scrolling | | line * solid an underlined run | #
State | | line * wavy a squiggled run | #
Split | | scrollbar || | |
Dock | | || | |
Terminal | | ## | |
| | ## | |
| | || | |
| | || | |
| | image [a colo] | |
| | | |
| +---------------------------------------------------------------------+ |
| |
| +---------------------------------------------------------------------+ |
| | flow containers | |
| | row one two three | |
|
pages ? keys q quit What each profile gives up
The frame's degradation report: one line per substitution, and the capability the target lacked. full is empty when the page asks for nothing a terminal cannot do.
text
alpha-flattened ×8 (alpha)
image-rastered ×1 (images)text
color-folded ×90 (colorDepth)
alpha-flattened ×8 (alpha)
plain-underline ×2 (extendedUnderline)
image-rastered ×1 (images)text
color-dropped ×90 (colorDepth)
ascii-border ×3 (unicode)
ascii-scrollbar ×2 (unicode)
ascii-glyph ×6 (unicode)
alpha-flattened ×8 (alpha)
plain-underline ×2 (extendedUnderline)
image-as-alt ×1 (images)These are the files dub test :ui-gallery compares every render against, so a change to this page that is not re-blessed fails CI.