Expand description
smart crate for terminal coloring.
uses macros instead of methods.
§usage
heres how it works:
cprintln!("the traffic light is {bold_red}red.{reset}");
cprintln!("the traffic light will be {green}green{reset} at {:?}.", Instant::now() + Duration::from_secs(40));
§why you should use comat instead of {yansi
, owo_colors
, colored
, ..}
- no method pollution, your intellisense remains fine
- compact: shorter than even raw ansi. see:
vs
cprint!("{thing:red}.");
vsprint!("\x1b[0;34;31m{thing}\x1b[0m.");
print!("{}.", thing.red());
- intuitive: you dont have to
instead, simply
println!("{} {} {}", thing1.red().on_blue(), thing2.red().on_blue(), thing3.italic().yellow());
cprintln!("{red}{on_blue}{thing1} {thing2} {thing3:italic,yellow}");
§syntax
{{
gives you a {
, to get a {{
use {{{{
.
{color}
adds that effect/color to the string. it does not reset afterwards.
if the color inside a {}
is not found, it doesnt touch the block, for convenience.
{thing:color}
will reset everything before the block, color it, and reset that color. similar to thing.color()
with other libs.
it can also contain more than one color: {thing:yelow,italic,on_red}
§colors
black
red
green
yellow
blue
magenta
cyan
white
default
bold_black
bold_red
bold_green
bold_yellow
bold_blue
bold_magenta
bold_cyan
bold_white
bold_default
on_black_bold
on_red_bold
on_green_bold
on_yellow_bold
on_blue_bold
on_magenta_bold
on_cyan_bold
on_white_bold
on_default_bold
on_black
on_red
on_green
on_yellow
on_blue
on_magenta
on_cyan
on_white
on_default
reset
dim
italic
underline
blinking
hide
strike
bold
Macros§
- cformat
- Format text, colorfully.
- cformat_
args - Produce
fmt::Arguments
. Sometimes functions take these. - comat
- Macro that simply modifies the format string to have colors.
Mostly for testing. Use
cformat_args!
instead where possible. - cpanic
- Colorfully panic.
- cprint
- Print text, colorfully, to stdout, without a newline.
- cprintln
- Print text, colorfully, to stdout, with a newline.
- cwrite
- Write to a buffer colorfully, with no newline.
- cwriteln
- Write to a buffer colorfully, with newline.