hl_core

Crates.iohl_core
lib.rshl_core
version0.1.3
sourcesrc
created_at2022-08-15 14:27:21.153848
updated_at2022-08-17 10:29:47.747375
descriptionSyntax highlighting in Rust
homepagehttps://github.com/ahmadrosid/hl/tree/master/crates/core
repositoryhttps://github.com/ahmadrosid/hl/tree/master/crates/core
max_upload_size
id645961
size451,219
ahmadrosid (ahmadrosid)

documentation

README

hl_core

Github like Syntax highlighter in rust. See the result in browser here.

Example

use std::path::Path;

use hl::render_html;
use std::fs::read_to_string;

fn main() {
    let file_path = std::env::args().nth(1).unwrap_or(String::new());
    let language_flag = std::env::args().nth(2).unwrap_or(String::new());
    let lang = std::env::args().nth(3).unwrap_or(String::from("raw"));

    let path = Path::new(&file_path);
    if !path.exists() {
        println!("File path not found! {}", &file_path);
        std::process::exit(1);
    }

    if language_flag.is_empty() {
        println!("Language flag is required! e.g -l javascript");
        std::process::exit(1);
    }

    let input = read_to_string(path).unwrap().chars().collect::<Vec<_>>();
    let result = render_html(input, &lang);
    print!("{}", result)
}

Run

cargo run html examples/html.rs
Commit count: 0

cargo fmt