rhd/src/colormap.rs

93 lines
2.3 KiB
Rust

extern crate termion;
use termion::color;
pub fn map_u8_to_color(data: u8) -> String {
match data {
32..=47 => format!(
"{}{:02x}{}",
color::Fg(color::Yellow),
data,
color::Fg(color::Reset)
),
48..=64 => format!(
"{}{:02x}{}",
color::Fg(color::Green),
data,
color::Fg(color::Reset)
),
65..=90 => format!(
"{}{:02x}{}",
color::Fg(color::Blue),
data,
color::Fg(color::Reset)
),
91..=96 => format!(
"{}{:02x}{}",
color::Fg(color::Yellow),
data,
color::Fg(color::Reset)
),
97..=122 => format!(
"{}{:02x}{}",
color::Fg(color::Blue),
data,
color::Fg(color::Reset)
),
123..=126 => format!(
"{}{:02x}{}",
color::Fg(color::Yellow),
data,
color::Fg(color::Reset)
),
_ => format!(
"{}{:02x}{}",
color::Fg(color::LightRed),
data,
color::Fg(color::Reset)
),
}
}
pub fn map_char_to_color(data: u8) -> String {
match data {
32..=47 => format!(
"{}{}{}",
color::Fg(color::Yellow),
(data as char),
color::Fg(color::Reset)
),
48..=64 => format!(
"{}{}{}",
color::Fg(color::Green),
(data as char),
color::Fg(color::Reset)
),
65..=90 => format!(
"{}{}{}",
color::Fg(color::Blue),
(data as char),
color::Fg(color::Reset)
),
91..=96 => format!(
"{}{}{}",
color::Fg(color::Yellow),
(data as char),
color::Fg(color::Reset)
),
97..=122 => format!(
"{}{}{}",
color::Fg(color::Blue),
(data as char),
color::Fg(color::Reset)
),
123..=126 => format!(
"{}{}{}",
color::Fg(color::Yellow),
(data as char),
color::Fg(color::Reset)
),
_ => format!("{}.{}", color::Fg(color::LightRed), color::Fg(color::Reset)),
}
}