| Crates.io | murmur |
| lib.rs | murmur |
| version | 2.0.0 |
| created_at | 2023-11-26 03:21:39.072118+00 |
| updated_at | 2023-12-26 07:29:31.527986+00 |
| description | This library provides a simple and flexible way to format colored messages with optional `NerdFonts` or `Unicode` icons. |
| homepage | |
| repository | https://github.com/andretcarpizo/murmur |
| max_upload_size | |
| id | 1048777 |
| size | 59,919 |
A flexible library to build messages with NerdFonts or Unicode icons.
Table of Contents
There is only a Whisper struct and an IconKind enum.
use murmur::{Whisper, IconKind};
IconKind VariantsThe IconKind enum variants map to a specific Unicode or NerdFont icon, each icon has a default color.
Casing conforms to Rust API Guidelines.
NfFaTimes
NfFaCheck
NfFaInfoCircle
NfFaRefresh
NfFaWarning
NfFaBug
UnicodeCrossMark
UnicodeCheckMark
UnicodeInformationSource
UnicodeGear
UnicodeWarningSign
UnicodeBug
For a full list of the currently supported icons, see the IconKind enum.
use murmur::{Whisper, IconKind};
use owo_colors::OwoColorize;
Whisper::new()
.icon(IconKind::NfFaCheck)
.message("message")
.message("message".red())
.whisper()
.unwrap();
Whisper methods:The Whisper struct provides the following methods:
new(): Creates a new Whisper instance.icon(): Adds an icon to the Whisper instance.message(): Adds a message to the Whisper instance.messages(): Adds multiple messages to the Whisper instance.whisper(): Builds the Whisper instance and prints the messagesHere are some examples of how to use the Whisper struct.
use murmur::{Whisper, IconKind};
Whisper::new()
.icon(IconKind::NfFaCheck)
.message("message")
.whisper()
.ok();
use murmur::{Whisper, IconKind};
Whisper::new().icon(IconKind::UnicodeCheckMark).whisper().ok();
use murmur::Whisper;
use std::io::{Error, ErrorKind};
fn main() -> Result<(), Error> {
Whisper::new()
.message("1 message")
.message("2 message")
.message("3 message")
.whisper()
.map_err(|err| Error::new(ErrorKind::Other, err))?;
Ok(())
}
Output:
1 message without icon
2 message without icon indents by 2 spaces all messages after the first
3 message
use murmur::Whisper;
Whisper::new()
.messages(["1 message without icon", "2 message", "3 message"])
.whisper()
.ok();
Whisper::new()
.messages(vec!["1 message without icon", "2 message", "3 message"])
.whisper()
.ok();
The whisper method returns -> Result<(), WhisperError>
use murmur::{Whisper, IconKind, WhisperError};
use std::io::{Error, ErrorKind};
fn whisper_new() -> Result<(), WhisperError> {
let whisper = Whisper::new()
.icon(IconKind::NfFaBug)
.message("The `whisper` method returns `-> Result<(), WhisperError>`")
.whisper()?;
Ok(())
}