snippetrustMajor
How do I print colored text to the terminal in Rust?
Viewed 0 times
howtextthecoloredprintrustterminal
Problem
How do I output colored text to the terminal using Rust? I've tried using the special escape characters that I found in this python answer, but they just print literally. Here is my code:
fn main() {
println!("\033[93mError\033[0m");
}
Solution
Rust doesn't have octal escape sequences. You have to use hexadecimal:
See also https://github.com/rust-lang/rust/issues/30491.
What happens, and the reason the compiler does not complain, is that
println!("\x1b[93mError\x1b[0m");
See also https://github.com/rust-lang/rust/issues/30491.
What happens, and the reason the compiler does not complain, is that
\0 is a valid escape sequence in Rust - and represents the NULL character (ASCII code 0). It is just that Rust, unlike C (and Python), does not allow you to specify octal number after that. So it considers the 33 to be normal characters to print.Context
Stack Overflow Q#69981449, score: 82
Revisions (0)
No revisions yet.