use std::io::Read; use std::path::PathBuf; use arborium::{detect_language, Highlighter}; fn main() { let filename = std::env::args().nth(1).map(PathBuf::from); let mut file = String::new(); let _ = std::io::stdin().read_to_string(&mut file); let language = filename.and_then(|filename| detect_language(&filename.to_string_lossy())); let Some(language) = language else { print!("{file}"); return; }; let mut highlighter = Highlighter::with_config(arborium::Config { html_format: arborium::HtmlFormat::ClassNames, ..Default::default() }); let highlighted_file = highlighter.highlight(language, &file).unwrap_or(file); println!("{highlighted_file}"); }