Crates.io | dunh |
lib.rs | dunh |
version | 1.0.0 |
source | src |
created_at | 2024-11-02 10:33:15.457128 |
updated_at | 2024-11-02 10:33:15.457128 |
description | Highlights code for printing |
homepage | |
repository | https://github.com/yazaldefilimone/dunh |
max_upload_size | |
id | 1432732 |
size | 68,856 |
Rust util that highlights an error.
code_highlighter
lets you highlight errors in your code and show extra lines around the error for better context.
Example
The code below:
let code = "functon is_zero (x) {
if (x == 0) [
return true;
] else {
return false;
}
}";
println!("Error:");
println!("{}", code_highlighter::highlight_error(38, 64, &code));
println!("");
println!("Warning:");
println!("{}", code_highlighter::highlight_warning(38, 64, &code));
println!("");
println!("Custom color:");
println!("{}", code_highlighter::highlight(38, 64, &code, "\x1b[4m\x1b[32m"));
println!("");
let code = "(Foo x) = 7[0 ]\n";
println!("Error:");
println!("{}", code_highlighter::highlight_error(16, 17, &code));
println!("");
Will output:
cargo add code_highlighter
main.rs
use code_highlighter::highlight_error_with_context;
fn main() {
// set the number of lines of context you want to show
let context = 2; // Adds two lines above and below the error
// assuming `range` has the error position and `source.raw` is your code
let code = highlight_error_with_context(range.start, range.end, &source.raw, context);
// print the highlighted code
println!("{}", code);
}