6 stable releases
2.0.0 | Dec 26, 2023 |
---|---|
1.2.1 | Dec 22, 2023 |
0.3.6 |
|
0.1.0 |
|
#1553 in Command line utilities
24 downloads per month
51KB
611 lines
murmur
A flexible library to build messages with NerdFonts
or Unicode
icons.
Table of Contents
Intro
There is only a Whisper
struct and an IconKind
enum.
use murmur::{Whisper, IconKind};
IconKind
Variants
The 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 newWhisper
instance.icon()
: Adds an icon to theWhisper
instance.message()
: Adds a message to theWhisper
instance.messages()
: Adds multiple messages to theWhisper
instance.whisper()
: Builds theWhisper
instance and prints the messages
Here are some examples of how to use the Whisper
struct.
new
use murmur::{Whisper, IconKind};
Whisper::new()
.icon(IconKind::NfFaCheck)
.message("message")
.whisper()
.ok();
icon
use murmur::{Whisper, IconKind};
Whisper::new().icon(IconKind::UnicodeCheckMark).whisper().ok();
message
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
messages
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();
Whisper Error
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(())
}
Dependencies
~0.4–1MB
~20K SLoC