1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
//! CLI framework: theming, structured output, progress, prompts, and signals.
//!
//! A parser-agnostic toolkit for building consistent command-line UX: it owns
//! the terminal *presentation* concerns (color, glyphs, tables, status lines,
//! progress bars), *input* (interactive prompts with a non-interactive
//! fallback), and cooperative *cancellation*, so every rskit CLI renders and
//! behaves the same way.
//!
//! # Modules
//!
//! - [`theme`] — visual vocabulary: semantic [`Palette`] color and [`Glyphs`]
//! symbols, both honouring `NO_COLOR`, TTY, and UTF-8 capability.
//! - [`render`] — structured, non-interactive display: [`OutputTable`],
//! [`OutputKV`], the [`ErrorRenderer`]/[`ExitCode`] convention, and one-off
//! [`StatusReporter`] feedback lines.
//! - [`progress`] — progress bar and spinner abstractions over `indicatif`.
//! - [`live`] — multi-region live terminal rendering ([`LiveConsole`]) for
//! streaming several concurrent outputs as bounded tiles.
//! - [`prompt`] — interactive prompts (line, rich raw-mode, and scripted media)
//! with a non-interactive fallback.
//! - [`signal`] — Ctrl+C / graceful shutdown via [`CancellationToken`].
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;
pub use RichTerminal;