# FYI Msg
[](https://docs.rs/fyi_msg/)
<br>
[](https://crates.io/crates/fyi_msg)
[](https://github.com/Blobfolio/fyi/actions)
[](https://deps.rs/repo/github/blobfolio/fyi)<br>
[](https://en.wikipedia.org/wiki/WTFPL)
This crate contains the objects providing the heart of the [FYI command line application](https://github.com/blobfolio/fyi), namely `Msg`, a simple struct for status-like messages that can be easily printed to `STDOUT` or `STDERR`.
## Examples
```rust
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
| `confirm!(…)` | `Msg::new(MsgKind::Confirm, "Some question…").prompt()` |
## Optional Features
| `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`. |