comma

Crates.iocomma
lib.rscomma
version1.0.0
sourcesrc
created_at2019-08-05 18:27:45.192095
updated_at2021-08-23 19:46:32.670475
descriptionShell-style command parser with support for escaping and quotations.
homepage
repositoryhttps://github.com/emctague/comma
max_upload_size
id154351
size5,402
Matthias Beyer (matthiasbeyer)

documentation

README

comma

Crates.io docs.rs Build Status

comma splits shell-style commands, e.g. sendmsg joe "I say \"hi\" to you!", into a list of individual tokens. It correctly handles unicode characters, escape sequences, and single- or double-quoted strings.

Cargo

[dependencies]
comma = "1.0.0"

Usage

use comma::parse_command;

fn main () {
    let parsed = parse_command("sendmsg joe \"I say \\\"hi\\\" to you!\" 'but only\\ntoday'").unwrap();
    println!("Result: {:#?}", parsed); // Result: [ "sendmsg", "joe", "I say \"hi\" to you!", "but only\ntoday" ]
}
Commit count: 19

cargo fmt