diff options
author | Philipp Gesang <phg@phi-gamma.net> | 2021-11-24 21:08:17 +0100 |
---|---|---|
committer | Philipp Gesang <phg@phi-gamma.net> | 2021-11-24 21:11:06 +0100 |
commit | c5305231d900cca8189a9995284258a841042f50 (patch) | |
tree | 87e1631148ab2ce38067e81481abfbb8a1d5375f /src/vtcol.rs | |
parent | fab3a5aea7107688b957ffc2502ed1539c7fad70 (diff) | |
download | vtcol-c5305231d900cca8189a9995284258a841042f50.tar.gz |
add base64 input for ‘set’
Diffstat (limited to 'src/vtcol.rs')
-rw-r--r-- | src/vtcol.rs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/vtcol.rs b/src/vtcol.rs index 0a198e6..8161241 100644 --- a/src/vtcol.rs +++ b/src/vtcol.rs @@ -76,6 +76,15 @@ impl<'a> Job .value_name("PATH") .help("apply scheme from file") .takes_value(true), + ) + .arg( + Arg::with_name("base64") + .short("b") + .long("base64") + .help("base64 encoded binary input") + .value_name("DATA") + .required(false) + .takes_value(true), ), ) .subcommand( @@ -174,6 +183,11 @@ impl<'a> Job }, ("list", _) => Ok(Self::List), ("set", Some(subm)) => { + if let Some(b64) = subm.value_of("base64") { + let scheme = + Palette::from_base64(&b64).map(Scheme::from)?; + return Ok(Self::Set(scheme)); + } let scheme = match subm.value_of("scheme") { Some("-") => Self::read_scheme_from_stdin(), Some(name) => { |