pub enum Colour {
Black,
Red,
Green,
Yellow,
Blue,
Purple,
Cyan,
White,
Fixed(u8),
RGB(u8, u8, u8),
}
Expand description
A colour is one specific type of ANSI escape code, and can refer to either the foreground or background colour.
These use the standard numeric sequences. See http://invisible-island.net/xterm/ctlseqs/ctlseqs.html
Variants
Black
Colour #0 (foreground code 30
, background code 40
).
This is not necessarily the background colour, and using it as one may render the text hard to read on terminals with dark backgrounds.
Red
Colour #1 (foreground code 31
, background code 41
).
Green
Colour #2 (foreground code 32
, background code 42
).
Yellow
Colour #3 (foreground code 33
, background code 43
).
Blue
Colour #4 (foreground code 34
, background code 44
).
Purple
Colour #5 (foreground code 35
, background code 45
).
Cyan
Colour #6 (foreground code 36
, background code 46
).
White
Colour #7 (foreground code 37
, background code 47
).
As above, this is not necessarily the foreground colour, and may be hard to read on terminals with light backgrounds.
Fixed(u8)
A colour number from 0 to 255, for use in 256-colour terminal environments.
- Colours 0 to 7 are the
Black
toWhite
variants respectively. These colours can usually be changed in the terminal emulator. - Colours 8 to 15 are brighter versions of the eight colours above. These can also usually be changed in the terminal emulator, or it could be configured to use the original colours and show the text in bold instead. It varies depending on the program.
- Colours 16 to 231 contain several palettes of bright colours, arranged in six squares measuring six by six each.
- Colours 232 to 255 are shades of grey from black to white.
It might make more sense to look at a colour chart.
RGB(u8, u8, u8)
A 24-bit RGB color, as specified by ISO-8613-3.
Implementations
sourceimpl Colour
impl Colour
Returns a Style
with the hidden property set.
sourcepub fn strikethrough(self) -> Style
pub fn strikethrough(self) -> Style
Returns a Style
with the strikethrough property set.
sourceimpl Colour
impl Colour
sourcepub fn paint<'a, I, S: 'a + ToOwned + ?Sized>(
self,
input: I
) -> ANSIGenericString<'a, S> where
I: Into<Cow<'a, S>>,
<S as ToOwned>::Owned: Debug,
pub fn paint<'a, I, S: 'a + ToOwned + ?Sized>(
self,
input: I
) -> ANSIGenericString<'a, S> where
I: Into<Cow<'a, S>>,
<S as ToOwned>::Owned: Debug,
Paints the given text with this colour, returning an ANSI string.
This is a short-cut so you don’t have to use Blue.normal()
just
to get blue text.
use ansi_term::Colour::Blue;
println!("{}", Blue.paint("da ba dee"));
Trait Implementations
sourceimpl From<Colour> for Style
impl From<Colour> for Style
sourcefn from(colour: Colour) -> Style
fn from(colour: Colour) -> Style
You can turn a Colour
into a Style
with the foreground colour set
with the From
trait.
use ansi_term::{Style, Colour};
let green_foreground = Style::default().fg(Colour::Green);
assert_eq!(green_foreground, Colour::Green.normal());
assert_eq!(green_foreground, Colour::Green.into());
assert_eq!(green_foreground, Style::from(Colour::Green));
impl Copy for Colour
impl StructuralPartialEq for Colour
Auto Trait Implementations
impl RefUnwindSafe for Colour
impl Send for Colour
impl Sync for Colour
impl Unpin for Colour
impl UnwindSafe for Colour
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more