mirror of
https://github.com/ouch-org/ouch.git
synced 2025-06-07 12:05:46 +00:00
Move colors module to it's own file
This commit is contained in:
parent
63cfeb26ef
commit
a531d44e2b
36
src/utils/colors.rs
Normal file
36
src/utils/colors.rs
Normal file
@ -0,0 +1,36 @@
|
||||
//! Colored output in ouch with bright colors.
|
||||
|
||||
#![allow(dead_code)]
|
||||
|
||||
use std::env;
|
||||
|
||||
use once_cell::sync::Lazy;
|
||||
|
||||
static DISABLE_COLORED_TEXT: Lazy<bool> = Lazy::new(|| {
|
||||
env::var_os("NO_COLOR").is_some() || atty::isnt(atty::Stream::Stdout) || atty::isnt(atty::Stream::Stderr)
|
||||
});
|
||||
|
||||
macro_rules! color {
|
||||
($name:ident = $value:literal) => {
|
||||
#[cfg(target_family = "unix")]
|
||||
/// Inserts color onto text based on configuration
|
||||
pub static $name: Lazy<&str> = Lazy::new(|| if *DISABLE_COLORED_TEXT { "" } else { $value });
|
||||
#[cfg(not(target_family = "unix"))]
|
||||
pub static $name: &&str = &"";
|
||||
};
|
||||
}
|
||||
|
||||
color!(RESET = "\u{1b}[39m");
|
||||
color!(BLACK = "\u{1b}[38;5;8m");
|
||||
color!(BLUE = "\u{1b}[38;5;12m");
|
||||
color!(CYAN = "\u{1b}[38;5;14m");
|
||||
color!(GREEN = "\u{1b}[38;5;10m");
|
||||
color!(MAGENTA = "\u{1b}[38;5;13m");
|
||||
color!(RED = "\u{1b}[38;5;9m");
|
||||
color!(WHITE = "\u{1b}[38;5;15m");
|
||||
color!(YELLOW = "\u{1b}[38;5;11m");
|
||||
// Requires true color support
|
||||
color!(ORANGE = "\u{1b}[38;2;255;165;0m");
|
||||
color!(STYLE_BOLD = "\u{1b}[1m");
|
||||
color!(STYLE_RESET = "\u{1b}[0m");
|
||||
color!(ALL_RESET = "\u{1b}[0;39m");
|
@ -103,40 +103,3 @@ pub fn try_infer_extension(path: &Path) -> Option<Extension> {
|
||||
None
|
||||
}
|
||||
}
|
||||
|
||||
/// Module with a list of bright colors.
|
||||
#[allow(dead_code)]
|
||||
pub mod colors {
|
||||
use std::env;
|
||||
|
||||
use once_cell::sync::Lazy;
|
||||
|
||||
static DISABLE_COLORED_TEXT: Lazy<bool> = Lazy::new(|| {
|
||||
env::var_os("NO_COLOR").is_some() || atty::isnt(atty::Stream::Stdout) || atty::isnt(atty::Stream::Stderr)
|
||||
});
|
||||
|
||||
macro_rules! color {
|
||||
($name:ident = $value:literal) => {
|
||||
#[cfg(target_family = "unix")]
|
||||
/// Inserts color onto text based on configuration
|
||||
pub static $name: Lazy<&str> = Lazy::new(|| if *DISABLE_COLORED_TEXT { "" } else { $value });
|
||||
#[cfg(not(target_family = "unix"))]
|
||||
pub static $name: &&str = &"";
|
||||
};
|
||||
}
|
||||
|
||||
color!(RESET = "\u{1b}[39m");
|
||||
color!(BLACK = "\u{1b}[38;5;8m");
|
||||
color!(BLUE = "\u{1b}[38;5;12m");
|
||||
color!(CYAN = "\u{1b}[38;5;14m");
|
||||
color!(GREEN = "\u{1b}[38;5;10m");
|
||||
color!(MAGENTA = "\u{1b}[38;5;13m");
|
||||
color!(RED = "\u{1b}[38;5;9m");
|
||||
color!(WHITE = "\u{1b}[38;5;15m");
|
||||
color!(YELLOW = "\u{1b}[38;5;11m");
|
||||
// Requires true color support
|
||||
color!(ORANGE = "\u{1b}[38;2;255;165;0m");
|
||||
color!(STYLE_BOLD = "\u{1b}[1m");
|
||||
color!(STYLE_RESET = "\u{1b}[0m");
|
||||
color!(ALL_RESET = "\u{1b}[0;39m");
|
||||
}
|
||||
|
@ -1,11 +1,12 @@
|
||||
//! Random and miscellaneous utils used in ouch.
|
||||
|
||||
pub mod colors;
|
||||
mod formatting;
|
||||
mod fs;
|
||||
mod question;
|
||||
|
||||
pub use formatting::{concatenate_os_str_list, nice_directory_display, strip_cur_dir, to_utf, Bytes};
|
||||
pub use fs::{cd_into_same_dir_as, colors, create_dir_if_non_existent, dir_is_empty, try_infer_extension};
|
||||
pub use fs::{cd_into_same_dir_as, create_dir_if_non_existent, dir_is_empty, try_infer_extension};
|
||||
pub use question::{
|
||||
create_or_ask_overwrite, user_wants_to_continue_decompressing, user_wants_to_overwrite, QuestionPolicy,
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user