A Rust library for making beautiful REPLs and Shells with fish like as you type syntax highlighting
use std::process::exit;use synterm::{gen_lexer, gen_parse, syntax_highlight_gen,Color,CommandLineTool};structMyTool;implCommandLineToolforMyTool{fnevaluator_function(line:&String) -> String{match line.as_str(){"exit" => {exit(0);}
_ => format!("Line: {}", line),}}fnsyntax_highlight(string:&str){syntax_highlight_gen!(TheLexer,
parser,(Foo,Color::Red,"foo"),(Bar,Color::Green,"bar"),(Baz,Color::Blue,"baz"));parser(TheLexer::lexer(string));}}fnmain(){MyTool.start();}Add the following to your Cargo.toml's dependency section
synterm = "0.2.11"logos = "0.9.7"See TODO.md for ways to contribute
Open it in Gitpod everything is all ready for you!