Colour
Macros for creating coloured console output.
General
To view the colour palette:
cargo test print_stdout_no_newline
The following macros are provided:
There are also prnt!, prnt_ln!, wrte! and wrte_ln! available which use the current default
foreground colour.
Example
use colour::*;
fn foo() {
let err: Result<(), u8> = Err(1);
prnt_ln!("Failed on {}", 9);
yellow!("Error details: ");
red_ln!("{:?}", err);
}
fn bar() {
use std::io::Write as _;
let mut v = vec![];
let err: Result<(), u8> = Err(1);
wrte_ln!(&mut v, "Failed on {}", 9);
write_yellow!(&mut v, "Error details: ");
write_red_ln!(&mut v, "{:?}", err);
}
fn main() {
black!("black ");
red!("red ");
green!("green ");
yellow!("yellow ");
blue!("blue ");
magenta!("magenta ");
cyan!("cyan ");
grey!("grey ");
white!("white ");
dark_red!("dark_red ");
dark_green!("dark_green ");
dark_yellow!("dark_yellow ");
dark_blue!("dark_blue ");
dark_magenta!("dark_magenta ");
dark_cyan!("dark_cyan ");
dark_grey!("dark_grey ");
prnt!("default colour\n\n");
}
Minimum Rust Version
The crate can be compiled with Rust versions 1.58.0 and newer.
License
colour is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-MIT and LICENSE-APACHE for details.