package mosaic
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=9e4e90d17f9b2af1b07071fe425bc2c519c849c4f1d1ab73cde512be2d874849
sha512=06e9c4a741590942e81a27738d0b5c0413fafec8cf3b7dae047ad69f155e7b718aa4223818dc161b7d028efffcfd3365905e264d6fd31d453910ddfa91dcf9b9
doc/mosaic.ui/Mosaic_ui/index.html
Module Mosaic_uiSource
Terminal UI toolkit: widgets, rendering, and event dispatch.
Mosaic_ui re-exports the modules that make up the Mosaic UI layer. It provides:
- Core infrastructure.
Eventfor input events,Selectionfor text selections,Renderablefor the mutable node tree,Rendererfor the layout-render-diff pipeline, andVnodefor declarative virtual-node descriptions. - Text primitives.
Text_bufferfor styled text storage,Text_surfacefor viewport-aware text rendering with wrapping, andEdit_bufferfor grapheme-aware editing with undo. - Widget catalogue.
Box,Text,Slider,Text_input,Canvas,Select,Tab_select,Markdown,Spinner,Progress_bar,Textarea,Scroll_bar,Scroll_box,Table,Tree,Code, andLine_number. - Theming.
Syntax_themefor tree-sitter/TextMate-style syntax colouring.
Events and input
Core infrastructure
Mutable UI tree nodes with layout integration.
Text primitives
Styled text storage with per-character styles and highlight overlays.
Text rendering surface with wrapping, viewport, and selection.
Grapheme-aware text editing buffer with cursor, selection, and undo.
Widget catalogue
module Box : sig ... endBordered container with background fill and optional title.
module Text : sig ... endStyled text display with wrapping, truncation, and selection.
module Slider : sig ... endInteractive horizontal or vertical slider.
module Text_input : sig ... endSingle-line text input with cursor, selection, and clipboard.
module Canvas : sig ... endLow-level drawing surface for custom cell-level rendering.
module Select : sig ... endVertical list selector with optional descriptions.
module Tab_select : sig ... endHorizontal tab navigation with optional underline and descriptions.
module Markdown : sig ... endCommonMark renderer with headings, code blocks, lists, and tables.
module Spinner : sig ... endAnimated loading indicator with preset frame sets.
module Progress_bar : sig ... endProgress bar with sub-cell precision via Unicode half-blocks.
module Textarea : sig ... endMulti-line text editor with wrapping, scrolling, and selection.
module Scroll_bar : sig ... endScrollbar with proportional thumb sizing and arrow buttons.
module Scroll_box : sig ... endScrollable container with optional scrollbars and sticky scroll.
module Table : sig ... endData table with columns, rows, keyboard navigation, and selection.
module Tree : sig ... endHierarchical tree with expandable nodes, guide lines, and selection.
module Code : sig ... endCode display with syntax highlighting, wrapping, and selection.
module Line_number : sig ... endLine-number gutter with per-line colours, signs, and custom numbering.
Theming
Syntax themes: maps capture-group names to terminal styles.