[−][src]Trait owo_colors::OwoColorize
Extension trait for colorizing a type which implements any std formatter
(Display
, Debug
, UpperHex
,
etc.)
Example
use owo_colors::OwoColorize; fn main() { println!("My number is {:#x}!", 10.green()); println!("My number is not {}!", 4.on_red()); }
How to decide which method to use
Do you have a specific color you want to use?
Use the specific color's method, such as blue
or
on_green
.
Do you want your colors configurable via generics?
Use fg
and bg
to make it compile-time configurable.
Do you need to pick a color at runtime?
Use the color
, on_color
,
truecolor
or on_truecolor
.
Do you need some other text modifier?
Do you want it to only display colors if it's a terminal?
- Enable the
tty
feature - Colorize inside
if_stdout_tty
orif_stdout_tty
Provided methods
fn fg<'a, C: Color>(&'a self) -> FgColorDisplay<'a, C, Self>
[src]
Set the foreground color generically
use owo_colors::{OwoColorize, colors::*}; println!("{}", "red foreground".fg::<Red>());
fn bg<'a, C: Color>(&'a self) -> BgColorDisplay<'a, C, Self>
[src]
Set the background color generically.
use owo_colors::{OwoColorize, colors::*}; println!("{}", "black background".bg::<Black>());
fn black<'a>(&'a self) -> FgColorDisplay<'a, Black, Self>
[src]
Change the foreground color to black
fn on_black<'a>(&'a self) -> BgColorDisplay<'a, Black, Self>
[src]
Change the foreground color to black
fn red<'a>(&'a self) -> FgColorDisplay<'a, Red, Self>
[src]
Change the foreground color to red
fn on_red<'a>(&'a self) -> BgColorDisplay<'a, Red, Self>
[src]
Change the foreground color to red
fn green<'a>(&'a self) -> FgColorDisplay<'a, Green, Self>
[src]
Change the foreground color to green
fn on_green<'a>(&'a self) -> BgColorDisplay<'a, Green, Self>
[src]
Change the foreground color to green
fn yellow<'a>(&'a self) -> FgColorDisplay<'a, Yellow, Self>
[src]
Change the foreground color to yellow
fn on_yellow<'a>(&'a self) -> BgColorDisplay<'a, Yellow, Self>
[src]
Change the foreground color to yellow
fn blue<'a>(&'a self) -> FgColorDisplay<'a, Blue, Self>
[src]
Change the foreground color to blue
fn on_blue<'a>(&'a self) -> BgColorDisplay<'a, Blue, Self>
[src]
Change the foreground color to blue
fn magenta<'a>(&'a self) -> FgColorDisplay<'a, Magenta, Self>
[src]
Change the foreground color to magenta
fn on_magenta<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>
[src]
Change the foreground color to magenta
fn purple<'a>(&'a self) -> FgColorDisplay<'a, Magenta, Self>
[src]
Change the foreground color to purple
fn on_purple<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>
[src]
Change the foreground color to purple
fn cyan<'a>(&'a self) -> FgColorDisplay<'a, Cyan, Self>
[src]
Change the foreground color to cyan
fn on_cyan<'a>(&'a self) -> BgColorDisplay<'a, Cyan, Self>
[src]
Change the foreground color to cyan
fn white<'a>(&'a self) -> FgColorDisplay<'a, White, Self>
[src]
Change the foreground color to white
fn on_white<'a>(&'a self) -> BgColorDisplay<'a, White, Self>
[src]
Change the foreground color to white
fn bright_black<'a>(&'a self) -> FgColorDisplay<'a, BrightBlack, Self>
[src]
Change the foreground color to bright black
fn on_bright_black<'a>(&'a self) -> BgColorDisplay<'a, BrightBlack, Self>
[src]
Change the foreground color to bright black
fn bright_red<'a>(&'a self) -> FgColorDisplay<'a, BrightRed, Self>
[src]
Change the foreground color to bright red
fn on_bright_red<'a>(&'a self) -> BgColorDisplay<'a, BrightRed, Self>
[src]
Change the foreground color to bright red
fn bright_green<'a>(&'a self) -> FgColorDisplay<'a, BrightGreen, Self>
[src]
Change the foreground color to bright green
fn on_bright_green<'a>(&'a self) -> BgColorDisplay<'a, BrightGreen, Self>
[src]
Change the foreground color to bright green
fn bright_yellow<'a>(&'a self) -> FgColorDisplay<'a, BrightYellow, Self>
[src]
Change the foreground color to bright yellow
fn on_bright_yellow<'a>(&'a self) -> BgColorDisplay<'a, BrightYellow, Self>
[src]
Change the foreground color to bright yellow
fn bright_blue<'a>(&'a self) -> FgColorDisplay<'a, BrightBlue, Self>
[src]
Change the foreground color to bright blue
fn on_bright_blue<'a>(&'a self) -> BgColorDisplay<'a, BrightBlue, Self>
[src]
Change the foreground color to bright blue
fn bright_magenta<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>
[src]
Change the foreground color to bright magenta
fn on_bright_magenta<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>
[src]
Change the foreground color to bright magenta
fn bright_purple<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>
[src]
Change the foreground color to bright purple
fn on_bright_purple<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>
[src]
Change the foreground color to bright purple
fn bright_cyan<'a>(&'a self) -> FgColorDisplay<'a, BrightCyan, Self>
[src]
Change the foreground color to bright cyan
fn on_bright_cyan<'a>(&'a self) -> BgColorDisplay<'a, BrightCyan, Self>
[src]
Change the foreground color to bright cyan
fn bright_white<'a>(&'a self) -> FgColorDisplay<'a, BrightWhite, Self>
[src]
Change the foreground color to bright white
fn on_bright_white<'a>(&'a self) -> BgColorDisplay<'a, BrightWhite, Self>
[src]
Change the foreground color to bright white
fn bold<'a>(&'a self) -> BoldDisplay<'a, Self>
[src]
Make the text bold
fn dimmed<'a>(&'a self) -> DimDisplay<'a, Self>
[src]
Make the text dim
fn italic<'a>(&'a self) -> ItalicDisplay<'a, Self>
[src]
Make the text italicized
fn underline<'a>(&'a self) -> UnderlineDisplay<'a, Self>
[src]
Make the text italicized
fn blink<'a>(&'a self) -> BlinkDisplay<'a, Self>
[src]
Make the text blink
fn blink_fast<'a>(&'a self) -> BlinkFastDisplay<'a, Self>
[src]
Make the text blink (but fast!)
fn reversed<'a>(&'a self) -> ReversedDisplay<'a, Self>
[src]
Swap the foreground and background colors
fn hidden<'a>(&'a self) -> HiddenDisplay<'a, Self>
[src]
Hide the text
fn strikethrough<'a>(&'a self) -> StrikeThroughDisplay<'a, Self>
[src]
Cross out the text
fn color<'a, Color: DynColor>(
&'a self,
color: Color
) -> FgDynColorDisplay<'a, Color, Self>
[src]
&'a self,
color: Color
) -> FgDynColorDisplay<'a, Color, Self>
Set the foreground color at runtime. Only use if you do not know which color will be used at
compile-time. If the color is constant, use either OwoColorize::fg
or
a color-specific method, such as OwoColorize::green
,
use owo_colors::{OwoColorize, AnsiColors}; fn main() { println!("{}", "green".color(AnsiColors::Green)); }
fn on_color<'a, Color: DynColor>(
&'a self,
color: Color
) -> BgDynColorDisplay<'a, Color, Self>
[src]
&'a self,
color: Color
) -> BgDynColorDisplay<'a, Color, Self>
Set the background color at runtime. Only use if you do not know what color to use at
compile-time. If the color is constant, use either OwoColorize::bg
or
a color-specific method, such as OwoColorize::on_yellow
,
use owo_colors::{OwoColorize, AnsiColors}; fn main() { println!("{}", "yellow background".on_color(AnsiColors::BrightYellow)); }
fn fg_rgb<'a, const R: u8, const G: u8, const B: u8>(
&'a self
) -> FgColorDisplay<'a, CustomColor<R, G, B>, Self>
[src]
&'a self
) -> FgColorDisplay<'a, CustomColor<R, G, B>, Self>
Set the foreground color to a specific RGB value.
Requires: nightly and the custom
feature.
If nightly is not preferable for you, use OwoColorize::truecolor
fn bg_rgb<'a, const R: u8, const G: u8, const B: u8>(
&'a self
) -> BgColorDisplay<'a, CustomColor<R, G, B>, Self>
[src]
&'a self
) -> BgColorDisplay<'a, CustomColor<R, G, B>, Self>
Set the background color to a specific RGB value.
Requires: nightly and the custom
feature.
If nightly is not preferable for you, use OwoColorize::on_truecolor
fn truecolor<'a>(
&'a self,
r: u8,
g: u8,
b: u8
) -> FgDynColorDisplay<'a, Rgb, Self>
[src]
&'a self,
r: u8,
g: u8,
b: u8
) -> FgDynColorDisplay<'a, Rgb, Self>
Sets the foreground color to an RGB value.
fn on_truecolor<'a>(
&'a self,
r: u8,
g: u8,
b: u8
) -> BgDynColorDisplay<'a, Rgb, Self>
[src]
&'a self,
r: u8,
g: u8,
b: u8
) -> BgDynColorDisplay<'a, Rgb, Self>
Sets the background color to an RGB value.
fn style(&self, style: Style) -> Styled<&Self>
[src]
Apply a runtime-determined style
fn if_stdout_tty<'a, Out, ApplyFn>(
&'a self,
apply: ApplyFn
) -> TtyDisplay<'a, StdOut, Self, Out, ApplyFn> where
ApplyFn: Fn(&'a Self) -> Out,
[src]
&'a self,
apply: ApplyFn
) -> TtyDisplay<'a, StdOut, Self, Out, ApplyFn> where
ApplyFn: Fn(&'a Self) -> Out,
Apply a given transformation function to all formatters if stdout is a tty console allowing you to conditionally apply given styles/colors.
Requires the tty
feature.
use owo_colors::{OwoColorize, Style}; fn main() { println!( "{}", "bright cyan if this is terminal output" .if_stdout_tty(|text| text.bright_cyan()) ); // applying multiple at both println!( "{}", "bright cyan AND underlined(?!) if this is terminal output" .if_stdout_tty(|text| text.style( Style::new() .bright_cyan() .underline() )) ); }
fn if_stderr_tty<'a, Out, ApplyFn>(
&'a self,
apply: ApplyFn
) -> TtyDisplay<'a, StdErr, Self, Out, ApplyFn> where
ApplyFn: Fn(&'a Self) -> Out,
[src]
&'a self,
apply: ApplyFn
) -> TtyDisplay<'a, StdErr, Self, Out, ApplyFn> where
ApplyFn: Fn(&'a Self) -> Out,
Apply a given transformation function to all formatters if stderr is a tty console allowing you to conditionally apply given styles/colors.
Requires the tty
feature.
use owo_colors::OwoColorize; fn main() { eprintln!( "{}", "woah! error! if this is terminal output, it's red" .if_stderr_tty(|text| text.bright_red()) ); }