#messages #msg #console #printing #stderr #stdout #status

fyi_msg

Simple ANSI-formatted, prefixed messages for console printing

51 releases (6 stable)

new 1.4.0 Dec 10, 2024
1.3.0 Nov 28, 2024
1.1.1 Oct 17, 2024
0.14.1 Sep 27, 2024
0.8.1 Jun 17, 2021

#115 in Command-line interface

Download history 160/week @ 2024-09-02 2/week @ 2024-09-09 21/week @ 2024-09-16 157/week @ 2024-09-23 36/week @ 2024-09-30 180/week @ 2024-10-07 196/week @ 2024-10-14 14/week @ 2024-10-21 14/week @ 2024-10-28 112/week @ 2024-11-04 134/week @ 2024-11-11 19/week @ 2024-11-18 171/week @ 2024-11-25 13/week @ 2024-12-02

352 downloads per month

WTFPL license

135KB
2.5K SLoC

FYI Msg

docs.rs
crates.io ci deps.rs
license

This crate contains the objects providing the heart of the FYI command line application, namely Msg, a simple struct for status-like messages that can be easily printed to STDOUT or STDERR.

Examples

use fyi_msg::{Msg, MsgKind};

// One way.
Msg::new(MsgKind::Success, "You did it!")
    .with_newline(true)
    .print();

// Another equivalent way.
Msg::success("You did it!").print();

For more usage examples, check out the examples/msg demo, which covers just about every common use case.

Macros

Macro Equivalent
confirm!() Msg::new(MsgKind::Confirm, "Some question…").prompt()

Optional Features

Feature Description
fitted Enables Msg::fitted for obtaining a slice trimmed to a specific display width.
progress Enables Progless, a thread-safe CLI progress bar displayer.
timestamps Enables timestamp-related methods and flags like Msg::with_timestamp.

Dependencies

~0.2–8.5MB
~86K SLoC