[][src]Struct crossterm::TerminalColor

pub struct TerminalColor<'stdout> { /* fields omitted */ }

Allows you to style the terminal.

Features:

  • Foreground color (16 base colors)
  • Background color (16 base colors)
  • 256 color support (Windows 10 and UNIX only)
  • RGB support (Windows 10 and UNIX only)
  • Text Attributes like: bold, italic, underscore and crossed word ect (Windows 10 and UNIX only)

Check /examples/ in the library for more specific examples.

Remarks

When you want to 'style' on 'alternate screen' use the 'crossterm_screen' crate.

Methods

impl<'stdout> TerminalColor<'stdout>[src]

pub fn new() -> TerminalColor<'stdout>[src]

Create new instance whereon color related actions can be performed.

pub fn from_output(
    stdout: &'stdout Arc<TerminalOutput>
) -> TerminalColor<'stdout>
[src]

Create a new instance of TerminalColor whereon coloring could be preformed on the given output.

Remarks

Use this function when you want your terminal to operate with a specific output. This could be useful when you have a screen which is in 'alternate mode', and you want your actions from the TerminalColor, created by this function, to operate on the 'alternate screen'.

You should checkout the 'crossterm_screen' crate for more information about this.

Example

let screen = Screen::default();
if let Ok(alternate) = screen.enable_alternate_modes(false) {
   let terminal = TerminalColor::from_output(&alternate.screen.stdout);
}

pub fn set_fg(&self, color: Color) -> Result<(), ErrorKind>[src]

Set the foreground color to the given color.

pub fn set_bg(&self, color: Color) -> Result<(), ErrorKind>[src]

Set the background color to the given color.

pub fn reset(&self) -> Result<(), ErrorKind>[src]

Reset the terminal colors and attributes to default.

pub fn get_available_color_count(&self) -> Result<u16, Error>[src]

Get available color count. (This does not always provide a good result.)

Auto Trait Implementations

impl<'stdout> Send for TerminalColor<'stdout>

impl<'stdout> Sync for TerminalColor<'stdout>

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]